public int Insert(OperationTheatreMasterModel model) { int i = 0; using (EHMSEntities ent = new EHMSEntities()) { if (ent.OperationTheatreMasters.Where(x => x.Status == true && x.OperationDate == model.OperationDate && ( (x.OperationStartTime <= model.OperationStartTime && x.OperationEndTime >= model.OperationStartTime) || (x.OperationStartTime <= model.OperationEndTime && x.OperationEndTime >= model.OperationEndTime) ) && x.OperationRoomID == model.OperationRoomID).Any()) { return(i); } var objToSave = AutoMapper.Mapper.Map <OperationTheatreMasterModel, OperationTheatreMaster>(model); objToSave.Status = true; //objToSave.SourceID = "1"; objToSave.CreatedBy = 1; objToSave.CreatedDate = DateTime.Now; //objToSave.ValidUpto = Convert.ToDateTime(model.date); if (model.Discount != null) { objToSave.TotalCharge = model.Charge - model.Discount; } else { objToSave.TotalCharge = model.Charge; } ent.OperationTheatreMasters.Add(objToSave); ent.SaveChanges(); int k = objToSave.OperationTheatreMasterID; foreach (var item in model.PersonAllocatedList) { var objTheatreDetails = new OperationTheatreDetail(); objTheatreDetails.OperationTheatreMasterID = objToSave.OperationTheatreMasterID; objTheatreDetails.PersonAllocatedID = item.PersonAllocateId; objTheatreDetails.PersonAllocatedTypeID = item.PersonAllocatedTypeId; ent.OperationTheatreDetails.Add(objTheatreDetails); i = ent.SaveChanges(); } int BillNumberInt = Utility.GetMaxBillNumberFromDepartment("Hospital", 1); string BillNumberStr = "BL-" + BillNumberInt.ToString(); //calcuate charge amount and tax decimal ChargeFeeAndTaxTotal = (decimal)model.Charge; decimal ChargeOnly = (ChargeFeeAndTaxTotal * 100) / 105; decimal ChargeFeeTaxOnly = ChargeFeeAndTaxTotal - ChargeOnly; decimal ChargeAmountAfterDiscount = Convert.ToDecimal(0); //Calculate Discount //Check If discount or not decimal TotalDiscountAmount = Convert.ToDecimal(0); int TotalDiscountHeadId = 0; //Discount Calculation if (model.Discount > 0) { TotalDiscountAmount = (decimal)model.Discount; TotalDiscountHeadId = 369; ChargeAmountAfterDiscount = ChargeFeeAndTaxTotal - TotalDiscountAmount; } //fee amount var ObjFeeDetails = new CentralizedBillingDetail() { }; //tax amount var ObjTaxDetails = new CentralizedBillingDetail() { }; //discount amount var ObjDiscountDtls = new CentralizedBillingDetail() { }; //Payment Type only Deposit var ObjPayment = new CentralizedBillingPaymentType() { }; //master table var ObjMaster = new CentralizedBillingMaster() { }; //Insert into centralizedbillingdetails //var ObjCentralizedBillingDetails = new CentralizedBillingDetail() //{ // BillNo = BillNumberInt, // AccountHeadID = 111,//Ot Charge id from coa // Amount = ChargeOnly, // Status = true, // Times = 1 //}; //ent.CentralizedBillingDetail.Add(ObjCentralizedBillingDetails); //ObjCentralizedBillingDetails = new CentralizedBillingDetail() //{ // BillNo = BillNumberInt, // AccountHeadID = 112,//Ot Charge tax from coa // Amount = ChargeFeeTaxOnly, // Status = true, // DepartmentId = 1005, // Times = 1 //}; //ent.CentralizedBillingDetail.Add(ObjCentralizedBillingDetails); //var ObjCentralizedBillingPaymentType = new CentralizedBillingPaymentType() //{ // BillNo = BillNumberInt, // PaymentTypeID = 1,//Cash or bank from coa // PaymentSubTypeID = 1, // Amount = ChargeAmountAfterDiscount, // Status = true //}; //ent.CentralizedBillingPaymentType.Add(ObjCentralizedBillingPaymentType); //Add Details in centralized billing master //var ObjCentralizedBillingMaster = new CentralizedBillingMaster() //{ // BillNo = BillNumberInt, // TotalBillAmount = ChargeFeeAndTaxTotal, // Narration1 = "Narration", // Narration2 = "", // DepartmentName = "Ot", // SubDepartmentId = 1, // PatientLogId = (int)objToSave.SourceID, // PatientId = (int)objToSave.SourceID, // TotalDiscountID = TotalDiscountHeadId, // TotalDiscountAmount = TotalDiscountAmount, // //JVNumber=1 // JVStatus = false, // CreatedDepartmentId = Hospital.Utility.GetCurrentUserDepartmentId(), // CreatedBy = Hospital.Utility.GetCurrentLoginUserId(), // CreatedDate = DateTime.Now, // Remarks = "OT", // Status = true, // BranchId = 1, // IsHandover = false, // ReceiptId = 0, // ReturnedAmount = Convert.ToDecimal(0), // TenderAmount = Convert.ToDecimal(0) //}; //ent.CentralizedBillingMaster.Add(ObjCentralizedBillingMaster); //objtoSaveCentralizedBilling = new CentralizedBilling() //{ // AccountHeadId = 22, // Amount = (decimal)model.Discount, // AmountDate = DateTime.Now, // PaymentType = "Cash", // Narration1 = "OT Fee Discount", // Narration2 = "Discount", // DepartmentName = "OT", // SubDepartmentId = Utility.GetCurrentUserDepartmentId(), // BillNumber = BillNumberStr, // LedgerMasterId = ent.GL_LedgerMaster.Where(x => x.SourceID == objToSave.SourceID).SingleOrDefault().LedgerMasterID, // PatientLogId = (int)objToSave.SourceID, // PatientId = (int)objToSave.SourceID, // JVStatus = false, // CreatedBy = Utility.GetCurrentLoginUserId(), // CreatedDate = DateTime.Now, // Remarks = "OT", // Status = true, // ItemDiscountPercentage = 0 //}; //ent.CentralizedBilling.Add(objtoSaveCentralizedBilling); //update Bill Number //SetupHospitalBillNumber billNumber = (from x in ent.SetupHospitalBillNumber // where x.DepartmentName == "Hospital" && x.FiscalYearId == 1 // select x).First(); //billNumber.BillNumber = billNumber.BillNumber + 1; ent.SaveChanges(); return(k); } }
public int Insert(DepositMasterModel model) { using (EHMSEntities ent = new EHMSEntities()) { //Insert into CA Table //If User already exist, dont insert //check if user has alreary accountheadcode in opdmaster //Get Currnet receipt number int UserReceiptNumber = Utility.GetMaxBillNumberFromDepartment("Deposit", 1); int UserAccountHeadIdInt = 0; var userAccountHeadId = ent.OpdMasters.Where(x => x.OpdID == model.PatientId).FirstOrDefault(); if (userAccountHeadId.AccountHeadId != null) { UserAccountHeadIdInt = (int)userAccountHeadId.AccountHeadId; } var ObjGlAccSubGroup = new GL_AccSubGroups(); if (UserAccountHeadIdInt > 0) { } else { ObjGlAccSubGroup = new GL_AccSubGroups() { AccGroupID = 2, AccSubGroupName = HospitalManagementSystem.Utility.GetPatientNameWithIdFromOpd(model.PatientId), ParentID = 1258, HierarchyCode = "2.1253.1257.1258", HeadLevel = 5, AccountCode = null, IsLeafLevel = true, Status = true, CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, Remarks = "Deposit", BranchId = 1 }; ent.GL_AccSubGroups.Add(ObjGlAccSubGroup); ent.SaveChanges(); UserAccountHeadIdInt = ObjGlAccSubGroup.AccSubGruupID; } //Update in opdmaster table OpdMaster AccountHeadId = (from x in ent.OpdMasters where x.OpdID == model.PatientId select x).First(); AccountHeadId.AccountHeadId = UserAccountHeadIdInt; var SaveDepositMaster = AutoMapper.Mapper.Map <DepositMasterModel, PatientDepositMaster>(model); SaveDepositMaster.CreatedBy = Utility.GetCurrentLoginUserId(); SaveDepositMaster.CreatedDate = DateTime.Now; SaveDepositMaster.CreatedDepartmentId = Utility.GetCurrentUserDepartmentId(); SaveDepositMaster.Status = true; SaveDepositMaster.SwipeCardId = "NN009"; SaveDepositMaster.ReceiptID = UserReceiptNumber; SaveDepositMaster.SwipeCardDetail = "ScardDetails"; ent.PatientDepositMasters.Add(SaveDepositMaster); //Get Currrent Receipt Number int ReceiptNumberInt = Utility.GetMaxBillNumberFromDepartment("Hospital", 1); var ObjCentralizedBillingMaster = new CentralizedBillingMaster() { BillNo = ReceiptNumberInt, BillDate = DateTime.Now, TotalBillAmount = model.DepositedAmount, Narration1 = "Deposit", Narration2 = "", DepartmentName = "CB", SubDepartmentId = 1, PatientLogId = HospitalManagementSystem.Utility.getPatientLogID(model.PatientId), PatientId = model.PatientId, CreatedDepartmentId = HospitalManagementSystem.Utility.GetCurrentUserDepartmentId(), CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, Remarks = "Deposit", Status = true, BranchId = 1, JVStatus = false, ReceiptId = Utility.GetMaxDepositeNumber(), IsHandover = false, ReturnedAmount = Convert.ToDecimal(0), TenderAmount = Convert.ToDecimal(0), TotalDiscountAmount = Convert.ToDecimal(0), TotalDiscountID = 0, PayableType = 1//general }; ent.CentralizedBillingMasters.Add(ObjCentralizedBillingMaster); var ObjCentralizedBillingDetails = new CentralizedBillingDetail() { BillNo = ReceiptNumberInt, AccountHeadID = 1258, //deposit AccountSubHeadID = UserAccountHeadIdInt, //patientId Amount = model.DepositedAmount, Status = true, DepartmentId = 1003//Ipd Department }; ent.CentralizedBillingDetails.Add(ObjCentralizedBillingDetails); var ObjCentralizedBillingPaymentType = new CentralizedBillingPaymentType() { BillNo = ReceiptNumberInt, PaymentTypeID = 372, Amount = model.DepositedAmount, Status = true, PaymentSubTypeID = Convert.ToInt32(0) }; ent.CentralizedBillingPaymentTypes.Add(ObjCentralizedBillingPaymentType); //update Bill Number SetupHospitalBillNumber billNumber = (from x in ent.SetupHospitalBillNumbers where x.DepartmentName == "Hospital" && x.FiscalYearId == 1 select x).First(); billNumber.BillNumber = billNumber.BillNumber + 1; ent.SaveChanges(); //update Bill Number SetupHospitalBillNumber billNumberDeposit = (from x in ent.SetupHospitalBillNumbers where x.DepartmentName == "Deposit" && x.FiscalYearId == 1 select x).First(); billNumberDeposit.BillNumber = billNumberDeposit.BillNumber + 1; ent.SaveChanges(); return(SaveDepositMaster.PatientDepositMasterId); } }
public int Insert(EmergecyMasterModel model) { int i = 0; using (EHMSEntities ent = new EHMSEntities()) { int maxemerid; var query = ent.EmergencyMasters.Where(m => m.EmergencyMasterId == ent.EmergencyMasters.Max(n => n.EmergencyMasterId)).SingleOrDefault(); if (query == null) { maxemerid = 1; } else { maxemerid = query.EmergencyMasterId + 1; } var objToSaveOpd = new OpdMaster() { PatientTitle = model.ObjOpdMaster.PatientTitle, FirstName = model.ObjOpdMaster.FirstName, MiddleName = model.ObjOpdMaster.MiddleName, LastName = model.ObjOpdMaster.LastName, Sex = model.ObjOpdMaster.Sex, AgeYear = model.ObjOpdMaster.AgeYear, MaritalStatus = model.ObjOpdMaster.MaritalStatus, BloodGroup = model.ObjOpdMaster.BloodGroup, RegistrationDate = DateTime.Now, RegistrationSource = "Emer", CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), DepartmentId = Utility.GetCurrentUserDepartmentId(), DepartmentPatientId = maxemerid, CreatedDate = DateTime.Now, RegistrationMode = "Visit", Address = model.ObjOpdMaster.Address, Status = true, PaidOnPaid = true, CountryID = model.ObjOpdMaster.CountryID }; ent.OpdMasters.Add(objToSaveOpd); ent.SaveChanges(); var objToSave = AutoMapper.Mapper.Map <EmergecyMasterModel, EmergencyMaster>(model); try { objToSave.OpdMasterId = maxemerid; objToSave.EmergencyNumber = maxemerid; objToSave.SerialNumber = maxemerid; objToSave.CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(); objToSave.Status = 1; objToSave.CreatedDate = DateTime.Today; objToSave.OutcomeTypeId = 1; objToSave.OpdMasterId = objToSaveOpd.OpdID; ent.EmergencyMasters.Add(objToSave); ent.SaveChanges(); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } var objtosavedetails = AutoMapper.Mapper.Map <EmergencyTriageModel, EmergencyTriage>(model.EmergencyTriageModel); objtosavedetails.EmergencyMasterId = objToSave.EmergencyMasterId; objtosavedetails.sourceTypeId = 1; objtosavedetails.SourceId = 1; objtosavedetails.TriageLevel = 1; ent.EmergencyTriages.Add(objtosavedetails); //feedetails var objTosaveFeedetails = AutoMapper.Mapper.Map <EmergencyFeeDetailsModel, EmergencyFeeDetail>(model.EmergencyFeeDetailsModel); // decimal? aa = objTosaveFeedetails.DoctorFee; objTosaveFeedetails.EmergencyMasterId = objToSave.EmergencyMasterId; objTosaveFeedetails.FeeDate = objToSave.CreatedDate; objTosaveFeedetails.OtherDiscountPercentage = 0; objTosaveFeedetails.DoctorFee = 0; objTosaveFeedetails.RegistrationFee = model.EmergencyFeeDetailsModel.RegistrationFee; objTosaveFeedetails.TotalAmount = model.EmergencyFeeDetailsModel.RegistrationFee; ent.EmergencyFeeDetails.Add(objTosaveFeedetails); //Legder&Transaction string LedgerName = "A/C " + model.ObjOpdMaster.FirstName + " " + (model.ObjOpdMaster.MiddleName + " " ?? string.Empty) + model.ObjOpdMaster.LastName; var objtoInsertLedger = new GL_LedgerMaster() { AccountGroupID = 1, AccountSubGroupID = 1, AccountTypeID = 1, CreatedBy = Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, DepartmentID = 1001, LedgerName = LedgerName, SourceID = objToSaveOpd.OpdID, LedgerSourceType = "Patient", Status = 1 }; ent.GL_LedgerMaster.Add(objtoInsertLedger); ent.SaveChanges(); var objToSavePatientLogMaster = new PatientLogMaster() { PatientId = objToSaveOpd.OpdID, RegistrationDate = Convert.ToDateTime(objToSave.CreatedDate), DepartmentId = 1001, Status = true }; ent.PatientLogMasters.Add(objToSavePatientLogMaster); ent.SaveChanges(); //Patient logmaster max id int?intPatientLogID = objToSavePatientLogMaster.OpdMasterLogId; //if (intPatientLogID == null) //{ // intPatientLogID = 1; //} //else //{ // intPatientLogID = intPatientLogID; //} int BillNumberInt = Utility.GetMaxBillNumberFromDepartment("Hospital", 1); string BillNumberStr = "BL-" + BillNumberInt.ToString(); //Insert into new table //Emergency Ticket var ObjCentralizedBillingDetails = new CentralizedBillingDetail() { BillNo = BillNumberInt, AccountHeadID = 357,//Emergency Ticket Amount = Convert.ToDecimal(404), Status = true, DepartmentId = 1001, Times = 1 }; ent.CentralizedBillingDetails.Add(ObjCentralizedBillingDetails); var ObjCentralizedBillingDetailstax = new CentralizedBillingDetail() { BillNo = BillNumberInt, AccountHeadID = 1261,//Emergency Ticket Amount = Convert.ToDecimal(20.2), Status = true, DepartmentId = 1001, Times = 1 }; ent.CentralizedBillingDetails.Add(ObjCentralizedBillingDetailstax); var ObjCentralizedBillingPaymentType = new CentralizedBillingPaymentType() { BillNo = BillNumberInt, PaymentTypeID = 372,//Cash or bank from coa PaymentSubTypeID = 0, Amount = model.EmergencyFeeDetailsModel.RegistrationFee, Status = true }; ent.CentralizedBillingPaymentTypes.Add(ObjCentralizedBillingPaymentType); var ObjCentralizedBillingMaster = new CentralizedBillingMaster() { BillNo = BillNumberInt, BillDate = DateTime.Today, TotalBillAmount = model.EmergencyFeeDetailsModel.RegistrationFee, TotalDiscountID = 0, TotalDiscountAmount = 0, Narration1 = "Narraion", Narration2 = "", DepartmentName = "Emergency", SubDepartmentId = 1, PatientLogId = (int)intPatientLogID, PatientId = objToSaveOpd.OpdID, //JVNumber=1 JVStatus = false, CreatedDepartmentId = HospitalManagementSystem.Utility.GetCurrentUserDepartmentId(), CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, Remarks = "Emergency", Status = true, BranchId = 1, IsHandover = false, ReceiptId = 0, ReturnedAmount = Convert.ToDecimal(0), TenderAmount = Convert.ToDecimal(0) }; ent.CentralizedBillingMasters.Add(ObjCentralizedBillingMaster); var objtoSaveCentralizedBilling = new CentralizedBilling() { AccountHeadId = 19, Amount = model.EmergencyFeeDetailsModel.RegistrationFee, AmountDate = DateTime.Now, PaymentType = "Cash", Narration1 = "Fee Details", Narration2 = "Emergecy Fee", DepartmentName = "Emergency", SubDepartmentId = Utility.GetCurrentUserDepartmentId(), BillNumber = BillNumberStr, LedgerMasterId = objtoInsertLedger.LedgerMasterID, PatientLogId = (int)intPatientLogID, PatientId = objToSaveOpd.OpdID, JVStatus = false, CreatedBy = Utility.GetCurrentLoginUserId(), CreatedDepartmentId = Utility.GetCurrentUserDepartmentId(), CreatedDate = DateTime.Now, Remarks = "Emergency", PaidOnPaid = false, Status = true }; ent.CentralizedBillings.Add(objtoSaveCentralizedBilling); var objToInsertTran = new GL_Transaction() { Amount = model.EmergencyFeeDetailsModel.RegistrationFee, DepartmentID = 1001, Dr_Cr = "Cr", LedgerMasterID = objtoInsertLedger.LedgerMasterID, Narration1 = "Emergency Fee", RefNo = maxemerid, TransactionDate = DateTime.Now, TransactionTypeID = 1, FeeTypeId = 19,//emergency fee CreatedBy = HospitalManagementSystem.Utility.GetCurrentLoginUserId(), CreatedDate = DateTime.Now, }; ent.GL_Transaction.Add(objToInsertTran); //update Bill Number SetupHospitalBillNumber billNumber = (from x in ent.SetupHospitalBillNumbers where x.DepartmentName == "Hospital" && x.FiscalYearId == 1 select x).First(); billNumber.BillNumber = billNumber.BillNumber + 1; //update vouchernumber //SetupVoucherNumber vouchernumber = (from x in ent.SetupVoucherNumber // where x.DepartmentID == 1 && x.FiscalYear == 1 // select x).First(); //vouchernumber.VoucherNo = vouchernumber.VoucherNo + 1; i = ent.SaveChanges(); } return(i); }