public dynamic Delete(ReceiptVoucher model) { try { if (!AuthenticationModel.IsAllowed("Delete", Core.Constants.Constant.MenuName.ReceiptVoucher, Core.Constants.Constant.MenuGroupName.Transaction)) { Dictionary <string, string> Errors = new Dictionary <string, string>(); Errors.Add("Generic", "You are Not Allowed to Delete Record"); return(Json(new { Errors }, JsonRequestBehavior.AllowGet)); } var data = _receiptVoucherService.GetObjectById(model.Id); model = _receiptVoucherService.SoftDeleteObject(data, _receiptVoucherDetailService); } catch (Exception ex) { LOG.Error("Delete Failed", ex); Dictionary <string, string> Errors = new Dictionary <string, string>(); Errors.Add("Generic", "Error " + ex); return(Json(new { Errors }, JsonRequestBehavior.AllowGet)); } return(Json(new { model.Errors })); }
public RetailSalesInvoice UnpaidObject(RetailSalesInvoice retailSalesInvoice, IReceiptVoucherService _receiptVoucherService, IReceiptVoucherDetailService _receiptVoucherDetailService, ICashBankService _cashBankService, IReceivableService _receivableService, ICashMutationService _cashMutationService, IGeneralLedgerJournalService _generalLedgerJournalService, IAccountService _accountService, IClosingService _closingService) { if (_validator.ValidUnpaidObject(retailSalesInvoice)) { Receivable receivable = _receivableService.GetObjectBySource(Core.Constants.Constant.ReceivableSource.RetailSalesInvoice, retailSalesInvoice.Id); IList <ReceiptVoucher> receiptVouchers = _receiptVoucherService.GetObjectsByCashBankId((int)retailSalesInvoice.CashBankId.GetValueOrDefault()); foreach (var receiptVoucher in receiptVouchers) { if (receiptVoucher.ContactId == retailSalesInvoice.ContactId) { receiptVoucher.Errors = new Dictionary <string, string>(); _receiptVoucherService.UnconfirmObject(receiptVoucher, _receiptVoucherDetailService, _cashBankService, _receivableService, _cashMutationService, _generalLedgerJournalService, _accountService, _closingService); IList <ReceiptVoucherDetail> receiptVoucherDetails = _receiptVoucherDetailService.GetObjectsByReceiptVoucherId(receiptVoucher.Id); foreach (var receiptVoucherDetail in receiptVoucherDetails) { _receiptVoucherDetailService.SoftDeleteObject(receiptVoucherDetail); } _receiptVoucherService.SoftDeleteObject(receiptVoucher, _receiptVoucherDetailService); } } retailSalesInvoice.AmountPaid = 0; retailSalesInvoice.IsFullPayment = false; retailSalesInvoice = _repository.UnpaidObject(retailSalesInvoice); } return(retailSalesInvoice); }