public bool UpdateClientPolocyBudget(AddPolicyBudget budget) { var budgets = _commonRepository.GetAllPolicyBudgetsForClientPolicyYear(budget.ClientId, budget.PolicyId, budget.Year); budgets.ToList().ForEach(b => { switch (b.BudgetMonth.ToLower()) { case "jan": b.BudgetValue = budget.JanBudget; break; case "feb": b.BudgetValue = budget.FebBudget; break; case "mar": b.BudgetValue = budget.MarchBudget; break; case "apr": b.BudgetValue = budget.AprilBudget; break; case "may": b.BudgetValue = budget.MayBudget; break; case "jun": b.BudgetValue = budget.JunBudget; break; case "jul": b.BudgetValue = budget.JulyBudget; break; case "aug": b.BudgetValue = budget.AugBudget; break; case "sep": b.BudgetValue = budget.SepBudget; break; case "oct": b.BudgetValue = budget.OctBudget; break; case "nov": b.BudgetValue = budget.NovBudget; break; case "dec": b.BudgetValue = budget.DecBudget; break; } _commonRepository.UpdateClientPolocyBudget(b); }); return(true); }
public bool AddClientPolocyBudget(AddPolicyBudget budget) { var cpDetails = _commonRepository.GetAllClientPolicies().Where(c => c.ClientId == budget.ClientId).OrderByDescending(cp => cp.Id); var pDetails = _policyRepository.GetById(budget.PolicyId); var carrierProduct = _commonRepository.GetAllCorporateXProducts().FirstOrDefault(cp => cp.ProductId == pDetails.ProductId); cpDetails.ToList().ForEach(cp => { var pDetailsChild = _policyRepository.GetById(cp.PolicieId); var carrierProductChild = _commonRepository.GetAllCorporateXProducts() .FirstOrDefault(cpp => cpp.ProductId == pDetailsChild.ProductId); if (carrierProductChild != null && carrierProduct.CorporateProductId == carrierProductChild.CorporateProductId && pDetailsChild.PolicyNumber == pDetails.PolicyNumber && pDetailsChild.CarId == pDetails.CarId) { budget.PolicyId = pDetailsChild.Id; } }); foreach (var month in DateUtil.GetMonths()) { var entity = new ClientPolicyBudget() { ClientId = budget.ClientId, PolicyId = budget.PolicyId, ClientPolicyId = budget.ClientPolicyId, IsActive = true, AddUser = LoginUserDetails.GetWindowsLoginUserName(), AddDate = DateUtil.GetCurrentDate(), BudgetYear = budget.Year, BudgetMonth = month }; switch (entity.BudgetMonth.ToLower()) { case "jan": entity.BudgetValue = budget.JanBudget; break; case "feb": entity.BudgetValue = budget.FebBudget; break; case "mar": entity.BudgetValue = budget.MarchBudget; break; case "apr": entity.BudgetValue = budget.AprilBudget; break; case "may": entity.BudgetValue = budget.MayBudget; break; case "jun": entity.BudgetValue = budget.JunBudget; break; case "jul": entity.BudgetValue = budget.JulyBudget; break; case "aug": entity.BudgetValue = budget.AugBudget; break; case "sep": entity.BudgetValue = budget.SepBudget; break; case "oct": entity.BudgetValue = budget.OctBudget; break; case "nov": entity.BudgetValue = budget.NovBudget; break; case "dec": entity.BudgetValue = budget.DecBudget; break; } _commonRepository.AddClientPolocyBudget(entity); } return(true); }
public ActionResult AddBudget(int policyId, int clientId, int ClientPolicyId, int year, int productId) { var carrierProductChild1 = _commonService.GetAllCProducts(); ViewBag.CProducts = carrierProductChild1; var data = new List <AddPolicyBudget>(); var allClients = _clinetService.GetAllClients().OrderBy(c => c.Name); ViewBag.Clients = allClients; var years = DateUtil.GetPreviousYearsSelectList(5); ViewBag.Years = years;// new SelectList(years, "Id", "Name"); if (productId == 0 || year == 0) { return(View(data)); } //var client = _clinetService.GetById(clientId); //var cpDetails = _commonService.GetAllClientPolicies().Where(c => c.ClientId == clientId).OrderByDescending(cp => cp.Id); //var pDetails = _policyService.GetById(policyId); //var carrierProduct = _commonService.GetAllCorporateXProducts().FirstOrDefault(cp => cp.ProductId == pDetails.ProductId); //cpDetails.ToList().ForEach(cp => //{ // var pDetailsChild = _policyService.GetById(cp.PolicieId); // var carrierProductChild = _commonService.GetAllCorporateXProducts() // .FirstOrDefault(cpp => cpp.ProductId == pDetailsChild.ProductId); // if (carrierProductChild != null && carrierProduct.CorporateProductId == carrierProductChild.CorporateProductId // && pDetailsChild.PolicyNumber == pDetails.PolicyNumber // && pDetailsChild.CarId == pDetails.CarId) // { // policyId = pDetailsChild.Id; // } //}); //var policy = _policyService.GetById(policyId); //var coverage = _commonService.GetCoverageById(policy.CoverageId); //var product = _commonService.GetProductById(policy.ProductId); //var yearsSelectItems = new List<SelectListItem>(); //var years = DateUtil.GetPreviousYearsSelectList(5); //ViewBag.Years = new SelectList(years, "Id", "Name"); //var policyBudget = _policyService.GetAllPolicyBudgets(policyId); //if (year > 0) //{ // policyBudget = policyBudget.Where(pb => pb.Year == year).ToList(); //} //else //{ // year = years.FirstOrDefault().Id; // policyBudget = policyBudget.Where(pb => pb.Year == year).ToList(); //} //var model = new AddPolicyBudget() //{ // ClientPolicyId = ClientPolicyId, // ClientId = client.Id, // ClientName = client?.Name, // PolicyId = policyId, // PolicyNumber = policy.PolicyNumber, // Coverage = coverage.Name, // Product = product.Name, // Year = year //}; //if (policyBudget != null && policyBudget.Count > 0) //{ // model.JanBudget = policyBudget[0].JanBudget; // model.FebBudget = policyBudget[0].FebBudget; // model.MarchBudget = policyBudget[0].MarchBudget; // model.AprilBudget = policyBudget[0].AprilBudget; // model.MayBudget = policyBudget[0].MayBudget; // model.JunBudget = policyBudget[0].JunBudget; // model.JulyBudget = policyBudget[0].JulyBudget; // model.AugBudget = policyBudget[0].AugBudget; // model.SepBudget = policyBudget[0].SepBudget; // model.OctBudget = policyBudget[0].OctBudget; // model.NovBudget = policyBudget[0].NovBudget; // model.DecBudget = policyBudget[0].DecBudget; // model.TotalBudget = model.JanBudget + model.FebBudget + model.MarchBudget + model.AprilBudget + model.MayBudget + model.JunBudget + model.JulyBudget + model.AugBudget + model.SepBudget + model.OctBudget + model.NovBudget + model.DecBudget; //} //else //{ // model.TotalBudget = 0.00M; // model.JanBudget = model.FebBudget = model.MarchBudget = model.AprilBudget = model.MayBudget = model.JunBudget = model.JulyBudget = model.AugBudget = model.SepBudget = model.OctBudget = model.NovBudget = model.DecBudget = 0.00M; //} //return View(model); var corporateProducts = _commonService.GetAllCorporateXProducts() .Where(cp => cp.CorporateProductId == productId).Select(cp => cp.ProductId).ToList(); var policies = _policyService.GetAllPolicies().Where(p => corporateProducts.Contains(p.ProductId)).ToList(); policies.ForEach(p => { var cp = _commonService.GetClientPoliciesByPolicyId(p.Id); p.ClientId = cp.ClientId; }); if (clientId > 0) { policies = policies.Where(p => p.ClientId == clientId).ToList(); } policies.ForEach(p => { var coverage = _commonService.GetCoverageById(p.CoverageId); var car = _carrierService.GetById(p.CarId); var product = _commonService.GetProductById(p.ProductId); var clientDetails = _clinetService.GetById(p.ClientId); var carrierProductChild = _commonService.GetAllCorporateXProducts() .FirstOrDefault(cpp => cpp.ProductId == product.Id); if (coverage == null || car == null || product == null || carrierProductChild == null) { return; } var policyBudget = _policyService.GetAllPolicyBudgets(p.Id); if (year > 0) { policyBudget = policyBudget.Where(pb => pb.Year == year).ToList(); } if (data.Any(d => d.PolicyNumber == p.PolicyNumber && d.ClientId == p.ClientId && d.CarId == p.CarId && d.CoverageId == p.CoverageId && d.CProductId == carrierProductChild.Id )) { return; } var model = new AddPolicyBudget() { ClientPolicyId = 0, ClientId = p.ClientId, ClientName = clientDetails.Name, PolicyId = p.Id, PolicyNumber = p.PolicyNumber, CoverageId = coverage.Id, Coverage = coverage.Name, ProductId = product.Id, Product = product.Name, CProductId = carrierProductChild.Id, Year = year, CarId = car.Id, CarName = car.Name }; if (policyBudget != null && policyBudget.Count > 0) { model.JanBudget = policyBudget[0].JanBudget; model.FebBudget = policyBudget[0].FebBudget; model.MarchBudget = policyBudget[0].MarchBudget; model.AprilBudget = policyBudget[0].AprilBudget; model.MayBudget = policyBudget[0].MayBudget; model.JunBudget = policyBudget[0].JunBudget; model.JulyBudget = policyBudget[0].JulyBudget; model.AugBudget = policyBudget[0].AugBudget; model.SepBudget = policyBudget[0].SepBudget; model.OctBudget = policyBudget[0].OctBudget; model.NovBudget = policyBudget[0].NovBudget; model.DecBudget = policyBudget[0].DecBudget; model.TotalBudget = model.JanBudget + model.FebBudget + model.MarchBudget + model.AprilBudget + model.MayBudget + model.JunBudget + model.JulyBudget + model.AugBudget + model.SepBudget + model.OctBudget + model.NovBudget + model.DecBudget; } else { model.TotalBudget = 0.00M; model.JanBudget = model.FebBudget = model.MarchBudget = model.AprilBudget = model.MayBudget = model.JunBudget = model.JulyBudget = model.AugBudget = model.SepBudget = model.OctBudget = model.NovBudget = model.DecBudget = 0.00M; } data.Add(model); }); //var clients = new List<ClientModel>(); //var client = _clinetService.GetById(clientId); //clients.Add(client); //clients.ToList().ForEach(cli => //{ // var cpDetails = _commonService.GetAllClientPolicies().Where(c => c.ClientId == cli.Id).OrderByDescending(cp => cp.Id); // cpDetails.ToList().ForEach(cp1 => // { // // var pDetails = _policyService.GetById(cp1.PolicieId); // // var carrierProduct = _commonService.GetAllCorporateXProducts().FirstOrDefault(cp => cp.ProductId == pDetails.ProductId); // // var pDetailsChild = _policyService.GetById(cp1.PolicieId); // //if (carrierProductChild != null && carrierProduct.CorporateProductId == carrierProductChild.CorporateProductId // //&& pDetailsChild.PolicyNumber == pDetails.PolicyNumber // //&& pDetailsChild.CarId == pDetails.CarId) // //{ // // policyId = pDetailsChild.Id; // //} // var policy = _policyService.GetById(cp1.PolicieId); // var coverage = _commonService.GetCoverageById(policy.CoverageId); // var car = _carrierService.GetById(policy.CarId); // var product = _commonService.GetProductById(policy.ProductId); // var carrierProductChild = _commonService.GetAllCorporateXProducts() // .FirstOrDefault(cpp => cpp.ProductId == product.Id); // if (policy == null || coverage == null || car == null || product == null || carrierProductChild==null) // return; // var policyBudget = _policyService.GetAllPolicyBudgets(policy.Id); // if (year > 0) // { // policyBudget = policyBudget.Where(pb => pb.Year == year).ToList(); // } // if (data.Any(d => d.PolicyNumber == policy.PolicyNumber // && d.ClientId == cli.Id // && d.CarId == policy.CarId // && d.CoverageId == policy.CoverageId // && d.CProductId == carrierProductChild.Id // )) // return; // var model = new AddPolicyBudget() // { // ClientPolicyId = cp1.Id, // ClientId = cli.Id, // ClientName = cli?.Name, // PolicyId = policy.Id, // PolicyNumber = policy.PolicyNumber, // CoverageId=coverage.Id, // Coverage = coverage.Name, // ProductId=product.Id, // Product = product.Name, // CProductId= carrierProductChild.Id, // Year = year, // CarId= car.Id, // CarName= car.Name // }; // if (policyBudget != null && policyBudget.Count > 0) // { // model.JanBudget = policyBudget[0].JanBudget; // model.FebBudget = policyBudget[0].FebBudget; // model.MarchBudget = policyBudget[0].MarchBudget; // model.AprilBudget = policyBudget[0].AprilBudget; // model.MayBudget = policyBudget[0].MayBudget; // model.JunBudget = policyBudget[0].JunBudget; // model.JulyBudget = policyBudget[0].JulyBudget; // model.AugBudget = policyBudget[0].AugBudget; // model.SepBudget = policyBudget[0].SepBudget; // model.OctBudget = policyBudget[0].OctBudget; // model.NovBudget = policyBudget[0].NovBudget; // model.DecBudget = policyBudget[0].DecBudget; // model.TotalBudget = model.JanBudget + model.FebBudget + model.MarchBudget + model.AprilBudget + model.MayBudget + model.JunBudget + model.JulyBudget + model.AugBudget + model.SepBudget + model.OctBudget + model.NovBudget + model.DecBudget; // } // else // { // model.TotalBudget = 0.00M; // model.JanBudget = model.FebBudget = model.MarchBudget = model.AprilBudget = model.MayBudget = model.JunBudget = model.JulyBudget = model.AugBudget = model.SepBudget = model.OctBudget = model.NovBudget = model.DecBudget = 0.00M; // } // data.Add(model); // }); //}); return(View(data)); }