public ActionResult EditBatalTruk(SalesOrderKontrak model, int DataTruckId, int IdDriver1, int IdDriver2, string btnsave) { Context.SalesOrderKontrakListSo dblist = RepoSalesOrderKontrakListSo.FindByNoSo(model.SONumber); dblist.IdDataTruck = DataTruckId; dblist.Driver1Id = IdDriver1; if (IdDriver2 > 0) { dblist.Driver2Id = IdDriver2; } if (IdDriver2 > 0) { dblist.Driver2Id = IdDriver2; } if (btnsave != null && btnsave != "") { dblist.Status = "draft konfirmasi"; } else { dblist.Status = "save planning"; } dblist.Status = btnsave; model.Status = "draft konfirmasi"; //RepoSalesOrder.save(model); RepoSalesOrderKontrakListSo.OnlyUpdate(dblist); return(RedirectToAction("Index")); }
public PartialViewResult GetPartialSo(int idSo, int IdSoKontrak = 0) { Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(idSo); if (dbitem.SalesOrderOncallId.HasValue) { AdminUangJalan model = new AdminUangJalan(dbitem.AdminUangJalan, RepoAtm.FindAll(), RepoBor.FindAll()); model.ModelOncall = new SalesOrderOncall(dbitem); return(PartialView("SalesOrderOncall/_PartialFormReadOnly", model.ModelOncall)); } else if (dbitem.SalesOrderPickupId.HasValue) { AdminUangJalan model = new AdminUangJalan(dbitem.AdminUangJalan, RepoAtm.FindAll(), RepoBor.FindAll()); model.ModelPickup = new SalesOrderPickup(dbitem); return(PartialView("SalesOrderPickup/_PartialFormReadOnly", model.ModelPickup)); } else if (dbitem.SalesOrderProsesKonsolidasiId.HasValue) { AdminUangJalan model = new AdminUangJalan(dbitem.AdminUangJalan, RepoAtm.FindAll(), RepoBor.FindAll()); model.ModelKonsolidasi = new SalesOrderProsesKonsolidasi(dbitem); return(PartialView("SalesOrderProsesKonsolidasi/_PartialFormReadOnly", model.ModelKonsolidasi)); } else if (IdSoKontrak != 0) { //List<int> ListIdDumy = ListIdSo.Split(new string[] { "." }, StringSplitOptions.None).ToList().Select(int.Parse).ToList(); Context.SalesOrderKontrakListSo dbsoDummy = dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.Id == IdSoKontrak).FirstOrDefault(); dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Clear(); dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Add(dbsoDummy); AdminUangJalan model = new AdminUangJalan(dbsoDummy.AdminUangJalan, RepoAtm.FindAll(), RepoBor.FindAll()); model.ModelKontrak = new SalesOrderKontrak(dbitem); return(PartialView("SalesOrderKontrak/_PartialFormReadOnly", model)); } return(PartialView("")); }
public ActionResult EditKontrak(int id, int idsokontrak) { Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(id); Context.SalesOrderKontrakListSo soKontrak = dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.Id == idsokontrak).FirstOrDefault(); //ambil jumlah so yang sama admin uang jalan nya int jumSo = dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.IdAdminUangJalan == soKontrak.IdAdminUangJalan).Count(); ViewBag.dbsoPerDriverCount = jumSo; dbitem.SalesOrderKontrak.SalesOrderKontrakListSo = new List <Context.SalesOrderKontrakListSo>(); dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Add(soKontrak); AdminUangJalan model = new AdminUangJalan(); if (soKontrak.IdAdminUangJalan.HasValue) { model = new AdminUangJalan(soKontrak.AdminUangJalan, Repoatm.FindAll(), RepoBor.FindAll()); } model.IdSalesOrder = dbitem.Id; model.ListIdSo = idsokontrak.ToString(); ViewBag.Status = soKontrak.Status; model.ModelKontrak = new SalesOrderKontrak(dbitem); if (soKontrak.Status.ToLower().Contains("konfirmasi")) { model.StatusSo = "Konfirmasi"; } if (model.IdDriver1.HasValue) { model.IdDriver1 = model.IdDriver1; model.NamaDriver1 = model.NamaDriver1; model.KeteranganGanti1 = model.KeteranganGanti1; } else { model.IdDriver1 = soKontrak.Driver1Id; model.NamaDriver1 = soKontrak.Driver1.KodeDriver + " - " + soKontrak.Driver1.NamaDriver; } if (model.IdDriver2.HasValue) { model.IdDriver2 = model.IdDriver2; model.NamaDriver2 = model.NamaDriver2; model.KeteranganGanti2 = model.KeteranganGanti2; } else { if (soKontrak.Driver2Id.HasValue) { model.IdDriver2 = soKontrak.Driver2Id; model.NamaDriver2 = soKontrak.Driver2.KodeDriver + " - " + soKontrak.Driver2.NamaDriver; } } ViewBag.Title = "Batal Truk " + dbitem.SalesOrderKontrak.SONumber; return(View("Form", model)); }
public ListOrder(Context.SalesOrder dbso, Context.SalesOrderKontrakListSo dbitem) { Id = dbso.Id; Status = dbitem.Status; if (dbitem.Status.ToLower().Contains("konfirmasi")) { StatusFlow = "KONFIRMASI"; } else { StatusFlow = dbitem.Status.ToLower().ToUpper(); } FlowDate = dbso.DateStatus; IsBatalTruk = dbitem.IsBatalTruck; IdChild = dbso.SalesOrderKontrakId.Value; IdSoKontrak = dbitem.Id; JenisOrder = "Kontrak"; TypeSo = "Kontrak"; DN = null; SONumber = dbitem.NoSo; JamMuat = dbso.SalesOrderKontrak.JamMuat; CustomerId = dbso.SalesOrderKontrak.CustomerId; NamaCustomer = dbso.SalesOrderKontrak.Customer.CustomerNama; Driver1 = dbitem.Driver1 == null ? "" : dbitem.Driver1.KodeDriver + " - " + dbitem.Driver1.NamaDriver; VehicleNo = dbitem.DataTruck == null ? "" : dbitem.DataTruck.VehicleNo; if (dbso.SalesOrderKontrak.ProductId.HasValue) { ProductId = dbso.SalesOrderKontrak.ProductId; StrProduct = dbso.SalesOrderKontrak.MasterProduct.NamaProduk; Suhu = dbso.SalesOrderKontrak.MasterProduct.TargetSuhu; } RuteId = null; Rute = ""; StrMultidrop = null; if (dbso.SalesOrderKontrakId.HasValue) { JenisTruckId = dbso.SalesOrderKontrak.JenisTrucks.Id; StrJenisTruck = dbso.SalesOrderKontrak.JenisTrucks.StrJenisTruck; } else { JenisTruckId = dbitem.DataTruck.IdJenisTruck; StrJenisTruck = dbitem.DataTruck.JenisTrucks.StrJenisTruck; } PenanganKhusus = null; List <string> strDate = new List <string>(); strDate.Add(dbitem.MuatDate.ToString()); TanggalMuat = string.Join("|", strDate); }
public ActionResult EditBatalTruk(string id) { Context.SalesOrderKontrakListSo detailsoitem = RepoSalesOrderKontrakListSo.FindByNoSo(id); Context.SalesOrder kontrakitem = RepoSalesOrder.FindByKontrak(detailsoitem.SalesKontrakId.Value); SalesOrderKontrak model = new SalesOrderKontrak(kontrakitem, detailsoitem); ViewBag.kondisi = "planning"; ViewBag.name = model.SONumber; ViewBag.so_detail = detailsoitem; ViewBag.Title = "Planning Sales Order Kontrak " + model.SONumber; ViewBag.PostData = "EditBatalTruk"; return(View("PlanningAfterBatalTruk", model)); }
public SettlementBatalIndex(Context.SettlementBatal dbitem, Context.SalesOrderKontrakListSo dbso) { Id = dbitem.Id; IdSalesOrder = dbitem.IdSalesOrder; IdSoKontrak = dbitem.IdSoKontrak; JenisOrder = "Kontrak"; //NoDn = dbitem.SalesOrder.SalesOrderOncall.DN; NoSo = dbso.NoSo; Customer = dbitem.SalesOrder.SalesOrderKontrak.Customer.CustomerNama; VehicleNo = dbso.DataTruck == null ? "" : dbso.DataTruck.VehicleNo; Driver = dbitem.IdDriver.HasValue ? dbitem.Driver.NamaDriver : ""; JenisBatal = dbitem.JenisBatal; Tanggal = dbitem.ModifiedDate; IsProses = dbitem.IsProses; }
public SalesOrderKontrak(Context.SalesOrder dbitem, Context.SalesOrderKontrakListSo salesOrderKontrakListSo) { IsBatalTruk = true; SalesOrderId = dbitem.Id; SalesOrderKontrakId = dbitem.SalesOrderKontrak.SalesOrderKontrakId; SONumber = salesOrderKontrakListSo.NoSo; DN = dbitem.SalesOrderKontrak.DN; Urutan = dbitem.SalesOrderKontrak.Urutan; CustomerId = dbitem.SalesOrderKontrak.CustomerId; KodeCustomer = dbitem.SalesOrderKontrak.Customer.CustomerCode; NamaCustomer = dbitem.SalesOrderKontrak.Customer.CustomerNama; JenisTruckId = dbitem.SalesOrderKontrak.JenisTruckId; StrJenisTruck = dbitem.SalesOrderKontrak.JenisTruckId == null ? "" : dbitem.SalesOrderKontrak.JenisTrucks.StrJenisTruck; ProductId = dbitem.SalesOrderKontrak.ProductId; StrProduct = dbitem.SalesOrderKontrak.ProductId == null ? "" : dbitem.SalesOrderKontrak.MasterProduct.NamaProduk; Suhu = dbitem.SalesOrderKontrak.ProductId == null ? 0 : int.Parse(dbitem.SalesOrderKontrak.MasterProduct.TargetSuhu.ToString()); PeriodStr = dbitem.SalesOrderKontrak.PeriodStr; PeriodEnd = dbitem.SalesOrderKontrak.PeriodEnd; JamMuat = dbitem.SalesOrderKontrak.JamMuat; JumlahTruck = 1; Rit = dbitem.SalesOrderKontrak.Rit; Keterangan = dbitem.SalesOrderKontrak.Keterangan; JumHari = dbitem.SalesOrderKontrak.JumlahHari; Kerja = dbitem.SalesOrderKontrak.JumlahHariKerja; libur = dbitem.SalesOrderKontrak.JumlahHariLibur; Status = dbitem.Status; DateStatus = dbitem.DateStatus; JsonDateMuat = salesOrderKontrakListSo.MuatDate.ToString(); List <string> strDate = new List <string>(); foreach (Context.SalesOrderKontrakDetail item in dbitem.SalesOrderKontrak.SalesOrderKontrakDetail) { strDate.Add(item.MuatDate.ToString()); } TanggalMuat = string.Join("|", strDate); ListModelSOKontrak = new List <SalesOrderKontrakListSo>(); ListValueModelSOKontrak = new List <SalesOrderKontrakListSo>(); foreach (Context.SalesOrderKontrakListSo item in dbitem.SalesOrderKontrak.SalesOrderKontrakListSo) { ListModelSOKontrak.Add(new SalesOrderKontrakListSo(item)); } IsReturn = dbitem.isReturn; }
public JsonResult Submit(int id) { ResponeModel response = new ResponeModel(true); Context.SalesOrder dbItem = RepoSalesOrder.FindByPK(id); if (dbItem.SalesOrderKontrak.SalesOrderKontrakTruck.Count > 0) { dbItem.Status = "save planning"; dbItem.isReturn = false; #region list kontrak SO dbItem.SalesOrderKontrak.SalesOrderKontrakListSo.Clear(); int idx = 1; for (int j = 1; j <= (dbItem.SalesOrderKontrak.Rit); j++) { foreach (var dateItem in dbItem.SalesOrderKontrak.SalesOrderKontrakDetail) { foreach (var trukItem in dbItem.SalesOrderKontrak.SalesOrderKontrakTruck) { Context.SalesOrderKontrakListSo dblist = new Context.SalesOrderKontrakListSo(); dblist.SalesKontrakId = dbItem.SalesOrderKontrakId; dblist.NoSo = RepoSalesOrderKontrakListSo.generateCodeListSo(dbItem.SalesOrderKontrak.SONumber, dateItem.MuatDate, j, idx, dbItem.SalesOrderKontrak.Urutan); dblist.MuatDate = dateItem.MuatDate; dblist.IdDataTruck = trukItem.DataTruckId; dblist.Driver1Id = trukItem.IdDriver1; dblist.Driver2Id = trukItem.IdDriver2; RepoSalesOrderKontrakListSo.OnlyAdd(dblist); idx++; } } } #endregion list kontrak SO RepoSalesOrder.save(dbItem); } else { response.SetFail("Truck belum dipilih."); } return(Json(response)); }
public ActionResult Edit(SalesOrderKontrak model, string btnsave) { Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(model.SalesOrderId.Value); if (btnsave != null && btnsave != "") { dbitem.Status = btnsave; } else { dbitem.Status = model.Status; } model.setDbOpertional(dbitem.SalesOrderKontrak); #region list kontrak SO dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Clear(); int idx = 1; for (int j = 1; j <= (dbitem.SalesOrderKontrak.Rit); j++) { foreach (var dateItem in dbitem.SalesOrderKontrak.SalesOrderKontrakDetail) { int trukIdx = 1; foreach (var trukItem in dbitem.SalesOrderKontrak.SalesOrderKontrakTruck) { Context.SalesOrderKontrakListSo dblist = new Context.SalesOrderKontrakListSo(); dblist.SalesKontrakId = dbitem.SalesOrderKontrakId; dblist.NoSo = RepoSalesOrderKontrakListSo.generateCodeListSo(dbitem.SalesOrderKontrak.SONumber, dateItem.MuatDate, j, trukIdx, dbitem.SalesOrderKontrak.Urutan); dblist.MuatDate = dateItem.MuatDate; dblist.IdDataTruck = trukItem.DataTruckId; dblist.Driver1Id = trukItem.IdDriver1; dblist.Driver2Id = trukItem.IdDriver2; RepoSalesOrderKontrakListSo.OnlyAdd(dblist); idx++; trukIdx++; } } } #endregion list kontrak SO RepoSalesOrder.save(dbitem); return(RedirectToAction("Index")); }
public SalesOrderKontrakListSo(Context.SalesOrderKontrakListSo dbitem) { Id = dbitem.Id; SalesKontrakId = dbitem.SalesKontrakId; NoSo = dbitem.NoSo; MuatDate = dbitem.MuatDate; IsProses = dbitem.IsProses; IdDataTruck = dbitem.IdDataTruck; if (dbitem.IdDataTruck.HasValue) { Nopol = dbitem.DataTruck.VehicleNo; IdJenisTruck = dbitem.DataTruck.IdJenisTruck; NamaJenisTruck = dbitem.DataTruck.JenisTrucks.StrJenisTruck; } Driver1Id = dbitem.Driver1Id; Driver2Id = dbitem.Driver2Id; Urutan = dbitem.Urutan; Status = dbitem.Status; IdAdminUangJalan = dbitem.IdAdminUangJalan; }
public ActionResult Edit(SettlementBatal model) { if (ModelState.IsValid) { Context.SettlementBatal dbitem = RepoSettlementBatal.FindByPK(model.Id); if (dbitem.IdSoKontrak == "" || dbitem.IdSoKontrak == null) { Context.SalesOrder dbso = RepoSalesOrder.FindByPK(model.IdSalesOrder.Value); Context.AdminUangJalan db = RepoAdminUangJalan.FindByPK(dbso.AdminUangJalanId.Value); Context.ERPConfig erpConfig = RepoERPConfig.FindByFrist(); dbitem.Code = "SB-" + (dbso.SalesOrderOncallId.HasValue ? dbso.SalesOrderOncall.SONumber : dbso.SalesOrderProsesKonsolidasiId.HasValue ? dbso.SalesOrderProsesKonsolidasi.SONumber : dbso.SalesOrderPickupId.HasValue ? dbso.SalesOrderPickup.SONumber : dbso.SalesOrderKontrak.SONumber); model.SetDb(dbitem); //Jurnal Pengembalian Uang Jalan //(uang, dll dikembalikan utuh), mau utuh mau ngga, nominal cash yg dikembalikan mah ambil dari form :p decimal nominalHutangUangJalanDriver = (model.KasAktual == null ? 0 : model.KasAktual.Value) + (model.TransferAktual == null ? 0 : model.TransferAktual.Value); decimal nomDiakui = (model.KasDiakui == null ? 0 : model.KasDiakui.Value) + (model.TransferDiakui == null ? 0 : model.TransferDiakui.Value) + (model.SolarDiakui == null ? 0 : model.SolarDiakui.Value) + (model.KapalDiakui == null ? 0 : model.KapalDiakui.Value); decimal nomSelisih = (dbitem.KasSelisih == null ? 0 : dbitem.KasSelisih.Value) + (dbitem.TransferSelisih == null ? 0 : dbitem.TransferSelisih.Value) + (dbitem.KapalSelisih == null ? 0 : dbitem.KapalSelisih.Value); nominalHutangUangJalanDriver += decimal.Parse(db.AdminUangJalanVoucherSpbu.Select(d => d.Value).Sum().ToString()); nominalHutangUangJalanDriver += decimal.Parse(db.AdminUangJalanVoucherKapal.Select(d => d.Value).Sum().ToString()); nominalHutangUangJalanDriver += db.KasbonDriver1 == null ? 0 : db.KasbonDriver1.Value; nominalHutangUangJalanDriver += db.KlaimDriver1 == null ? 0 : db.KlaimDriver1.Value; nominalHutangUangJalanDriver += decimal.Parse(db.AdminUangJalanPotonganDriver.Select(d => d.Value).Sum().ToString()); decimal?TotalBiaya = nomDiakui; int idx = 2; if (nomDiakui > 0) { Repoglt_det.saveFromAc(2, "SB-" + dbso.SalesOrderOncall.SONumber, nomDiakui, 0, Repoac_mstr.FindByPk(erpConfig.IdBiayaBatalJalan));//BIAYA BATAL JALAN } foreach (Context.AdminUangJalanVoucherSpbu aujvs in db.AdminUangJalanVoucherSpbu) { idx++; if (model.SPBUKembali != null && model.SPBUKembali.Contains(aujvs.Keterangan)) //jurnal balik, ga jadi hutangnya { Repoglt_det.saveFromAc(idx, "SB-" + dbso.SalesOrderOncall.SONumber, aujvs.Value, 0, Repoac_mstr.FindByPk(RepoLookup.FindByName(aujvs.Keterangan).ac_id)); //HUTANG SPBU 34.171.04 Pangkalan 2 dan atau TotalBiaya += aujvs.Value; } else //jadi hutang SPBU, masuk ke AP Inv { string a = aujvs.Keterangan; string username = UserPrincipal.username; int? vend = RepoLookup.FindByName(aujvs.Keterangan).VendorId; int vendorId = RepoLookup.FindByName(aujvs.Keterangan).VendorId.Value; Context.Customer cust = RepoCustomer.FindByPK(RepoLookup.FindByName(aujvs.Keterangan).VendorId.Value); Repogr_mstr.save(aujvs.Value, cust, username, dbitem.Code); } } Repoglt_det.saveFromAc(idx, "SB-" + dbso.SalesOrderOncall.SONumber, dbitem.SolarSelisih, 0, Repoac_mstr.FindByPk(erpConfig.IdPiutangDriverBatalJalanSementaraSolar)); TotalBiaya += dbitem.SolarSelisih; if (dbitem.KapalAktual > 0) { foreach (Context.AdminUangJalanVoucherKapal aujvs in db.AdminUangJalanVoucherKapal) { idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbso.SalesOrderOncall.SONumber, aujvs.Value, 0, Repoac_mstr.FindByPk(RepoLookup.FindByName(aujvs.Keterangan).ac_id));//HUTANG SPBU 34.171.04 Pangkalan 2 dan atau TotalBiaya += aujvs.Value; } } // if (nomSelisih > 0){ idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbso.SalesOrderOncall.SONumber, nomSelisih, 0, Repoac_mstr.FindByPk(erpConfig.IdPiutangDriverBatalJalan), "Selisih Kas/Transfer/Kapal");//PIUTANG DRIVER BATAL JALAN TotalBiaya += nomSelisih; // } //mau utuh mau ngga, nominal cash yg dikembalikan mah ambil dari form :p Repoglt_det.saveFromAc(2, "SB-" + dbso.SalesOrderOncall.SONumber, model.KasAktual, 0, Repoac_mstr.FindByPk(RepoMasterPool.FindByIPAddress().IdCreditCash)); //BCA Audy 386-7957777 atau Repoglt_det.saveFromAc(2, "SB-" + dbso.SalesOrderOncall.SONumber, model.TransferAktual, 0, Repoac_mstr.FindByPk(dbitem.IdCreditTf)); //BCA Audy 386-7957777 atau TotalBiaya += (model.KasAktual + model.TransferAktual); Repoglt_det.saveFromAc(1, "SB-" + dbso.SalesOrderOncall.SONumber, 0, TotalBiaya, Repoac_mstr.FindByPk(erpConfig.IdAUJCredit)); //Hutang Uang Jalan Driver RepoSettlementBatal.save(dbitem, UserPrincipal.id, "Settlement Batal"); try {//masuklah ke saldo piutang driver, save to pby_mstr&det var glt_oid = Guid.NewGuid().ToString(); Repopbyd_det.saveMstr(glt_oid, dbitem.Code, erpConfig.IdAUJCredit.Value, "Settlement Batal " + dbitem.Code, db.IdDriver1.Value + 7000000); Repopbyd_det.save( glt_oid, dbitem.Code, erpConfig.IdAUJCredit.Value, "Settlement Batal " + dbitem.Code, db.IdDriver1.Value + 7000000, erpConfig.IdAUJCredit.Value, Repoac_mstr.FindByPk(erpConfig.IdAUJCredit).ac_name, 0 ); } catch (Exception e) {} } else { Context.SalesOrder dbso = RepoSalesOrder.FindByPK(model.IdSalesOrder.Value); Context.SalesOrderKontrakListSo dbKontrak = dbso.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.Id == int.Parse(dbitem.IdSoKontrak)).FirstOrDefault(); Context.AdminUangJalan db = RepoAdminUangJalan.FindByPK(dbKontrak.IdAdminUangJalan.Value); Context.ERPConfig erpConfig = RepoERPConfig.FindByFrist(); dbitem.Code = "SB-" + (dbso.SalesOrderOncallId.HasValue ? dbso.SalesOrderOncall.SONumber : dbso.SalesOrderProsesKonsolidasiId.HasValue ? dbso.SalesOrderProsesKonsolidasi.SONumber : dbso.SalesOrderPickupId.HasValue ? dbso.SalesOrderPickup.SONumber : dbso.SalesOrderKontrak.SONumber); model.SetDb(dbitem); //Jurnal Pengembalian Uang Jalan //(uang, dll dikembalikan utuh), mau utuh mau ngga, nominal cash yg dikembalikan mah ambil dari form :p decimal nominalHutangUangJalanDriver = model.KasAktual ?? model.KasAktual.Value + model.TransferAktual ?? model.TransferAktual.Value; decimal nomDiakui = model.KasDiakui ?? model.KasDiakui.Value + model.TransferDiakui ?? model.TransferDiakui.Value + model.SolarDiakui ?? model.SolarDiakui.Value + model.KapalDiakui ?? model.KapalDiakui.Value; decimal nomSelisih = dbitem.KasSelisih.Value + dbitem.TransferSelisih.Value + dbitem.KapalSelisih.Value; nominalHutangUangJalanDriver += decimal.Parse(db.AdminUangJalanVoucherSpbu.Select(d => d.Value).Sum().ToString()); nominalHutangUangJalanDriver += decimal.Parse(db.AdminUangJalanVoucherKapal.Select(d => d.Value).Sum().ToString()); nominalHutangUangJalanDriver += db.KasbonDriver1 == null ? 0 : db.KasbonDriver1.Value; nominalHutangUangJalanDriver += db.KlaimDriver1 == null ? 0 : db.KlaimDriver1.Value; nominalHutangUangJalanDriver += decimal.Parse(db.AdminUangJalanPotonganDriver.Select(d => d.Value).Sum().ToString()); int idx = 2; Repoglt_det.saveFromAc(1, "SB-" + dbKontrak.NoSo, 0, nominalHutangUangJalanDriver, Repoac_mstr.FindByPk(erpConfig.IdAUJCredit));//Hutang Uang Jalan Driver if (nomDiakui > 0) { Repoglt_det.saveFromAc(2, "SB-" + dbKontrak.NoSo, nomDiakui, 0, Repoac_mstr.FindByPk(erpConfig.IdBiayaBatalJalan));//BIAYA BATAL JALAN } foreach (Context.AdminUangJalanVoucherSpbu aujvs in db.AdminUangJalanVoucherSpbu) { idx++; if (model.SPBUKembali.Contains(aujvs.Keterangan)) { Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, aujvs.Value, 0, Repoac_mstr.FindByPk(RepoLookup.FindByName(aujvs.Keterangan).ac_id));//HUTANG SPBU 34.171.04 Pangkalan 2 dan atau } else { Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, aujvs.Value, 0, Repoac_mstr.FindByPk(erpConfig.IdPiutangDriverBatalJalanSementaraSolar), "Voucher SPBU " + aujvs.Keterangan); } } foreach (Context.AdminUangJalanVoucherKapal aujvs in db.AdminUangJalanVoucherKapal) { idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, aujvs.Value, 0, Repoac_mstr.FindByPk(RepoLookup.FindByName(aujvs.Keterangan).ac_id));//HUTANG SPBU 34.171.04 Pangkalan 2 dan atau } // if (nomSelisih > 0){ idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, nomSelisih, 0, Repoac_mstr.FindByPk(erpConfig.IdPiutangDriverBatalJalan), "Selisih Kas/Transfer/Kapal");//PIUTANG DRIVER BATAL JALAN // } if (db.PotonganB > 0) { idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, db.PotonganB, 0, Repoac_mstr.FindByPk(erpConfig.IdPiutangDriverBatalJalan));//PIUTANG DRIVER BATAL JALAN } if (db.PotonganP > 0) { idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, db.PotonganP, 0, Repoac_mstr.FindByPk(erpConfig.IdPiutangDriverPribadi));//PIUTANG DRIVER BATAL JALAN / SEMENTARA TUNAI } if (db.PotonganK > 0) { idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, db.PotonganK, 0, Repoac_mstr.FindByPk(erpConfig.IdPendapatanPengembalianPiutangDriver)); } if (db.PotonganT > 0) { idx++; Repoglt_det.saveFromAc(idx, "SB-" + dbKontrak.NoSo, db.PotonganT, 0, Repoac_mstr.FindByPk(erpConfig.IdTabunganDriver)); } //mau utuh mau ngga, nominal cash yg dikembalikan mah ambil dari form :p Repoglt_det.saveFromAc(2, "SB-" + dbKontrak.NoSo, model.KasAktual, 0, Repoac_mstr.FindByPk(RepoMasterPool.FindByIPAddress().IdCreditCash)); //BCA Audy 386-7957777 atau Repoglt_det.saveFromAc(2, "SB-" + dbKontrak.NoSo, model.TransferAktual, 0, Repoac_mstr.FindByPk(db.AdminUangJalanUangTf.FirstOrDefault().IdCreditTf)); //BCA Audy 386-7957777 atau RepoSettlementBatal.save(dbitem, UserPrincipal.id, "Settlement Batal"); try {//masuklah ke saldo piutang driver, save to pby_mstr&det var glt_oid = Guid.NewGuid().ToString(); Repopbyd_det.saveMstr(glt_oid, dbitem.Code, erpConfig.IdAUJCredit.Value, "Settlement Batal " + dbitem.Code, db.IdDriver1.Value + 7000000); Repopbyd_det.save( glt_oid, dbitem.Code, erpConfig.IdAUJCredit.Value, "Settlement Batal " + dbitem.Code, db.IdDriver1.Value + 7000000, erpConfig.IdAUJCredit.Value, Repoac_mstr.FindByPk(erpConfig.IdAUJCredit).ac_name, 0 ); } catch (Exception e) {} } return(RedirectToAction("Index")); } return(View("Form", model)); }
public string GetDetailSo(int idSo, int IdSoKontrak = 0) { Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(idSo); if (dbitem.SalesOrderOncallId.HasValue) { return(new JavaScriptSerializer().Serialize( new { driverId1 = dbitem.SalesOrderOncall.Driver1Id, kodeDriver1 = dbitem.SalesOrderOncall.Driver1.KodeDriver, namaDriver1 = dbitem.SalesOrderOncall.Driver1.NamaDriver, driverId2 = dbitem.SalesOrderOncall.Driver2Id, kodeDriver2 = dbitem.SalesOrderOncall.Driver2Id.HasValue ? dbitem.SalesOrderOncall.Driver1.KodeDriver : "", namaDriver2 = dbitem.SalesOrderOncall.Driver2Id.HasValue ? dbitem.SalesOrderOncall.Driver1.NamaDriver : "", dataTruckId = dbitem.SalesOrderOncall.IdDataTruck, vehicleNo = dbitem.SalesOrderOncall.DataTruck.VehicleNo, jenisTruck = dbitem.SalesOrderOncall.DataTruck.JenisTrucks.StrJenisTruck, jenisPendingin = dbitem.SalesOrderOncall.DataTruck.DataPendingin.Count > 0 ? dbitem.SalesOrderOncall.DataTruck.DataPendingin.OrderBy(p => p.Id).Last().Model : "", })); } else if (dbitem.SalesOrderPickupId.HasValue) { return(new JavaScriptSerializer().Serialize( new { driverId1 = dbitem.SalesOrderPickup.Driver1Id, kodeDriver1 = dbitem.SalesOrderPickup.Driver1.KodeDriver, namaDriver1 = dbitem.SalesOrderPickup.Driver1.NamaDriver, driverId2 = dbitem.SalesOrderPickup.Driver2Id, kodeDriver2 = dbitem.SalesOrderPickup.Driver2Id.HasValue ? dbitem.SalesOrderPickup.Driver1.KodeDriver : "", namaDriver2 = dbitem.SalesOrderPickup.Driver2Id.HasValue ? dbitem.SalesOrderPickup.Driver1.NamaDriver : "", dataTruckId = dbitem.SalesOrderPickup.IdDataTruck, vehicleNo = dbitem.SalesOrderPickup.DataTruck.VehicleNo, jenisTruck = dbitem.SalesOrderPickup.DataTruck.JenisTrucks.StrJenisTruck, jenisPendingin = dbitem.SalesOrderPickup.DataTruck.DataPendingin.Count > 0 ? dbitem.SalesOrderPickup.DataTruck.DataPendingin.OrderBy(p => p.Id).Last().Model : "", })); } else if (dbitem.SalesOrderProsesKonsolidasiId.HasValue) { return(new JavaScriptSerializer().Serialize( new { driverId1 = dbitem.SalesOrderProsesKonsolidasi.Driver1Id, kodeDriver1 = dbitem.SalesOrderProsesKonsolidasi.Driver1.KodeDriver, namaDriver1 = dbitem.SalesOrderProsesKonsolidasi.Driver1.NamaDriver, driverId2 = dbitem.SalesOrderProsesKonsolidasi.Driver2Id, kodeDriver2 = dbitem.SalesOrderProsesKonsolidasi.Driver2Id.HasValue ? dbitem.SalesOrderProsesKonsolidasi.Driver1.KodeDriver : "", namaDriver2 = dbitem.SalesOrderProsesKonsolidasi.Driver2Id.HasValue ? dbitem.SalesOrderProsesKonsolidasi.Driver1.NamaDriver : "", dataTruckId = dbitem.SalesOrderProsesKonsolidasi.IdDataTruck, vehicleNo = dbitem.SalesOrderProsesKonsolidasi.DataTruck.VehicleNo, jenisTruck = dbitem.SalesOrderProsesKonsolidasi.DataTruck.JenisTrucks.StrJenisTruck, jenisPendingin = dbitem.SalesOrderProsesKonsolidasi.DataTruck.DataPendingin.Count > 0 ? dbitem.SalesOrderProsesKonsolidasi.DataTruck.DataPendingin.OrderBy(p => p.Id).Last().Model : "", })); } else if (IdSoKontrak != 0) { Context.SalesOrderKontrakListSo dbsoDummy = dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.Id == IdSoKontrak).FirstOrDefault(); return(new JavaScriptSerializer().Serialize( new { driverId1 = dbsoDummy.Driver1Id, kodeDriver1 = dbsoDummy.Driver1.KodeDriver, namaDriver1 = dbsoDummy.Driver1.NamaDriver, driverId2 = dbsoDummy.Driver2Id, kodeDriver2 = dbsoDummy.Driver2Id.HasValue ? dbsoDummy.Driver1.KodeDriver : "", namaDriver2 = dbsoDummy.Driver2Id.HasValue ? dbsoDummy.Driver1.NamaDriver : "", dataTruckId = dbsoDummy.IdDataTruck, vehicleNo = dbsoDummy.DataTruck.VehicleNo, jenisTruck = dbsoDummy.DataTruck.JenisTrucks.StrJenisTruck, jenisPendingin = dbsoDummy.DataTruck.DataPendingin.Count > 0 ? dbsoDummy.DataTruck.DataPendingin.OrderBy(p => p.Id).Last().Model : "", })); } return(""); }
public SolarInap(Context.SolarInap dbitem, Context.SalesOrderKontrakListSo sokontrak = null) { Id = dbitem.Id; IdSO = dbitem.IdSO; KasirDiberikanUntuk = dbitem.SO.SalesOrderOncallId.HasValue ? dbitem.SO.SalesOrderOncall.Driver1.NamaDriver : dbitem.SO.SalesOrderProsesKonsolidasiId.HasValue ? dbitem.SO.SalesOrderProsesKonsolidasi.Driver1.NamaDriver : dbitem.SO.SalesOrderPickupId.HasValue ? dbitem.SO.SalesOrderPickup.Driver1.NamaDriver : ""; Status = dbitem.StepKe == 1 ? "Marketing" : dbitem.StepKe == 2 ? "Finance" : dbitem.StepKe == 3 ? (dbitem.AktualCash > 0 && dbitem.AktualTransfer > 0 ? "Sudah" : dbitem.AktualCash > 0 ? (dbitem.Transfer > 0 ? "Kasir Transfer" : "Sudah") : dbitem.AktualTransfer > 0 ? (dbitem.Cash > 0 ? "Kasir Kas" : "Sudah") : "Kasir") : dbitem.StepKe == 4 ? "Batal Inap" : "Sudah"; TanggalMuat = dbitem.SO.SalesOrderOncallId.HasValue ? dbitem.SO.SalesOrderOncall.TanggalMuat : dbitem.SO.SalesOrderProsesKonsolidasiId.HasValue ? dbitem.SO.SalesOrderProsesKonsolidasi.TanggalMuat : dbitem.SO.SalesOrderPickup.TanggalPickup; TanggalDari = (dbitem.TanggalDari.Date.ToString().Split())[0]; TanggalHingga = (dbitem.TanggalHingga.Date.ToString().Split())[0]; NilaiYgDiajukan = dbitem.NilaiYgDiajukan; CashBack = dbitem.CashBack; KeteranganAdmin = dbitem.KeteranganAdmin; KeteranganMarketing = dbitem.KeteranganMarketing; KeteranganOperation = dbitem.KeteranganOperation; KeteranganKasirCash = dbitem.KeteranganKasirCash; Nominal = dbitem.Nominal; StatusTagihan = dbitem.StatusTagihan == null ? "Negosiasi" : dbitem.StatusTagihan; IdDriver = dbitem.IdDriver; Cash = dbitem.Cash; Transfer = dbitem.Transfer; TglCash = (dbitem.TglCash.Date.ToString().Split())[0]; TglTransfer = (dbitem.TglTransfer.Date.ToString().Split())[0]; DititipKe = dbitem.DititipKe; IdAtm = dbitem.IdAtm; StepKe = dbitem.StepKe; TanggalTiba = dbitem.TanggalTiba; JamTiba = dbitem.JamTiba; if (dbitem.IdAtm.HasValue) { AtasNama = dbitem.Atm.AtasNama; BankNama = dbitem.Atm.LookupCodeBank.Nama; NoRek = dbitem.Atm.NoRekening; } if (dbitem.SO.SalesOrderOncallId.HasValue) { NoSO = dbitem.SO.SalesOrderOncall.SONumber; VehicleNo = dbitem.SO.SalesOrderOncall.DataTruck.VehicleNo; NamaDriver = dbitem.SO.SalesOrderOncall.Driver1.NamaDriver; KodeDriver = dbitem.SO.SalesOrderOncall.Driver1.KodeDriver; JenisTruk = dbitem.SO.SalesOrderOncall.JenisTrucks.StrJenisTruck; Customer = dbitem.SO.SalesOrderOncall.Customer.CustomerNama; TanggalBerangkat = dbitem.SO.SalesOrderOncall.TanggalMuat; } else if (dbitem.SO.SalesOrderPickupId.HasValue) { NoSO = dbitem.SO.SalesOrderPickup.SONumber; VehicleNo = dbitem.SO.SalesOrderPickup.DataTruck.VehicleNo; NamaDriver = dbitem.SO.SalesOrderPickup.Driver1.NamaDriver; KodeDriver = dbitem.SO.SalesOrderPickup.Driver1.KodeDriver; JenisTruk = dbitem.SO.SalesOrderPickup.JenisTrucks.StrJenisTruck; Customer = dbitem.SO.SalesOrderPickup.Customer.CustomerNama; } else if (dbitem.SO.SalesOrderProsesKonsolidasiId.HasValue) { NoSO = dbitem.SO.SalesOrderProsesKonsolidasi.SONumber; VehicleNo = dbitem.SO.SalesOrderProsesKonsolidasi.DataTruck.VehicleNo; NamaDriver = dbitem.SO.SalesOrderProsesKonsolidasi.Driver1.NamaDriver; KodeDriver = dbitem.SO.SalesOrderProsesKonsolidasi.Driver1.KodeDriver; JenisTruk = dbitem.SO.SalesOrderProsesKonsolidasi.JenisTrucks.StrJenisTruck; TanggalBerangkat = dbitem.SO.SalesOrderProsesKonsolidasi.TanggalMuat; } else if (sokontrak != null) { NoSO = sokontrak.NoSo; VehicleNo = sokontrak.DataTruck.VehicleNo; NamaDriver = sokontrak.Driver1.NamaDriver; KodeDriver = sokontrak.Driver1.KodeDriver; JenisTruk = sokontrak.DataTruck.JenisTrucks.StrJenisTruck; TanggalBerangkat = sokontrak.MuatDate; } }
public JsonResult Proses(string listSo, int idSo) { ResponeModel response = new ResponeModel(true); Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(idSo); List <ListTruckSo> res = JsonConvert.DeserializeObject <ListTruckSo[]>(listSo).ToList(); //int urutListSo = (RepoSalesOrderKontrakListSo.getUrutanProses(dbitem.SalesOrderKontrakId)) + 1; foreach (ListTruckSo item in res) { Context.SalesOrderKontrakListSo dblist = RepoSalesOrderKontrakListSo.FindByPK(item.Id); dblist.IdDataTruck = item.IdTruk == null ? null : item.IdTruk; dblist.Driver1Id = item.IdDriver1 == null ? null : item.IdDriver1; dblist.Driver2Id = item.IdDriver2 == null ? null : item.IdDriver2; dblist.IsProses = true; dblist.Status = "save konfirmasi"; try { RepoSalesOrderKontrakListSo.save(dblist); if (dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Any(s => s.IsProses == false)) { dbitem.Status = "draft konfirmasi"; } else { dbitem.Status = "save konfirmasi"; } RepoSalesOrder.save(dbitem); } catch (Exception e) { response.Success = false; response.Message = e.Message; } } var data = res.GroupBy(d => d.IdTruk).Select(grp => grp.ToList()); foreach (var item in data) { foreach (var item2 in item) { Context.SalesOrderKontrakListSo dblist = RepoSalesOrderKontrakListSo.FindByPK(item2.Id); dblist.IdDataTruck = item2.IdTruk == null ? null : item2.IdTruk; dblist.Driver1Id = item2.IdDriver1 == null ? null : item2.IdDriver1; dblist.Driver2Id = item2.IdDriver2 == null ? null : item2.IdDriver2; dblist.IsProses = true; //dblist.Urutan = urutListSo; dblist.Status = "save konfirmasi"; try { RepoSalesOrderKontrakListSo.save(dblist); if (dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Any(s => s.IsProses == false)) { dbitem.Status = "draft konfirmasi"; } else { dbitem.Status = "save konfirmasi"; } RepoSalesOrder.save(dbitem); } catch (Exception e) { response.Success = false; response.Message = e.Message; } } //urutListSo++; } return(Json(response)); }
public ActionResult EditKontrak(AdminUangJalan model, string Keterangan) { Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(model.IdSalesOrder.Value); Context.SalesOrderKontrakListSo sokontrak = dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.Id == int.Parse(model.ListIdSo)).FirstOrDefault(); int jumSo = dbitem.SalesOrderKontrak.SalesOrderKontrakListSo.Where(d => d.IdAdminUangJalan == sokontrak.IdAdminUangJalan && d.IsBatalTruck != true).Count(); Context.BatalOrder batalOrder = new Context.BatalOrder(); Context.AdminUangJalan dbauj = sokontrak.AdminUangJalan; //cek status na if (sokontrak.Status == "dispatched") { Context.SettlementBatal dbsettlement = new Context.SettlementBatal(); //ambil data dbsettlement.IdSalesOrder = model.IdSalesOrder; dbsettlement.IdSoKontrak = model.ListIdSo; if (dbauj.AdminUangJalanUangTf.Any(d => d.Keterangan == "Tunai")) { dbsettlement.KasDiterima = dbauj.AdminUangJalanUangTf.Where(d => d.Keterangan == "Tunai").FirstOrDefault().JumlahTransfer / jumSo; } if (dbauj.AdminUangJalanUangTf.Any(d => d.Keterangan.Contains("Transfer"))) { dbsettlement.TransferDiterima = dbauj.AdminUangJalanUangTf.Where(d => d.Keterangan.Contains("Transfer")).Sum(t => t.JumlahTransfer) / jumSo; } dbsettlement.SolarDiterima = dbauj.AdminUangJalanVoucherSpbu.Sum(s => s.Value) / jumSo; dbsettlement.KapalDiterima = dbauj.AdminUangJalanVoucherKapal.Sum(s => s.Value) / jumSo; dbsettlement.JenisBatal = "Batal Truk"; dbsettlement.IdDriver = sokontrak.Driver1Id; RepoSettBatal.save(dbsettlement, UserPrincipal.id, "Batal Truk"); } else if (sokontrak.Status == "admin uang jalan") { foreach (Context.AdminUangJalanUangTf dbUang in dbauj.AdminUangJalanUangTf) { dbUang.Value = dbUang.Value / jumSo * (jumSo - 1); RepoSalesOrder.saveUangTf(dbUang); } } foreach (var trukItem in dbitem.SalesOrderKontrak.SalesOrderKontrakTruck.Where(d => d.DataTruckId == sokontrak.IdDataTruck).ToList()) { trukItem.DataTruckId = null; trukItem.IdDriver1 = null; trukItem.IdDriver2 = null; } sokontrak.IsProses = false; sokontrak.Urutan = 0; sokontrak.IsBatalTruck = true; sokontrak.IdDataTruck = null; sokontrak.Driver1Id = null; sokontrak.Driver2Id = null; sokontrak.Status = "draft planning"; batalOrder.IdSalesOrder = dbitem.Id; batalOrder.IdSoKontrak = model.ListIdSo; batalOrder.Keterangan = Keterangan; batalOrder.ModifiedDate = DateTime.Now; batalOrder.IsBatalTruk = true; RepoSalesOrder.save(dbitem); RepoBatalOrder.save(batalOrder, UserPrincipal.id); ViewBag.status = "batal order"; return(RedirectToAction("index", "ListOrder")); }