public static OpdFormMetaReaponseModel GetMetaData(OpdFormMetaRequestModel requestModel) { using (var dbcontext = new HMSEntities()) { var allForms = dbcontext.OPDs.ToList(); var ruleDate = DateTime.Now.Date; var patientNo = requestModel.PatientNo?.Trim(); var visitNo = 0; var dailyNo = 0; long serialNo = 0; AppOpd existedform = new AppOpd(); if (allForms.Any()) { dailyNo = dbcontext.OPDs.Count( form => EntityFunctions.TruncateTime(form.DateTime) == ruleDate && form.DoctorId == requestModel.DoctorId); serialNo = allForms.Count; if (string.IsNullOrEmpty(patientNo)) { patientNo = DateTime.Now.Year + "" + DateTime.Now.Month + "-" + DateTime.Now.Day + (dbcontext.OPDs.Count(form => EntityFunctions.TruncateTime(form.DateTime) == ruleDate) + 1) + ""; } else { visitNo = allForms.Count(form => form.PatientNo == patientNo); var tempoForm = allForms.FirstOrDefault(form => form.PatientNo == patientNo); if (tempoForm != null) { existedform = tempoForm.MaptoOpd(); } } return(new OpdFormMetaReaponseModel { DateTime = DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString(), DailyNo = ++dailyNo, PatientNo = patientNo, VisitNo = ++visitNo, SerialNo = ++serialNo, OpdForm = existedform }); } } return(new OpdFormMetaReaponseModel { DateTime = DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString(), DailyNo = 1, PatientNo = 1 + "", VisitNo = 1, SerialNo = 1, OpdForm = null }); }
public JsonResult CreateForm(AppOpd request) { var slip = OpdService.CreateUPdateNewForm(request); return(Json(slip, JsonRequestBehavior.AllowGet)); }
public static AppOpd CreateUPdateNewForm(AppOpd source) { using (var dbcontext = new HMSEntities()) { //dicount check if (source.Discount != null && source.Discount > 0) { var doc = dbcontext.AspNetUsers.FirstOrDefault(docobj => docobj.Id == source.DoctorId); if (doc != null && source.Discount > doc.Fee) { return(null); } } if (source.Mode == "cusinfo") { var patient = dbcontext.OPDs.FirstOrDefault(form => form.Id == source.Id); var allrecs = dbcontext.OPDs.Where(o => o.PatientNo == patient.PatientNo).ToList(); if (allrecs.Any()) { foreach (var dbOb in allrecs) { dbOb.Name = source.Name; dbOb.GuardianName = source.GuardianName; dbOb.Age = source.Age; dbOb.Gender = source.Gender; dbOb.CNIC = source.CNIC; dbOb.Address = source.Address; dbOb.Phone = source.Phone; dbOb.MartialStatus = source.MartialStatus; dbOb.Discount = source.Discount; dbOb.DiscountBy = source.DiscountBy; dbOb.InsuranceNo = source.InsuranceNo; dbcontext.OPDs.AddOrUpdate(dbOb); } dbcontext.SaveChanges(); return(GetOpdById(source.Id.ToString())); } } var dbObj = dbcontext.OPDs.FirstOrDefault(form => form.Id == source.Id); if (dbObj == null) { dbObj = new OPD { DateTime = DateTime.Now, Name = source.Name, DailyNo = source.DailyNo, PatientNo = source.PatientNo, VisitNo = source.VisitNo, MartialStatus = source.MartialStatus, Address = source.Address, Age = source.Age, CNIC = source.CNIC, DoctorId = source.DoctorId, Gender = source.Gender, GuardianName = source.GuardianName, Phone = source.Phone, Status = true, InsuranceNo = source.InsuranceNo, Discount = source.Discount, DiscountBy = source.DiscountBy }; dbcontext.OPDs.Add(dbObj); dbcontext.SaveChanges(); return(GetOpdById(dbObj.Id.ToString())); } else { if (source.Mode == "edit") { dbObj.DoctorId = source.DoctorId; dbObj.Name = source.Name; dbObj.GuardianName = source.GuardianName; dbObj.Age = source.Age; dbObj.Gender = source.Gender; dbObj.CNIC = source.CNIC; dbObj.Address = source.Address; dbObj.Phone = source.Phone; dbObj.MartialStatus = source.MartialStatus; dbObj.Discount = source.Discount; dbObj.DiscountBy = source.DiscountBy; dbObj.InsuranceNo = source.InsuranceNo; dbcontext.OPDs.AddOrUpdate(dbObj); dbcontext.SaveChanges(); } return(GetOpdById(dbObj.Id.ToString())); } } return(null); }