public JsonResult VendorPaymentCreate(IEnumerable <VMVenderPayment> PaymentItems, int VendorId, DateTime PayDate) { var result = new { flag = false, message = "Requisition saving error !" }; var flag = false; var vendorPayments = db.Proc_VendorPaymentMas.Where(x => x.VendorId == VendorId && x.VPDate == PayDate).ToList(); if (vendorPayments.Count == 0) { flag = false; Proc_VendorPaymentMas master = new Proc_VendorPaymentMas(); master.VendorId = VendorId; master.VPDate = PayDate; db.Proc_VendorPaymentMas.Add(master); flag = db.SaveChanges() > 0; var Proc_VendorPaymentMasId = master.Id; foreach (var item in PaymentItems) { Proc_VendorPaymentDet detail = new Proc_VendorPaymentDet(); detail.Proc_VendorPaymentMasId = Proc_VendorPaymentMasId; detail.Proc_MaterialEntryDetId = item.Proc_MaterialEntryDetId; detail.BillNo = item.BillNo; detail.PayAmt = item.Payment; detail.Remarks = item.Remarks; db.Proc_VendorPaymentDet.Add(detail); db.SaveChanges(); } } if (flag == true) { result = new { flag = true, message = "Save Successful!" }; } return(Json(result, JsonRequestBehavior.AllowGet)); }
public JsonResult VendorPaymentUpdate(IEnumerable <VendorPaymentEditDetail> PaymentItems, int?[] DeleteItems, int VendorId, int VendorMasId, DateTime PayDate) { var result = new { flag = false, message = "Vendor Payment saving error !" }; if (DeleteItems != null) { foreach (var i in DeleteItems) { //var delteItem = db.Proc_MaterialEntryDet.SingleOrDefault(x => x.ItemId == i && x.Proc_PurchaseOrderMasId == ProcPurchaseMasterId); var entryDetId = db.Proc_VendorPaymentDet.Find(i); db.Proc_VendorPaymentDet.Remove(entryDetId); db.SaveChanges(); } } var flag = false; var master = db.Proc_VendorPaymentMas.Find(VendorMasId); master.VendorId = VendorId; master.VPDate = PayDate; db.Entry(master).State = EntityState.Modified; flag = db.SaveChanges() > 0; var VendorMasIdAfterSave = master.Id; if (flag) { foreach (var item in PaymentItems) { var check = db.Proc_VendorPaymentDet.FirstOrDefault(x => x.Id == item.Proc_VendorPaymentDetId /*x.Proc_VendorPaymentMasId == VendorMasIdAfterSave*/); if (check == null) { Proc_VendorPaymentDet detail = new Proc_VendorPaymentDet(); detail.Proc_VendorPaymentMasId = VendorMasIdAfterSave; detail.Proc_MaterialEntryDetId = item.Proc_MaterialEntryDetId; detail.BillNo = item.BillNo; detail.PayAmt = item.Payment; detail.Remarks = item.Remarks; db.Entry(detail).State = EntityState.Added; db.SaveChanges(); } else { var Proc_VendorPayDet = db.Proc_VendorPaymentDet.FirstOrDefault(x => x.Id == item.Proc_VendorPaymentDetId); var getItem = db.Proc_VendorPaymentDet.Find(Proc_VendorPayDet.Id); getItem.PayAmt = item.Payment; getItem.Proc_MaterialEntryDetId = item.Proc_MaterialEntryDetId; getItem.Remarks = item.Remarks; db.Entry(getItem).State = EntityState.Modified; db.SaveChanges(); } } } if (flag == true) { result = new { flag = true, message = "Save Successful!" }; } return(Json(result, JsonRequestBehavior.AllowGet)); }