public int Update(ExpBankVoucher model, int userId) { try { using (TransactionScope transaction = new TransactionScope()) { using (_context) { #region Transaction_Informaiton_Update var objVoucher = (from p in _context.EXP_BankVoucher where p.BVID == model.BVID select p).FirstOrDefault(); objVoucher.RefBVNo = model.RefBVNo; objVoucher.BVDate = DalCommon.SetDate(model.BVDate); objVoucher.BVType = model.BVType; objVoucher.BankID = model.BankID; objVoucher.BranchID = model.BranchID; objVoucher.ACName = model.ACName; objVoucher.ACNo = model.ACNo; objVoucher.CIID = model.CIID; #endregion #region Update voucher Items if (model.EXPBankVoucherDtl != null) { foreach (var item in model.EXPBankVoucherDtl) { var checkVoucherItem = (from i in _context.EXP_BankVoucherDtl where i.BVDTLID == item.BVDTLID select i).Any(); #region New_Item_Insertion if (!checkVoucherItem) { EXP_BankVoucherDtl objItem = new EXP_BankVoucherDtl(); objItem.BVID = model.BVID; objItem.TransSL = item.TransSL; objItem.Narration = item.Narration; objItem.TransHead = item.TransHead; objItem.BVCRAmt = item.BVCRAmt; objItem.BVDRAmt = item.BVDRAmt; if (item.CurrencyName != null) { objItem.Currency = DalCommon.GetCurrencyID(item.CurrencyName); } if (item.ExchangeCurrencyName != null) { objItem.ExchangeCurrency = DalCommon.GetCurrencyID(item.ExchangeCurrencyName); } objItem.ExchangeRate = item.ExchangeRate; objItem.ExchangeAmount = item.ExchangeAmount; objItem.CIID = item.CIID; objItem.SetOn = DateTime.Now; objItem.SetBy = userId; _context.EXP_BankVoucherDtl.Add(objItem); } #endregion #region Existing_Item_Update else { var objItem = (from i in _context.EXP_BankVoucherDtl where i.BVDTLID == item.BVDTLID select i).FirstOrDefault(); objItem.BVID = model.BVID; objItem.TransSL = item.TransSL; objItem.Narration = item.Narration; objItem.TransHead = item.TransHead; objItem.BVCRAmt = item.BVCRAmt; objItem.BVDRAmt = item.BVDRAmt; if (item.CurrencyName != null) { objItem.Currency = DalCommon.GetCurrencyID(item.CurrencyName); } if (item.ExchangeCurrencyName != null) { objItem.ExchangeCurrency = DalCommon.GetCurrencyID(item.ExchangeCurrencyName); } objItem.ExchangeRate = item.ExchangeRate; objItem.ExchangeAmount = item.ExchangeAmount; objItem.CIID = item.CIID; objItem.ModifiedOn = DateTime.Now; objItem.ModifiedBy = userId; } #endregion } } #endregion _context.SaveChanges(); } transaction.Complete(); } return(1); } catch (Exception e) { return(0); } }
public long Save(ExpBankVoucher model, int userId, string pageUrl) { long CurrentBVID = 0; using (TransactionScope transaction = new TransactionScope()) { try { using (_context) { var AutoBVNo = DalCommon.GetPreDefineNextCodeByUrl(pageUrl); //Random r = new Random(); //var AutoBVNo = r.Next(); if (AutoBVNo != null) { #region New_Voucher_Insert EXP_BankVoucher objVoucher = new EXP_BankVoucher(); objVoucher.BVNo = AutoBVNo.ToString(); objVoucher.RefBVNo = model.RefBVNo; objVoucher.BVDate = DalCommon.SetDate(model.BVDate); objVoucher.BVType = model.BVType; objVoucher.BankID = model.BankID; objVoucher.BranchID = model.BranchID; objVoucher.ACName = model.ACName; objVoucher.ACNo = model.ACNo; objVoucher.Remarks = model.Remarks; objVoucher.RecordStatus = "NCF"; objVoucher.SetBy = userId; objVoucher.SetOn = DateTime.Now; _context.EXP_BankVoucher.Add(objVoucher); _context.SaveChanges(); CurrentBVID = objVoucher.BVID; #endregion } #region Item Insert if (model.EXPBankVoucherDtl != null) { foreach (var item in model.EXPBankVoucherDtl) { EXP_BankVoucherDtl objItem = new EXP_BankVoucherDtl(); objItem.BVID = CurrentBVID; objItem.TransSL = item.TransSL; objItem.Narration = item.Narration; objItem.TransHead = item.TransHead; objItem.BVCRAmt = item.BVCRAmt; objItem.BVDRAmt = item.BVDRAmt; if (item.CurrencyName != null) { objItem.Currency = DalCommon.GetCurrencyID(item.CurrencyName); } if (item.ExchangeCurrencyName != null) { objItem.ExchangeCurrency = DalCommon.GetCurrencyID(item.ExchangeCurrencyName); } objItem.ExchangeRate = item.ExchangeRate; objItem.ExchangeAmount = item.ExchangeAmount; objItem.CIID = item.CIID; objItem.SetOn = DateTime.Now; objItem.SetBy = userId; _context.EXP_BankVoucherDtl.Add(objItem); //_context.SaveChanges(); } } #endregion _context.SaveChanges(); } transaction.Complete(); } catch (Exception e) { CurrentBVID = 0; return(CurrentBVID); } } return(CurrentBVID); }