public int CreateNewJv(JVMasterModel model) { int i = 0; using (EHMSEntities ent = new EHMSEntities()) { int fiscalyearid = Utility.GetCurrentFiscalYearID(); int VoucherNumberInt = HospitalManagementSystem.Utility.getMaxVoucherNumber(model.JvType, fiscalyearid); string VoucherNumber = model.JvType + "-" + Utility.GetCurrentFiscalYearNameInBS() + "-" + VoucherNumberInt.ToString(); var JVMasterObj = new JVMaster() { AccountNumber = "ac001", BillNumber = "BN-001", CreatedBy = Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, FiscalYearId = Utility.GetCurrentFiscalYearID(), JvNumber = VoucherNumber, Narration1 = model.ObjAddMoreParticularsJVModel.Narration, Narration2 = model.ObjAddMoreParticularsJVModel.Narration, Status = false, JvType = model.JvType, TotalAmount = model.ObjAddMoreParticularsJVModel.CrAmountTotal, TransactionDate = DateTime.Now, VerifiedBy = Utility.GetCurrentLoginUserId(), FormName = "JV" }; ent.JVMasters.Add(JVMasterObj); //JVMasterId Id int?JvMasterId = ent.JVMasters.Max(u => (int?)u.JvMasterId); if (JvMasterId == null) { JvMasterId = 1; } else { JvMasterId = JvMasterId + 1; } foreach (var item in model.AddMoreParticularsJVModelList) { decimal totalDrAmount = 0; decimal totalCrAmount = 0; string DrOrCrValue = string.Empty; if (item.DrOrCr == 1) { totalDrAmount = item.DrAmount; DrOrCrValue = "Dr"; } else { totalCrAmount = item.CrAmount; DrOrCrValue = "Cr"; } string AccountHeadName = ""; if (item.SubParticulars > 0) { AccountHeadName = HospitalManagementSystem.Utility.GetFeeTypeNameFromId(item.Particulars) + "-" + HospitalManagementSystem.Utility.GetFeeTypeNameFromId(item.SubParticulars); } else { AccountHeadName = HospitalManagementSystem.Utility.GetFeeTypeNameFromId(item.Particulars); } var jvdetailObj = new JVDetail() { BillNumber = "BL-001", CrAmount = totalCrAmount, CreatedBy = Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, DrAmount = totalDrAmount, FeeTypeId = item.Particulars, FeeTypeSubId = item.SubParticulars, FeeTypeName = AccountHeadName, JVMasterId = JVMasterObj.JvMasterId, LinkToDr = 1, Narration = model.ObjAddMoreParticularsJVModel.Narration, PaymentType = "Cash", Status = false, TransactionDate = DateTime.Now, DrOrCr = DrOrCrValue }; ent.JVDetails.Add(jvdetailObj); } SetupVoucherNumber vouchernumber = (from x in ent.SetupVoucherNumbers where x.JvType == model.JvType && x.FiscalYear == fiscalyearid select x).First(); vouchernumber.VoucherNo = vouchernumber.VoucherNo + 1; ent.SaveChanges(); return(ent.JVMasters.Max(item => item.JvMasterId)); } }
public void Insert(StockItemPurchaseModel model) { EHMSEntities ent = new EHMSEntities(); var obj = AutoMapper.Mapper.Map <StockItemPurchaseModel, StockItemPurchase>(model); obj.Status = true; obj.CreatedBy = 1; obj.CreatedDate = DateTime.Now; ent.StockItemPurchases.Add(obj); ent.SaveChanges(); int id = ent.StockItemPurchases.Where(x => x.ItemPurchaseId == ent.StockItemPurchases.Max(y => y.ItemPurchaseId)).SingleOrDefault().ItemPurchaseId; foreach (var item in model.StockItemEntryList) { StockItemPurchaseDetail PurchaseDetail = new StockItemPurchaseDetail(); var StockItemMaster = ent.StockItemMasters.Where(x => x.StockItemEntryId == item.StockItemEntryId).SingleOrDefault(); var purchaseorder = (from po in ent.StockPurchaseOrders join pd in ent.StockPurchaseOrderDetails on po.PurchaseOrderId equals pd.PurchaseOrderId where po.PurchaseOrderNo == model.ItemOrderId && pd.ItemId == item.StockItemEntryId select pd).SingleOrDefault(); PurchaseDetail.ItemPurchaseId = id; PurchaseDetail.StockItemEntryId = item.StockItemEntryId; PurchaseDetail.StockUnitId = ent.SetupStockItemEntries.Where(x => x.StockItemEntryId == item.StockItemEntryId).SingleOrDefault().StockUnitId; PurchaseDetail.Quantity = item.Quantity; PurchaseDetail.Rate = item.Rate; PurchaseDetail.TotalAmount = item.Quantity * item.Rate; PurchaseDetail.BatchNo = item.BatchNo; PurchaseDetail.ExpiryDate = item.ExpiryDate; PurchaseDetail.SupplierId = model.StockSupplierId; PurchaseDetail.WarrentyDate = item.WarrentyDate; PurchaseDetail.ManufacturedDate = item.ManufacturedDate; if (item.QuotQty == item.Quantity) { purchaseorder.Status = false; ent.Entry(purchaseorder).State = System.Data.EntityState.Modified; } //else //{ // purchaseorder.Quantity = purchaseorder.Quantity - item.Quantity; //} StockItemMaster.Quantity = StockItemMaster.Quantity + item.Quantity; ent.Entry(StockItemMaster).State = System.Data.EntityState.Modified; ent.StockItemPurchaseDetails.Add(PurchaseDetail); } ent.SaveChanges(); //Automatic post jv int VoucherNumberInt = HospitalManagementSystem.Utility.getMaxVoucherNumber("PV", 7); string VoucherNumber = "PV" + "-" + Utility.GetCurrentFiscalYearNameInBS() + "-" + VoucherNumberInt.ToString(); var objJVMaster = new JVMaster() { AccountNumber = "1", BillNumber = "123", VerifiedBy = 45, TransactionDate = DateTime.Today, TotalAmount = model.TotalAmount, Status = false, Narration1 = "From Stock", Narration2 = "From Stock", JvType = "PV", CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Today, FiscalYearId = HospitalManagementSystem.Utility.GetCurrentFiscalYearID(), JvNumber = VoucherNumber, FormName = "Stock" }; ent.JVMasters.Add(objJVMaster); ent.SaveChanges(); int PaymentMode = model.PaymentType;//Cash or bank, credit (paryt name) //Dr Amount string AccountHeadName = ""; string AccountHeadNameParty = ""; int FeeTypeIdInt = Convert.ToInt32(0); int FeeTypeSubIDInt = Convert.ToInt32(0); if (PaymentMode == 372)//credit { AccountHeadNameParty = HospitalManagementSystem.Utility.GetFeeTypeNameFromId(1831) + "-" + HospitalManagementSystem.Utility.GetFeeTypeNameFromId(1832); AccountHeadName = HospitalManagementSystem.Utility.GetFeeTypeNameFromId(1833); FeeTypeIdInt = 1831; FeeTypeSubIDInt = 1832; } else if (PaymentMode == 373)//cash { AccountHeadNameParty = "CASH"; AccountHeadName = HospitalManagementSystem.Utility.GetFeeTypeNameFromId(1833); FeeTypeIdInt = 372; FeeTypeSubIDInt = 0; } else//bank { AccountHeadNameParty = "BANK"; AccountHeadName = HospitalManagementSystem.Utility.GetFeeTypeNameFromId(1833); FeeTypeSubIDInt = 0; } var ObjJvDetails = new JVDetail() { BillNumber = "", CrAmount = Convert.ToDecimal(0), DrAmount = model.TotalAmount, CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Today, DrOrCr = "Dr", FeeTypeId = 1833, FeeTypeName = AccountHeadName, FeeTypeSubId = 0, JVMasterId = objJVMaster.JvMasterId, Narration = "Post From stock", TransactionDate = DateTime.Today, }; ent.JVDetails.Add(ObjJvDetails); //CR Amount var ObjJvDetailsCr = new JVDetail() { BillNumber = "", CrAmount = model.TotalAmount, DrAmount = Convert.ToDecimal(0), CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Today, DrOrCr = "Cr", FeeTypeId = FeeTypeIdInt,//Party name (suppliers) FeeTypeName = AccountHeadNameParty, FeeTypeSubId = FeeTypeSubIDInt, JVMasterId = objJVMaster.JvMasterId, Narration = "Post From stock", TransactionDate = DateTime.Today, }; ent.JVDetails.Add(ObjJvDetailsCr); SetupVoucherNumber vouchernumber = (from x in ent.SetupVoucherNumbers where x.JvType == "PV" && x.FiscalYear == 7 select x).First(); vouchernumber.VoucherNo = vouchernumber.VoucherNo + 1; ent.SaveChanges(); }
public int SaveComissionJV(JVMasterModel model, string jvDate, string jvEndDate, string Narration) { int i = 0; int fiscalyearid = Utility.GetCurrentFiscalYearID(); DateTime JVTransactionDate = Convert.ToDateTime(jvDate); DateTime JvTransactionEndDate = Convert.ToDateTime(jvEndDate); int VoucherNumberInt = HospitalManagementSystem.Utility.getMaxVoucherNumber(model.JvType, fiscalyearid); string VoucherNumber = model.JvType + "-" + Utility.GetCurrentFiscalYearNameInBS() + "-" + VoucherNumberInt.ToString(); using (EHMSEntities ent = new EHMSEntities()) { decimal totalDrAmount = 0; decimal totalCrAmount = 0; foreach (var item in model.BillingDetailViewModelList) { if (item.Type == "DR") { totalDrAmount += item.Amount; } else { totalCrAmount += item.Amount; } } var JVMasterObj = new JVMaster() { AccountNumber = "ac001", BillNumber = "BN-001", CreatedBy = Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, FiscalYearId = Utility.GetCurrentFiscalYearID(), JvNumber = VoucherNumber, Narration1 = Narration, Narration2 = Narration, Status = false, JvType = model.JvType, TotalAmount = totalDrAmount, TransactionDate = DateTime.Now, VerifiedBy = Utility.GetCurrentLoginUserId(), FormName = "Comission" }; ent.JVMasters.Add(JVMasterObj); int?JvMasterId = ent.JVMasters.Max(u => (int?)u.JvMasterId); if (JvMasterId == null) { JvMasterId = 1; } else { JvMasterId = JvMasterId + 1; } var JVDetails = new JVDetail(); foreach (var item in model.BillingDetailViewModelList) { totalDrAmount = 0; totalCrAmount = 0; string DrOrCrValue = string.Empty; if (item.Type == "DR") { totalDrAmount = item.Amount; DrOrCrValue = "Dr"; } else { totalCrAmount = item.Amount; DrOrCrValue = "Cr"; } if (totalCrAmount > 0 || totalDrAmount > 0) { JVDetails = new JVDetail() { BillNumber = "BL001", CrAmount = totalCrAmount, DrAmount = totalDrAmount, CreatedBy = Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, FeeTypeId = item.AccountHeadID, FeeTypeSubId = item.AccountSubHeadID, FeeTypeName = item.HeadName, JVMasterId = JVMasterObj.JvMasterId, TransactionDate = DateTime.Now, PaymentType = "", Status = false, DrOrCr = DrOrCrValue }; ent.JVDetails.Add(JVDetails); } } var ComDetail = (from x in ent.CommissionDetaislByTypes where (x.CommissionDate.Year >= JVTransactionDate.Year && x.CommissionDate.Month >= JVTransactionDate.Month && x.CommissionDate.Day >= JVTransactionDate.Day && (x.CommissionDate.Year <= JvTransactionEndDate.Year && x.CommissionDate.Month <= JvTransactionEndDate.Month && x.CommissionDate.Day <= JvTransactionEndDate.Day)) && x.JvStatus == false select x); foreach (CommissionDetaislByType cb in ComDetail) { cb.JvStatus = true; } SetupVoucherNumber vouchernumber = (from x in ent.SetupVoucherNumbers where x.JvType == model.JvType && x.FiscalYear == fiscalyearid select x).First(); vouchernumber.VoucherNo = vouchernumber.VoucherNo + 1; i = ent.SaveChanges(); return(i); } }