public String GetListRute(int idItem) { Context.DaftarHargaKonsolidasi DHK = RepoDHKonsolidasi.FindAll().Where(d => d.DaftarHargaKonsolidasiItem.Any(i => i.Id == idItem)).FirstOrDefault(); return(new JavaScriptSerializer().Serialize( DHK.DaftarHargaKonsolidasiItem.Where(d => d.Id == idItem).Select(i => i.ListIdRute).FirstOrDefault())); }
public string GetRuteByCustomer(int idCust, DateTime TanggalMasuk) { GridRequestParameters param = GridRequestParameters.Current; if (param.Filters.Filters == null) { param.Filters.Filters = new List <tms_mka_v2.Infrastructure.FilterInfo>(); } param.Filters.Filters.Add(new tms_mka_v2.Infrastructure.FilterInfo { Field = "IdCust", Operator = "eq", Value = idCust.ToString(), }); List <Rute> listRute = new List <Rute>(); List <Context.DaftarHargaKonsolidasi> dho = RepoDHKonsolidasi.FindAll(param.Skip, param.Take, (param.Sortings != null ? param.Sortings.ToList() : null), param.Filters); List <DaftarHargaKonsolidasiItem> model = new List <DaftarHargaKonsolidasiItem>(); Context.DaftarHargaKonsolidasi dhoitem = dho.Where(d => TanggalMasuk >= d.PeriodStart && TanggalMasuk <= d.PeriodEnd).FirstOrDefault(); foreach (Context.DaftarHargaKonsolidasiItem item in dhoitem.DaftarHargaKonsolidasiItem.ToList()) { model.Add(new DaftarHargaKonsolidasiItem(item)); } return(new JavaScriptSerializer().Serialize(new { data = model })); }
public ActionResult Edit(int id) { Context.DaftarHargaKonsolidasi dbitem = RepoDHKonsolidasi.FindByPK(id); DaftarHargaKonsolidasi model = new DaftarHargaKonsolidasi(dbitem); ViewBag.name = model.NamaCustomer; return(View("Form", model)); }
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 DaftarHargaKonsolidasi(Context.DaftarHargaKonsolidasi 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; 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 <DaftarHargaKonsolidasiItem>(); foreach (Context.DaftarHargaKonsolidasiItem item in dbitem.DaftarHargaKonsolidasiItem.ToList()) { listItem.Add(new DaftarHargaKonsolidasiItem(item)); } //kondisi listKondisi = new List <DaftarHargaKondisi>(); foreach (Context.DaftarHargaKonsolidasiKondisi item in dbitem.DaftarHargaKonsolidasiKondisi.ToList()) { listKondisi.Add(new DaftarHargaKondisi(item)); } //attachment listAtt = new List <DaftarHargaKonsolidasiAttachment>(); foreach (Context.DaftarHargaKonsolidasiAttachment item in dbitem.DaftarHargaKonsolidasiAttachment.ToList()) { listAtt.Add(new DaftarHargaKonsolidasiAttachment(item)); } }
public JsonResult IsUsed(int id, bool isImported) { bool isExistData = false; // fitur Import Daftar Harga if (isImported) { Context.DaftarHargaKonsolidasi dbItem = RepoDHKonsolidasi.FindByPK(id); List <int> listId = dbItem.DaftarHargaKonsolidasiItem.Where(i => i.IdDaftarHargaKonsolidasi == dbItem.Id).Select(i => i.Id).ToList(); isExistData = RepoSalesOrder.FindAllKonsolidasi().Where(a => listId.Contains(a.SalesOrderKonsolidasi.IdDaftarHargaItem.Value)).Count() > 0; } // edit & delete grid item Daftar Harga else { isExistData = RepoSalesOrder.FindAllKonsolidasi().Where(a => a.SalesOrderKonsolidasi.IdDaftarHargaItem == id).Count() > 0; } return(this.Json(isExistData, JsonRequestBehavior.AllowGet)); }
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 JsonResult GetItem(int id, string date) 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 <DaftarHargaKonsolidasiItem> listItem = new List <DaftarHargaKonsolidasiItem>(); Context.DaftarHargaKonsolidasi DHK = RepoDHKonsolidasi.FindAll().Where(d => d.Id == id && d.PeriodStart == dtrDate && d.PeriodEnd == dtrDate2).FirstOrDefault(); if (DHK != null) { foreach (Context.DaftarHargaKonsolidasiItem item in DHK.DaftarHargaKonsolidasiItem) { listItem.Add(new DaftarHargaKonsolidasiItem(item)); } } return(new JavaScriptSerializer().Serialize( listItem.Select(i => new { Id = i.Id, NamaRuteDaftarHarga = i.NamaRuteDaftarHarga, ListIdRute = i.ListIdRute, ListNamaRute = i.ListNamaRute, IdJenisKendaraan = i.IdJenisKendaraan, NamaJenisKendaraan = i.NamaJenisKendaraan, MinKg = i.MinKg, MaxKg = i.MaxKg, Harga = i.Harga, IdSatuanHarga = i.IdSatuanHarga, SatuanHarga = i.SatuanHarga, IsAsuransi = i.IsAsuransi, Premi = i.Premi, TipeNilaiTanggungan = i.TipeNilaiTanggungan, NilaiTanggungan = i.NilaiTanggungan, PihakPenanggung = i.PihakPenanggung, Keterangan = i.Keterangan }))); }
public JsonResult Delete(int id) { bool isExistData = false; ResponeModel response = new ResponeModel(true); Context.DaftarHargaKonsolidasi dbItem = RepoDHKonsolidasi.FindByPK(id); List <int> listId = dbItem.DaftarHargaKonsolidasiItem.Where(i => i.IdDaftarHargaKonsolidasi == dbItem.Id).Select(i => i.Id).ToList(); isExistData = RepoSalesOrder.FindAllKonsolidasi().Where(a => listId.Contains(a.SalesOrderKonsolidasi.IdDaftarHargaItem.Value)).Count() > 0; if (!isExistData) { RepoDHKonsolidasi.delete(dbItem, UserPrincipal.id); } else { response.Success = false; response.Message = "Data sudah digunakan, Penghapusan gagal"; } return(Json(response)); }
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 Add(DaftarHargaKonsolidasi model) { //validasi kondisi DaftarHargaKonsolidasiItem[] result = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiItem[]>(model.StrItem); model.listItem = result.ToList(); DaftarHargaKonsolidasiAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiAttachment[]>(model.StrAttachment); model.listAtt = resultAtt.ToList(); 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 (ModelState.IsValid) { bool palid = true; if (RepoDHKonsolidasi.IsPeriodValid(model.PeriodStart.Value, model.PeriodEnd.Value, model.IdCust.Value)) { ModelState.AddModelError("PeriodStart", "Periode awal tidak boleh overlaping."); ModelState.AddModelError("PeriodEnd", "Periode akhir tidak boleh overlaping."); palid = false; } if (!palid) { return(View("Form", model)); } Context.DaftarHargaKonsolidasi dbitem = new Context.DaftarHargaKonsolidasi(); model.setDb(dbitem); RepoDHKonsolidasi.save(dbitem, UserPrincipal.id); return(RedirectToAction("Index")); } return(View("Form", model)); }
public ActionResult Edit(DaftarHargaKonsolidasi 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 (RepoDHKonsolidasi.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.DaftarHargaKonsolidasi dbitem = RepoDHKonsolidasi.FindByPK(model.Id); model.setDb(dbitem); DaftarHargaKonsolidasiItem[] results = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiItem[]>(model.StrItem); List <Context.DaftarHargaKonsolidasiItem> DummyItems = dbitem.DaftarHargaKonsolidasiItem.ToList(); List <int> ListAnuTeuDiHapus = new List <int>(); var query = ""; foreach (DaftarHargaKonsolidasiItem item in results) { if (item.Id != 0) { query += "UPDATE dbo.\"DaftarHargaKonsolidasiItem\" SET \"NamaDaftarHargaRute\" = " + item.NamaRuteDaftarHarga + ", \"ListIdRute\" = " + item.ListIdRute + ", \"ListNamaRute\" = " + item.ListNamaRute + ", \"IdJenisKendaraan\" = " + item.IdJenisKendaraan + ", \"MinKg\" = " + item.MinKg + ", \"MaxKg\" = " + item.MaxKg + ", \"Harga\" = " + item.Harga + ", \"IsAsuransi\" = " + item.IsAsuransi + ", \"Premi\" = " + item.Premi + ", \"NilaiTanggungan\" = " + item.NilaiTanggungan + ", \"Keterangan\" = " + item.Keterangan + ", \"PihakPenanggung\" = " + item.PihakPenanggung + ", \"TipeNilaiTanggungan\" = " + item.TipeNilaiTanggungan + ", \"IdSatuanHarga\" = " + item.IdSatuanHarga + " WHERE \"Id\" = " + item.Id + ";"; ListAnuTeuDiHapus.Add(item.Id); } else { query += "INSERT INTO dbo.\"DaftarHargaKonsolidasiItem\" (\"IdDaftarHargaKonsolidasi\", \"NamaDaftarHargaRute\", \"ListIdRute\", \"ListNamaRute\", \"IdJenisKendaraan\", " + "\"MinKg\", \"MaxKg\", \"Harga\", \"IsAsuransi\", \"Premi\", \"NilaiTanggungan\", \"Keterangan\", \"PihakPenanggung\", \"TipeNilaiTanggungan\", \"IdSatuanHarga\") VALUES ( " + dbitem.Id + ", " + item.NamaRuteDaftarHarga + ", " + item.ListIdRute + ", " + item.ListNamaRute + ", " + item.IdJenisKendaraan + ", " + item.MinKg + ", " + item.MaxKg + ", " + item.Harga + ", " + item.IsAsuransi + ", " + item.Premi + ", " + item.NilaiTanggungan + ", " + item.Keterangan + ", " + item.PihakPenanggung + ", " + item.TipeNilaiTanggungan + ", " + item.IdSatuanHarga + ");"; } } foreach (Context.DaftarHargaKonsolidasiItem dbhapus in DummyItems) { if (!ListAnuTeuDiHapus.Any(d => d == dbhapus.Id)) { query += "DELETE FROM dbo.\"DaftarHargaKonsolidasiItem\" WHERE \"IdDaftarHargaKonsolidasi\" = " + dbitem.Id + ";"; } } RepoDHKonsolidasi.save(dbitem, UserPrincipal.id, query); return(RedirectToAction("Index")); } ViewBag.name = model.NamaCustomer; DaftarHargaKonsolidasiItem[] result = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiItem[]>(model.StrItem); model.listItem = result.ToList(); DaftarHargaKonsolidasiAttachment[] resultAtt = JsonConvert.DeserializeObject <DaftarHargaKonsolidasiAttachment[]>(model.StrAttachment); model.listAtt = resultAtt.ToList(); return(View("Form", model)); }
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)); }