private void IsValidSo(int idSo, int idTruck, List <string> MsgError) { //cokot satuan anu tina so berdasarkan id kon truk, Context.SalesOrder dbso = RepoSalesOrder.FindByKonsolidasi(idSo); List <Context.DaftarHargaKonsolidasiItem> dbItems = RepoDaftarHarga.FindByItemId(dbso.SalesOrderKonsolidasi.IdDaftarHargaItem.Value).DaftarHargaKonsolidasiItem.ToList(); if (dbItems != null) { //cokot item daftar harga sesuai anu dipilih tina so Context.DaftarHargaKonsolidasiItem dbItemHarga = dbItems.Where(d => d.Id == dbso.SalesOrderKonsolidasi.IdDaftarHargaItem.Value).FirstOrDefault(); if (dbso.SalesOrderKonsolidasi.PerhitunganDasar != "Manual") { //cek aya teu data na berdasar kan truk jeung satuana na //khusus tonase if (dbso.SalesOrderKonsolidasi.PerhitunganDasar == "Tonase") { if (dbItemHarga.IdJenisKendaraan != idTruck || (dbItemHarga.LookupCodeSatuan.Nama.ToLower() != "kg" && dbItemHarga.LookupCodeSatuan.Nama.ToLower() != "ton")) { MsgError.Add("Tidak terdapat Daftar harga pada " + dbso.SalesOrderKonsolidasi.SONumber + " untuk satuan " + dbso.SalesOrderKonsolidasi.PerhitunganDasar); } } else { if (dbItemHarga.IdJenisKendaraan != idTruck || dbItemHarga.LookupCodeSatuan.Nama.ToLower() != dbso.SalesOrderKonsolidasi.PerhitunganDasar.ToLower()) { MsgError.Add("Tidak terdapat Daftar harga pada " + dbso.SalesOrderKonsolidasi.SONumber + " untuk satuan " + dbso.SalesOrderKonsolidasi.PerhitunganDasar); } } } } }
public bool isValidMinMax(int id, int val, string satuan) { Context.DaftarHargaKonsolidasi dbDh = RepoDHKonsolidasi.FindByItemId(id); Context.DaftarHargaKonsolidasiItem dbItem = dbDh.DaftarHargaKonsolidasiItem.Where(d => d.Id == id).FirstOrDefault(); if (dbItem.LookupCodeSatuan.Nama == satuan) { return((val >= dbItem.MinKg) && (val <= dbItem.MaxKg)); } else { return(true); } }
public ActionResult Edit(int id) { Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(id); SalesOrderKonsolidasi model = new SalesOrderKonsolidasi(dbitem); model.NamaCustomer = RepoLookupCode.FindByPK(model.CustomerId).Nama; model.KodeNama = RepoCustomer.FindByPK(model.SupplierId.Value).CustomerCodeOld; model.SupplierName = RepoCustomer.FindByPK(model.SupplierId.Value).CustomerNama; Context.DaftarHargaKonsolidasiItem dhoitem = RepoDHKonsolidasi.FindItemByPK(model.RuteId.Value); ViewBag.ListNamaRute = dhoitem.ListNamaRute; ViewBag.name = model.SONumber; return(View("Form", model)); }
public ActionResult Add(SalesOrderKonsolidasi model, string btnsave) { if (ModelState.IsValid) { //cek min max bool isPalid = true; Context.DaftarHargaKonsolidasi dbDh = RepoDHKonsolidasi.FindByItemId(model.RuteId.Value); Context.DaftarHargaKonsolidasiItem dbDhItem = dbDh.DaftarHargaKonsolidasiItem.Where(d => d.Id == model.RuteId.Value).FirstOrDefault(); if (!isPalid) { return(View("Form", model)); } Context.SalesOrder dbso = new Context.SalesOrder(); Context.SalesOrderKonsolidasi dbitem = new Context.SalesOrderKonsolidasi(); model.setDb(dbitem); dbitem.Urutan = RepoSalesOrder.getUrutanKonsolidasi(model.TanggalMasuk.Value) + 1; dbitem.SONumber = RepoSalesOrder.generateKonsolidasi(model.TanggalMasuk.Value, dbitem.Urutan); dbitem.DN = "DN" + dbitem.SONumber; dbso.SalesOrderKonsolidasi = dbitem; if (btnsave == "save") { dbso.Status = "save"; } else if (btnsave == "draft") { dbso.Status = "draft"; } else { dbso.Status = model.Status; } RepoSalesOrder.save(dbso); return(RedirectToAction("Index")); } return(View("Form", model)); }
public void setDb(Context.DaftarHargaKonsolidasi dbitem) { //dbitem.Id = Id; dbitem.IdCust = IdCust; dbitem.PeriodStart = PeriodStart.Value; dbitem.PeriodEnd = PeriodEnd.Value; // items //dbitem.DaftarHargaKonsolidasiItem.Clear(); DaftarHargaKonsolidasiItem[] result = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiItem[]>(StrItem); List <Context.DaftarHargaKonsolidasiItem> DummyItems = dbitem.DaftarHargaKonsolidasiItem.ToList(); List <int> ListAnuTeuDiHapus = new List <int>(); foreach (DaftarHargaKonsolidasiItem item in result) { // edit row if (item.Id != 0) { Context.DaftarHargaKonsolidasiItem dhkItem = dbitem.DaftarHargaKonsolidasiItem.Where(i => i.IdDaftarHargaKonsolidasi == dbitem.Id && i.Id == item.Id).FirstOrDefault(); dhkItem.Id = item.Id; dhkItem.NamaDaftarHargaRute = item.NamaRuteDaftarHarga; dhkItem.ListIdRute = item.ListIdRute; dhkItem.ListNamaRute = item.ListNamaRute; dhkItem.IdJenisKendaraan = item.IdJenisKendaraan; dhkItem.MinKg = item.MinKg; dhkItem.MaxKg = item.MaxKg; dhkItem.Harga = item.Harga; dhkItem.IdSatuanHarga = item.IdSatuanHarga; dhkItem.IsAsuransi = item.IsAsuransi; dhkItem.Premi = item.Premi; dhkItem.PihakPenanggung = item.PihakPenanggung; dhkItem.TipeNilaiTanggungan = item.TipeNilaiTanggungan; dhkItem.NilaiTanggungan = item.NilaiTanggungan; dhkItem.Keterangan = item.Keterangan; ListAnuTeuDiHapus.Add(item.Id); } else //add row { dbitem.DaftarHargaKonsolidasiItem.Add(new Context.DaftarHargaKonsolidasiItem() { NamaDaftarHargaRute = item.NamaRuteDaftarHarga, ListIdRute = item.ListIdRute, ListNamaRute = item.ListNamaRute, IdJenisKendaraan = item.IdJenisKendaraan, MinKg = item.MinKg, MaxKg = item.MaxKg, Harga = item.Harga, IdSatuanHarga = item.IdSatuanHarga, IsAsuransi = item.IsAsuransi, Premi = item.Premi, PihakPenanggung = item.PihakPenanggung, TipeNilaiTanggungan = item.TipeNilaiTanggungan, NilaiTanggungan = item.NilaiTanggungan, Keterangan = item.Keterangan }); } } foreach (Context.DaftarHargaKonsolidasiItem dbhapus in DummyItems) { if (!ListAnuTeuDiHapus.Any(d => d == dbhapus.Id)) { dbitem.DaftarHargaKonsolidasiItem.Remove(dbhapus); } } //kondisi dbitem.DaftarHargaKonsolidasiKondisi.Clear(); foreach (DaftarHargaKondisi item in listKondisi.Where(d => d.IsDelete == false)) { dbitem.DaftarHargaKonsolidasiKondisi.Add(new Context.DaftarHargaKonsolidasiKondisi() { 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.DaftarHargaKonsolidasiAttachment.Clear(); DaftarHargaKonsolidasiAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiAttachment[]>(StrAttachment); foreach (DaftarHargaKonsolidasiAttachment item in resultAtt) { dbitem.DaftarHargaKonsolidasiAttachment.Add(new Context.DaftarHargaKonsolidasiAttachment() { FileName = item.FileName, RFileName = item.RFileName, }); } }
public ActionResult Edit(SalesOrderKonsolidasi model, string btnsave) { if (ModelState.IsValid) { //cek min max bool isPalid = true; Context.DaftarHargaKonsolidasi dbDh = RepoDHKonsolidasi.FindByItemId(model.RuteId.Value); Context.DaftarHargaKonsolidasiItem dbDhItem = dbDh.DaftarHargaKonsolidasiItem.Where(d => d.Id == model.RuteId.Value).FirstOrDefault(); if ( (dbDhItem.LookupCodeSatuan.Nama == model.PerhitunganDasar) || (model.PerhitunganDasar == "Tonase" && (dbDhItem.LookupCodeSatuan.Nama == "Ton" || dbDhItem.LookupCodeSatuan.Nama == "Kg")) ) { if (model.PerhitunganDasar == "Tonase") { if (!((model.Tonase >= dbDhItem.MinKg) && (model.Tonase <= dbDhItem.MaxKg))) { isPalid = false; ModelState.AddModelError("Tonase", "Nilai harus lebih besar dari " + dbDhItem.MinKg.ToString() + " dan lebih kecil dari " + dbDhItem.MaxKg.ToString()); } } else if (model.PerhitunganDasar == "Karton") { if (!((model.karton >= dbDhItem.MinKg) && (model.karton <= dbDhItem.MaxKg))) { isPalid = false; ModelState.AddModelError("karton", "Nilai harus lebih besar dari " + dbDhItem.MinKg.ToString() + " dan lebih kecil dari " + dbDhItem.MaxKg.ToString()); } } else if (model.PerhitunganDasar == "Pallet") { if (!((model.Pallet >= dbDhItem.MinKg) && (model.Pallet <= dbDhItem.MaxKg))) { isPalid = false; ModelState.AddModelError("Pallet", "Nilai harus lebih besar dari " + dbDhItem.MinKg.ToString() + " dan lebih kecil dari " + dbDhItem.MaxKg.ToString()); } } else if (model.PerhitunganDasar == "Container") { if (!((model.Container >= dbDhItem.MinKg) && (model.Container <= dbDhItem.MaxKg))) { isPalid = false; ModelState.AddModelError("Container", "Nilai harus lebih besar dari " + dbDhItem.MinKg.ToString() + " dan lebih kecil dari " + dbDhItem.MaxKg.ToString()); } } else if (model.PerhitunganDasar == "m3") { if (!((model.m3 >= dbDhItem.MinKg) && (model.m3 <= dbDhItem.MaxKg))) { isPalid = false; ModelState.AddModelError("m3", "Nilai harus lebih besar dari " + dbDhItem.MinKg.ToString() + " dan lebih kecil dari " + dbDhItem.MaxKg.ToString()); } } } if (!isPalid) { return(View("Form", model)); } Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(model.SalesOrderId.Value); model.setDb(dbitem.SalesOrderKonsolidasi); if (btnsave == "save") { dbitem.Status = "save"; } else if (btnsave == "draft") { dbitem.Status = "draft"; } else { dbitem.Status = model.Status; } RepoSalesOrder.save(dbitem); return(RedirectToAction("Index")); } return(View("Form", model)); }