public ActionResult Edit(int id) { Context.DaftarHargaKontrak dbitem = RepoDHK.FindByPK(id); DaftarHargaKontrak model = new DaftarHargaKontrak(dbitem); ViewBag.name = model.NamaCustomer; return(View("Form", model)); }
public ActionResult Edit(DaftarHargaKontrak model) { //validasi kondisi int idx = 0; foreach (DaftarHargaKondisi item in model.listKondisi.Where(d => d.IsDelete == false)) { if (item.kondisi != "Biaya Multidrop" && item.IsDefault == true && item.IsInclude == true && item.IsBill == false && item.value == null) { ModelState.AddModelError("listKondisi[" + idx + "].value", "Nilai harus diisi."); } if (item.kondisi == "Biaya Multidrop" && item.IsKota == true && item.ValKota == null) { ModelState.AddModelError("listKondisi[" + idx + "].ValKota", "Nilai harus diisi."); } if (item.kondisi == "Biaya Multidrop" && item.IsTitik == true && item.ValTitik == null) { ModelState.AddModelError("listKondisi[" + idx + "].ValTitik", "Nilai harus diisi."); } if (item.IsDefault == false) { if (item.kondisi == "" || item.kondisi == null) { ModelState.AddModelError("listKondisi[" + idx + "].kondisi", "Nama kondisi harus diisi."); } if (item.IsInclude == true && item.IsBill == false && item.value == null) { ModelState.AddModelError("listKondisi[" + idx + "].value", "Nilai harus diisi."); } } idx++; } if (RepoDHK.IsPeriodValid(model.PeriodStart.Value, model.PeriodEnd.Value, model.IdCust.Value, model.Id)) { ModelState.AddModelError("PeriodStart", "Periode awal tidak boleh overlaping."); ModelState.AddModelError("PeriodEnd", "Periode akhir tidak boleh overlaping."); } if (ModelState.IsValid) { Context.DaftarHargaKontrak dbitem = RepoDHK.FindByPK(model.Id); model.setDb(dbitem); RepoDHK.save(dbitem); return(RedirectToAction("Index")); } ViewBag.name = model.NamaCustomer; DaftarHargaKontrakItem[] result = JsonConvert.DeserializeObject <DaftarHargaKontrakItem[]>(model.StrItem); model.listItem = result.ToList(); DaftarHargaKontrakAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKontrakAttachment[]>(model.StrAttachment); model.listAtt = resultAtt.ToList(); return(View("Form", model)); }
public JsonResult Delete(int id) { ResponeModel response = new ResponeModel(true); Context.DaftarHargaKontrak dbItem = RepoDHK.FindByPK(id); RepoDHK.delete(dbItem); return(Json(response)); }
public DaftarHargaKontrak(Context.DaftarHargaKontrak dbitem) { Context.CustomerPic custPIC = dbitem.Customer.CustomerPic.FirstOrDefault(); Context.CustomerAddress custAddr = dbitem.Customer.CustomerAddress.Where( a => a.LookUpCodesOffice.Nama.ToLower() == "head office" || a.LookUpCodesOffice.Nama.ToLower() == "kantor pusat").FirstOrDefault(); listKondisi = new List <DaftarHargaKondisi>(); DaftarHargaKondisi.GenerateKondisi(listKondisi); Id = dbitem.Id; IdCust = dbitem.IdCust; KodeCustomer = dbitem.Customer.CustomerCode; KodeNama = dbitem.Customer.CustomerCodeOld; NamaCustomer = dbitem.Customer.CustomerNama; PeriodStart = dbitem.PeriodStart; PeriodEnd = dbitem.PeriodEnd; IdTypeKontrak = dbitem.IdTypeKontrak; if (custAddr != null) { AlamatCustomer = custAddr.Alamat; TelpCustomer = custAddr.Telp; FaxCustomer = custAddr.Fax; } if (custPIC != null) { ContactCustomer = custPIC.Name; HpCustomer = custPIC.Mobile; } //item listItem = new List <DaftarHargaKontrakItem>(); foreach (Context.DaftarHargaKontrakItem item in dbitem.DaftarHargaKontrakItem.ToList()) { listItem.Add(new DaftarHargaKontrakItem(item)); } //kondisi listKondisi = new List <DaftarHargaKondisi>(); foreach (Context.DaftarHargaKontrakKondisi item in dbitem.DaftarHargaKontrakKondisi.ToList()) { listKondisi.Add(new DaftarHargaKondisi(item)); } //attachment listAtt = new List <DaftarHargaKontrakAttachment>(); foreach (Context.DaftarHargaKontrakAttachment item in dbitem.DaftarHargaKontrakAttachment.ToList()) { listAtt.Add(new DaftarHargaKontrakAttachment(item)); } }
public String GetItem(int id, string date) { DateTime dtrDate = DateTime.Parse(date.Split(new string[] { " - " }, StringSplitOptions.None)[0]); DateTime dtrDate2 = DateTime.Parse(date.Split(new string[] { " - " }, StringSplitOptions.None)[1]); List <DaftarHargaKontrakItem> listItem = new List <DaftarHargaKontrakItem>(); Context.DaftarHargaKontrak DHK = RepoDHK.FindAll().Where(d => d.Id == id && d.PeriodStart == dtrDate && d.PeriodEnd == dtrDate2).FirstOrDefault(); if (DHK != null) { foreach (Context.DaftarHargaKontrakItem item in DHK.DaftarHargaKontrakItem) { listItem.Add(new DaftarHargaKontrakItem(item)); } } return(new JavaScriptSerializer().Serialize( listItem.Select(i => new { Id = i.Id, NamaRuteDaftarHarga = i.NamaRuteDaftarHarga, ListIdRute = i.ListIdRute, ListNamaRute = i.ListNamaRute, IdJenisTruck = i.IdJenisTruck, NamaJenisTruck = i.NamaJenisTruck, BeratMinimum = i.BeratMinimum, Harga = i.Harga, IdSatuanHarga = i.IdSatuanHarga, SatuanHarga = i.SatuanHarga, HargaRit2 = i.HargaRit2, Overtime = i.Overtime, RitaseBulan = i.RitaseBulan, IsAsuransi = i.IsAsuransi, PihakPenanggung = i.PihakPenanggung, TipeNilaiPenanggung = i.TipeNilaiTanggungan, Premi = i.Premi, NilaiTanggungan = i.NilaiTanggungan, Keterangan = i.Keterangan }))); }
public void setDb(Context.DaftarHargaKontrak dbitem) { dbitem.IdCust = IdCust; dbitem.PeriodStart = PeriodStart.Value; dbitem.PeriodEnd = PeriodEnd.Value; dbitem.IdTypeKontrak = IdTypeKontrak; // items //dbitem.DaftarHargaKontrakItem.Clear(); DaftarHargaKontrakItem[] result = JsonConvert.DeserializeObject <DaftarHargaKontrakItem[]>(StrItem); List <Context.DaftarHargaKontrakItem> DummyItems = dbitem.DaftarHargaKontrakItem.ToList(); List <int> ListAnuTeuDiHapus = new List <int>(); foreach (DaftarHargaKontrakItem item in result) { Context.DaftarHargaKontrakItem dhkItem = dbitem.DaftarHargaKontrakItem.Where(i => i.IdDaftarHargaKontrak == dbitem.Id && i.Id == item.Id).FirstOrDefault(); if (item.Id != 0) { dhkItem.Id = item.Id; dhkItem.NamaRuteDaftarHarga = item.NamaRuteDaftarHarga; dhkItem.ListIdRute = item.ListIdRute; dhkItem.ListNamaRute = item.ListNamaRute; dhkItem.IdJenisTruck = item.IdJenisTruck; dhkItem.BeratMinimum = item.BeratMinimum; dhkItem.Harga = item.Harga; dhkItem.IdSatuanHarga = item.IdSatuanHarga; dhkItem.HargaRit2 = item.HargaRit2; dhkItem.Overtime = item.Overtime; dhkItem.RitaseBulan = item.RitaseBulan; dhkItem.IsAsuransi = item.IsAsuransi; dhkItem.PihakPenanggung = item.PihakPenanggung; dhkItem.TipeNilaiTanggungan = item.TipeNilaiTanggungan; dhkItem.NilaiTanggungan = item.NilaiTanggungan; dhkItem.Premi = item.Premi; dhkItem.Keterangan = item.Keterangan; ListAnuTeuDiHapus.Add(item.Id); } else { dbitem.DaftarHargaKontrakItem.Add(new Context.DaftarHargaKontrakItem() { //Id = item.Id, NamaRuteDaftarHarga = item.NamaRuteDaftarHarga, ListIdRute = item.ListIdRute, ListNamaRute = item.ListNamaRute, IdJenisTruck = item.IdJenisTruck, BeratMinimum = item.BeratMinimum, Harga = item.Harga, IdSatuanHarga = item.IdSatuanHarga, HargaRit2 = item.HargaRit2, Overtime = item.Overtime, RitaseBulan = item.RitaseBulan, IsAsuransi = item.IsAsuransi, PihakPenanggung = item.PihakPenanggung, TipeNilaiTanggungan = item.TipeNilaiTanggungan, NilaiTanggungan = item.NilaiTanggungan, Premi = item.Premi, Keterangan = item.Keterangan }); } } foreach (Context.DaftarHargaKontrakItem dbhapus in DummyItems) { if (!ListAnuTeuDiHapus.Any(d => d == dbhapus.Id)) { dbitem.DaftarHargaKontrakItem.Remove(dbhapus); } } //kondisi dbitem.DaftarHargaKontrakKondisi.Clear(); foreach (DaftarHargaKondisi item in listKondisi.Where(d => d.IsDelete == false)) { dbitem.DaftarHargaKontrakKondisi.Add(new Context.DaftarHargaKontrakKondisi() { kondisi = item.kondisi, IsInclude = item.IsInclude, IsBill = item.IsBill, value = item.value, IsDefault = item.IsDefault, IsKota = item.IsKota, IsTitik = item.IsTitik, ValKota = item.ValKota, ValTitik = item.ValTitik, IsDelete = item.IsDelete, }); } //Attachment dbitem.DaftarHargaKontrakAttachment.Clear(); DaftarHargaKontrakAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKontrakAttachment[]>(StrAttachment); foreach (DaftarHargaKontrakAttachment item in resultAtt) { dbitem.DaftarHargaKontrakAttachment.Add(new Context.DaftarHargaKontrakAttachment() { FileName = item.FileName, RFileName = item.RFileName, }); } }