public ActionResult AcceptedMedicalDetails(int Id = 0) { ViewBag.BenefitId = _hrUnitOfWork.MedicalRepository.FillDDLBenefit(User.Identity.GetLanguage()); ViewBag.Beneficiary = _hrUnitOfWork.MedicalRepository.GetAllBeneficiary(); ViewBag.Currency = _hrUnitOfWork.LookUpRepository.GetCurrencyCode(); ViewBag.Providers = _hrUnitOfWork.MedicalRepository.GetAllProvider(); ViewBag.RejectReason = _hrUnitOfWork.LookUpRepository.GetLookUpCodes("MedRejectReason", Language).Select(a => new { id = a.CodeId, name = a.Title }); ViewBag.Employees = _hrUnitOfWork.PeopleRepository.GetActiveEmployees(CompanyId, Language); ViewBag.CancelReasons = _hrUnitOfWork.LookUpRepository.GetLookUpCodes("MedCancelReason", Language).Select(a => new { id = a.CodeId, name = a.Title }); if (Id == 0) { return(View(new BenefitRequestFollowUp())); } BenefitRequestFollowUp request = _hrUnitOfWork.MedicalRepository.GetRequest(Id, Language); int BenficiaryId = request.BeneficiaryId == null ? 0 : request.BeneficiaryId.Value; ViewBag.Services = _hrUnitOfWork.MedicalRepository.GetAllservice(request.EmpId, request.BenefitId, BenficiaryId); return(View(request)); }
public ActionResult FollowupDetails(int Id = 0) { ViewBag.BenefitId = _hrUnitOfWork.MedicalRepository.FillDDLBenefit(User.Identity.GetLanguage()); ViewBag.Beneficiary = _hrUnitOfWork.MedicalRepository.GetAllBeneficiary(); ViewBag.Currency = _hrUnitOfWork.LookUpRepository.GetCurrencyCode(); ViewBag.Providers = _hrUnitOfWork.MedicalRepository.GetAllProvider(); ViewBag.RejectReason = _hrUnitOfWork.LookUpRepository.GetLookUpCodes("MedRejectReason", Language).Select(a => new { id = a.CodeId, name = a.Title }); BenefitRequestFollowUp request = _hrUnitOfWork.MedicalRepository.GetRequest(Id, Language); if (request == null) { request = new BenefitRequestFollowUp(); } int BenficiaryId = request.BeneficiaryId == null ? 0 : request.BeneficiaryId.Value; ViewBag.Services = _hrUnitOfWork.MedicalRepository.GetAllservice(request.EmpId, request.BenefitId, BenficiaryId); ViewBag.Employees = _hrUnitOfWork.EmployeeRepository.GetActiveEmployees(Language, request.EmpId, CompanyId).Select(a => new { id = a.Id, name = a.Employee, PicUrl = a.PicUrl, Icon = a.EmpStatus }).ToList(); return(View(request)); }
public BenefitRequestFollowUp GetRequest(int requestId, string culture) { BenefitRequestFollowUp Request = (from req in context.BenefitRequests where req.Id == requestId join p in context.People on req.EmpId equals p.Id select new BenefitRequestFollowUp() { Id = req.Id, RequestDate = req.RequestDate, EmpId = req.EmpId, Employee = HrContext.TrlsName(p.Title + " " + p.FirstName + " " + p.Familyname, culture), ApprovalStatus = req.ApprovalStatus, RejectReason = req.RejectReason, RejectDesc = req.RejectDesc, CancelReason = req.CancelReason, CancelDesc = req.CancelDesc, Attachments = HrContext.GetAttachments("MedicalRequests", req.Id), CreatedTime = req.CreatedTime, CreatedUser = req.CreatedUser, ModifiedTime = req.ModifiedTime, ModifiedUser = req.ModifiedUser, Description = req.Description, CompanyCost = req.CompanyCost, Curr = req.Curr, EmpCost = req.EmpCost, CurrRate = req.CurrRate, ServCost = req.ServCost, ServiceId = req.ServiceId, ProviderId = req.ProviderId, BeneficiaryId = req.BeneficiaryId, ExpiryDate = req.ExpiryDate, ServEndDate = req.ServEndDate, ServStartDate = req.ServStartDate, IssueDate = req.IssueDate, BenefitPlanId = req.BenefitPlanId, BenefitId = req.BenefitId, PaidBy = req.PaidBy }).FirstOrDefault(); return(Request); }
public ActionResult SaveBenefitSettlement(BenefitRequestFollowUp model, OptionsViewModel moreInfo) { List <Error> errors = new List <Error>(); if (ModelState.IsValid) { if (ServerValidationEnabled) { errors = _hrUnitOfWork.CompanyRepository.CheckForm(new CheckParm { CompanyId = CompanyId, ObjectName = "acceptedMedical", TableName = "BenefitRequests", Columns = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))), ParentColumn = "CompanyId", Culture = Language }); if (errors.Count() > 0) { foreach (var e in errors) { foreach (var errorMsg in e.errors) { ModelState.AddModelError(errorMsg.field, errorMsg.message); } } return(Json(Models.Utils.ParseFormErrors(ModelState))); } } } else { return(Json(Models.Utils.ParseFormErrors(ModelState))); } BenefitRequest request = _hrUnitOfWork.MedicalRepository.Get(model.Id); byte version; byte.TryParse(Request.Form["version"], out version); string message = "OK"; var benefitplanId = _hrUnitOfWork.MedicalRepository.GetBenefitPlanId(model.ParentId, model.EmpId, model.BeneficiaryId); if (request == null) { /// New request = new BenefitRequest(); AutoMapperParm parms = new AutoMapperParm() { Source = model, Destination = request, Version = version, ObjectName = "acceptedMedical", Options = moreInfo, Transtype = TransType.Insert }; AutoMapper(parms); request.ApprovalStatus = 6; request.CreatedUser = UserName; request.CreatedTime = DateTime.Now; request.RequestDate = DateTime.Now; request.BenefitPlanId = benefitplanId; request.CompanyId = CompanyId; if (model.IssueDate != null) { var Subperiod = _hrUnitOfWork.MedicalRepository.GetMedicalPeriodId(benefitplanId, (DateTime)model.IssueDate); request.SubPeriodId = Subperiod; } _hrUnitOfWork.MedicalRepository.Add(request); } else if (request != null) { /// Edit AutoMapperParm parms = new AutoMapperParm() { Source = model, Destination = request, Version = version, ObjectName = "MedicalRequestsForm", Options = moreInfo, Transtype = TransType.Update }; AutoMapper(parms); request.ApprovalStatus = model.ApprovalStatus; request.ModifiedUser = UserName; request.ModifiedTime = DateTime.Now; request.RequestDate = model.RequestDate; if (request.SubPeriodId == null) { var coverageAmount = _hrUnitOfWork.Repository <BenefitPlan>().Where(a => a.Id == request.BenefitPlanId).Select(a => a.CoverAmount).FirstOrDefault(); var coverAmount = coverageAmount == null ? 0 : coverageAmount; } else { } _hrUnitOfWork.MedicalRepository.Attach(request); _hrUnitOfWork.MedicalRepository.Entry(request).State = System.Data.Entity.EntityState.Modified; } var Errors = SaveChanges(Language); if (Errors.Count > 0) { message = Errors.First().errors.First().message; return(Json(message)); } return(Json(message)); }
public ActionResult SaveFollowupDetails(BenefitRequestFollowUp model, OptionsViewModel moreInfo) { List <Error> Errors = new List <Error>(); int periodId = 0; BenefitRequest request = _hrUnitOfWork.MedicalRepository.Get(model.Id); if (ModelState.IsValid) { if (ServerValidationEnabled) { Errors = _hrUnitOfWork.LeaveRepository.CheckForm(new CheckParm { CompanyId = CompanyId, ObjectName = "MedicalReqFollowUpForm", TableName = "MedicalRequests", Columns = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))), ParentColumn = "CompanyId", Culture = Language }); if (Errors.Count() > 0) { foreach (var e in Errors) { foreach (var errorMsg in e.errors) { ModelState.AddModelError(errorMsg.field, errorMsg.message); } } return(Json(Models.Utils.ParseFormErrors(ModelState))); } } } else { return(Json(Models.Utils.ParseFormErrors(ModelState))); } if (model.IssueDate != null) { var period = _hrUnitOfWork.MedicalRepository.GetMedicalPeriodId(request.BenefitPlanId, (DateTime)model.IssueDate); //if (period != 0) //{ periodId = period; //} //else //{ // ModelState.AddModelError("IssueDate", MsgUtils.Instance.Trls("Periodnotdefined")); // return Json(Models.Utils.ParseFormErrors(ModelState)); //} } AutoMapper(new Models.AutoMapperParm { Destination = request, Source = model, ObjectName = "MedicalReqFollowUpForm", Options = moreInfo, Transtype = TransType.Update }); if (request.ApprovalStatus != 9) { request.RejectDesc = null; request.RejectReason = null; } request.ModifiedTime = DateTime.Now; request.ModifiedUser = UserName; if (periodId != 0) { request.SubPeriodId = periodId; } if (request.ApprovalStatus == 5 || request.ApprovalStatus == 9) //Accepted or Rejected { string msg = AddWFTrans(request, null, null); if (msg.Length > 0) { return(Json(msg)); } } _hrUnitOfWork.MedicalRepository.Attach(request); _hrUnitOfWork.MedicalRepository.Entry(request).State = EntityState.Modified; Errors = SaveChanges(Language); if (Errors.Count > 0) { var message = Errors.First().errors.First().message; return(Json(message)); } return(Json("OK")); }