public ActionResult UpdatePayment(Payment payment) { using (var transaction = new TransactionScope()) { try { RBACUser rUser = new RBACUser(Session["UserName"].ToString()); if (!rUser.HasPermission("BankPayment_Update")) { return(Json("U", JsonRequestBehavior.AllowGet)); } List <BankOperationVModel> CashOPVM = new List <BankOperationVModel>(); var gset = _gsetService.All().LastOrDefault(); payment.BranchCode = Session["BranchCode"].ToString(); payment.FinYear = Session["FinYear"].ToString(); payment.bankAccode = Session["BankAccode"].ToString(); string branchCode = Session["BranchCode"].ToString(); string finYear = Session["FinYear"].ToString(); string bankAccode = Session["BankAccode"].ToString(); var bankOperation = _bankOperationService.All().ToList().LastOrDefault(x => x.BranchCode == branchCode && x.bankAccode == bankAccode && x.TrDate == payment.PayDate); var Payment = _paymentService.All().ToList().Where(x => x.PayCode == payment.PayCode.Trim()).FirstOrDefault(); if (bankOperation != null && Payment != null) { bankOperation.PayTotal = bankOperation.PayTotal + Payment.Amount - payment.Amount; bankOperation.CloseBal = bankOperation.OpenBal + bankOperation.RecTotal - bankOperation.PayTotal; _bankOperationService.Update(bankOperation); _bankOperationService.Save(); Payment = payment; _paymentService.All().ToList().Where(y => y.PayCode == payment.PayCode).ToList().ForEach(x => _paymentService.Delete(x)); _paymentService.Save(); _paymentService.Add(Payment); _paymentService.Save(); // Delete Provision var entryNo = payment.PayCode; LoadDropDown.journalVoucherRemoval("BP", entryNo, payment.VoucherNo, payment.FinYear); //Insert to provision LoadDropDown.journalVoucherSave("BP", "I", payment.PayCode, payment.VoucherNo, payment.FinYear, "01", payment.BranchCode, payment.PayDate, payment.bankAccode, Session["UserName"].ToString()); TransactionLogService.SaveTransactionLog(_transactionLogService, "Payment", "Update", payment.PayCode, User.Identity.Name); var sysSet = _sysSetService.All().FirstOrDefault(); if (sysSet.CashRule == "O") { LoadDropDown.BankRecalculate(payment.PayDate, Convert.ToDecimal(payment.Amount), Session["ProjCode"].ToString(), payment.BranchCode, payment.FinYear, payment.bankAccode); } CashOPVM = GetAllPayment(payment.PayDate, payment.BranchCode, payment.bankAccode); transaction.Complete(); return(Json(new { CashOPVM, data = 1 }, JsonRequestBehavior.AllowGet)); } else { return(Json("0", JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { transaction.Dispose(); return(Json(ex.Message.ToString(), JsonRequestBehavior.AllowGet)); } } }
public ActionResult SavePayment(Payment payment) { RBACUser rUser = new RBACUser(Session["UserName"].ToString()); if (!rUser.HasPermission("BankPayment_Insert")) { return(Json("X", JsonRequestBehavior.AllowGet)); } List <BankOperationVModel> CashOPVM = new List <BankOperationVModel>(); var gset = _gsetService.All().LastOrDefault(); try { var IfExit = _paymentService.All().Where(x => x.PayCode == payment.PayCode).FirstOrDefault(); if (IfExit == null) { payment.BranchCode = Session["BranchCode"].ToString(); payment.FinYear = Session["FinYear"].ToString(); payment.bankAccode = Session["BankAccode"].ToString(); var openBal = GetOpenBal(payment.PayDate); var rcecBal = GetAllRemittances(payment.PayDate, payment.BranchCode, payment.bankAccode).Sum(x => x.Amount); var payTotal = GetAllPayment(payment.PayDate, payment.BranchCode, payment.bankAccode).Sum(x => x.Amount); var closBal = openBal + rcecBal - payTotal; BankOperation bankOperation = new BankOperation(payment.PayDate, openBal, 0.0, payment.Amount, closBal, payment.BranchCode, payment.FinYear, false, payment.bankAccode); // BankOperation bankOperation = new BankOperation(payment.PayDate, 0.0, 0.0, 0.0, 0.0, payment.BranchCode, payment.FinYear, false, payment.bankAccode); var isAlreadySaved = _bankOperationService.All().ToList().FirstOrDefault(x => x.TrDate.ToString("MM-dd-yyyy") == payment.PayDate.ToString("MM-dd-yyyy") && x.BranchCode == payment.BranchCode && x.bankAccode == payment.bankAccode); if (isAlreadySaved == null) { using (var transaction = new TransactionScope()) { try { _bankOperationService.Add(bankOperation); _bankOperationService.Save(); _paymentService.Add(payment); _paymentService.Save(); //Insert to provision LoadDropDown.journalVoucherSave("BP", "I", payment.PayCode, payment.VoucherNo, payment.FinYear, "01", payment.BranchCode, payment.PayDate, payment.bankAccode, Session["UserName"].ToString()); TransactionLogService.SaveTransactionLog(_transactionLogService, "Payment", "Save", payment.PayCode, User.Identity.Name); CashOPVM = GetAllPayment(payment.PayDate, payment.BranchCode, payment.bankAccode); transaction.Complete(); } catch (Exception) { transaction.Dispose(); return(Json("0", JsonRequestBehavior.AllowGet)); } } return(Json(CashOPVM, JsonRequestBehavior.AllowGet)); } else { var payTotals = GetAllPayment(payment.PayDate, payment.BranchCode, payment.bankAccode).Sum(x => x.Amount); isAlreadySaved.PayTotal = payTotals + payment.Amount; isAlreadySaved.CloseBal = isAlreadySaved.OpenBal + isAlreadySaved.RecTotal - isAlreadySaved.PayTotal; using (var transaction = new TransactionScope()) { try { _bankOperationService.Update(isAlreadySaved); _bankOperationService.Save(); _paymentService.Add(payment); _paymentService.Save(); //Insert to provision LoadDropDown.journalVoucherSave("BP", "I", payment.PayCode, payment.VoucherNo, payment.FinYear, "01", payment.BranchCode, payment.PayDate, payment.bankAccode, Session["UserName"].ToString()); var sysSet = _sysSetService.All().FirstOrDefault(); if (sysSet.CashRule == "O") { LoadDropDown.BankRecalculate(payment.PayDate, Convert.ToDecimal(payment.Amount), Session["ProjCode"].ToString(), payment.BranchCode, payment.FinYear, payment.bankAccode); } TransactionLogService.SaveTransactionLog(_transactionLogService, "Payment", "Save", payment.PayCode, User.Identity.Name); CashOPVM = GetAllPayment(payment.PayDate, payment.BranchCode, payment.bankAccode); transaction.Complete(); } catch (Exception) { transaction.Dispose(); return(Json("0", JsonRequestBehavior.AllowGet)); } } return(Json(CashOPVM, JsonRequestBehavior.AllowGet)); } } else { return(Json("1", JsonRequestBehavior.AllowGet)); } } catch (Exception) { return(Json("0", JsonRequestBehavior.AllowGet)); } }
public ActionResult SaveBankReceipt(BankReceipt bankReceipt) { RBACUser rUser = new RBACUser(Session["UserName"].ToString()); if (!rUser.HasPermission("BankReceipt_Insert")) { return(Json("X", JsonRequestBehavior.AllowGet)); } List <BankOperationVModel> CashOPVM = new List <BankOperationVModel>(); var gset = _gsetService.All().LastOrDefault(); try { var IfExit = _BankReceiptAppService.All().Where(x => x.BReceiptNo == bankReceipt.BReceiptNo).FirstOrDefault(); if (IfExit == null) { if (!string.IsNullOrEmpty(bankReceipt.purAccode) && bankReceipt.purAccode.Trim() != "Select Purpose") { bankReceipt.BranchCode = Session["BranchCode"].ToString(); bankReceipt.bankAccode = Session["BankAccode"].ToString(); bankReceipt.FinYear = Session["FinYear"].ToString(); bankReceipt.NewChart = _NewChartService.All().ToList().FirstOrDefault(x => x.Accode == bankReceipt.purAccode.Trim()); bankReceipt.bankNewChart = _NewChartService.All().ToList().FirstOrDefault(x => x.Accode == bankReceipt.bankAccode.Trim()); var openBal = GetOpenBal(bankReceipt.BReceiptDate); var rcecBal = GetAllRemittances(bankReceipt.BReceiptDate, bankReceipt.BranchCode, bankReceipt.bankAccode).Sum(x => x.Amount); var payTotal = GetAllPayment(bankReceipt.BReceiptDate, bankReceipt.BranchCode, bankReceipt.bankAccode).Sum(x => x.Amount); var closBal = openBal + rcecBal - payTotal; BankOperation bankOperation = new BankOperation(bankReceipt.BReceiptDate, openBal, bankReceipt.Amount, 0.0, closBal, bankReceipt.BranchCode, bankReceipt.FinYear, false, bankReceipt.bankAccode); //cashReceipt.Customer = _CustomerService.All().ToList().FirstOrDefault(x => x.CustCode == cashReceipt.CustCode); //BankOperation bankOperation = new BankOperation(bankReceipt.BReceiptDate, 0.0, 0.0, 0.0, 0.0, bankReceipt.BranchCode, bankReceipt.FinYear, false, bankReceipt.bankAccode); var isAlreadySaved = _BankOperationService.All().ToList().FirstOrDefault(x => x.TrDate.ToString("MM-dd-yyyy") == bankReceipt.BReceiptDate.ToString("MM-dd-yyyy") && x.BranchCode == bankReceipt.BranchCode && x.bankAccode == bankReceipt.bankAccode); if (isAlreadySaved == null) { using (var transaction = new TransactionScope()) { try { _BankOperationService.Add(bankOperation); _BankOperationService.Save(); _BankReceiptAppService.Add(bankReceipt); _BankReceiptAppService.Save(); //insert to provision LoadDropDown.journalVoucherSave("BR", "I", bankReceipt.BReceiptNo, bankReceipt.VoucherNo, bankReceipt.FinYear, "01", bankReceipt.BranchCode, bankReceipt.BReceiptDate, bankReceipt.bankAccode, Session["UserName"].ToString()); TransactionLogService.SaveTransactionLog(_transactionLogService, "BankReceipt", "Save", bankReceipt.BReceiptNo, User.Identity.Name); CashOPVM = GetAllRemittances(bankReceipt.BReceiptDate, bankReceipt.BranchCode, bankReceipt.bankAccode); transaction.Complete(); } catch (Exception) { transaction.Dispose(); return(Json("0", JsonRequestBehavior.AllowGet)); } } return(Json(CashOPVM, JsonRequestBehavior.AllowGet)); } else { var rcecBals = GetAllRemittances(bankReceipt.BReceiptDate, bankReceipt.BranchCode, bankReceipt.bankAccode).Sum(x => x.Amount); isAlreadySaved.RecTotal = rcecBals + bankReceipt.Amount; isAlreadySaved.CloseBal = isAlreadySaved.OpenBal + isAlreadySaved.RecTotal - isAlreadySaved.PayTotal; using (var transaction = new TransactionScope()) { try { _BankOperationService.Update(isAlreadySaved); _BankReceiptAppService.Save(); _BankReceiptAppService.Add(bankReceipt); _BankReceiptAppService.Save(); var sysSet = _sysSetService.All().FirstOrDefault(); if (sysSet.CashRule == "O") { LoadDropDown.journalVoucherSave("BR", "I", bankReceipt.BReceiptNo, bankReceipt.VoucherNo, bankReceipt.FinYear, "01", bankReceipt.BranchCode, bankReceipt.BReceiptDate, bankReceipt.bankAccode, Session["UserName"].ToString()); } //insert to provision LoadDropDown.BankRecalculate(bankReceipt.BReceiptDate, Convert.ToDecimal(bankReceipt.Amount), Session["ProjCode"].ToString(), bankReceipt.BranchCode, bankReceipt.FinYear, bankReceipt.bankAccode); TransactionLogService.SaveTransactionLog(_transactionLogService, "BankReceipt", "Save", bankReceipt.BReceiptNo, User.Identity.Name); CashOPVM = GetAllRemittances(bankReceipt.BReceiptDate, bankReceipt.BranchCode, bankReceipt.bankAccode); transaction.Complete(); } catch (Exception) { transaction.Dispose(); return(Json("0", JsonRequestBehavior.AllowGet)); } } return(Json(CashOPVM, JsonRequestBehavior.AllowGet)); } } else { return(Json("0", JsonRequestBehavior.AllowGet)); } } else { return(Json("1", JsonRequestBehavior.AllowGet)); } } catch (Exception) { return(Json("0", JsonRequestBehavior.AllowGet)); } }