internal bool UpdateIllustrationStatus(UpdateStatusViewModel model) { IllustrationDetail illustration = _context.IllustrationDetails.First(x => x.IllustrationUniqueReference == model.UniqueReferenceId); if (illustration.Status.ToLower() == "chased" & (model.Status == "Accepted" || model.Status == "Deleted")) { illustration.Status = model.Status; } if (illustration.Status.ToLower() == "created" & (model.Status == "Deleted" || model.Status == "Chased" || model.Status == "Accepted")) { illustration.Status = model.Status; } if (illustration.Status.ToLower() == "accepted" & model.Status == "Deleted") { illustration.Status = model.Status; } illustration.Comment = model.Comment; illustration.ReferredBy = model.ReferredBy; bool isSaved = false; try { _context.SaveChanges(); isSaved = true; } catch { } return(isSaved); }
internal IllustrationDetailViewModel GetIllustrationByUniqueReferenceId(string uniqueReferenceID) { /* * Get illustration from unique reference id from db * Arguments:- * Unique Reference ID * Return:- * Illustration DetailViewModel */ IllustrationDetail dbIllustration = _context.IllustrationDetails.Include(x => x.IllustrationProposedPortfolio).FirstOrDefault(x => x.IllustrationUniqueReference == uniqueReferenceID); //map db entity to view model ProposedPortfolio. Investment count is 0 after Mapping IllustrationDetailViewModel result = _mapper.Map <IllustrationDetailViewModel>(dbIllustration); result.ProposedPortfolio = new Insignis.Asset.Management.Tools.Sales.SCurveOutput(); foreach (var item in dbIllustration.IllustrationProposedPortfolio) { Insignis.Asset.Management.Tools.Sales.SCurveOutputRow row = new Insignis.Asset.Management.Tools.Sales.SCurveOutputRow(); Insignis.Asset.Management.Clients.Helper.InvestmentTerm term = new Insignis.Asset.Management.Clients.Helper.InvestmentTerm(); row.AnnualInterest = item.AnnualInterest; row.DepositSize = item.DepositSize; row.InstitutionName = item.InstitutionName; row.Rate = item.Rate; row.InvestmentTerm = term; row.InvestmentTerm.TermText = item.InvestmentTerm; row.InstitutionShortName = item.InstitutionShortName; result.ProposedPortfolio.ProposedInvestments.Add(row); } CalculateInterest(result); return(result); }
internal bool SaveIllustraionAsync(IllustrationDetailViewModel model) { //check for existence bool exits = _context.IllustrationDetails.Any(x => x.IllustrationUniqueReference == model.IllustrationUniqueReference); var illustrationDetail = new IllustrationDetail(); if (exits) { illustrationDetail = _context.IllustrationDetails.FirstOrDefault(x => x.IllustrationUniqueReference == model.IllustrationUniqueReference); //illustrationDetail.AdviserName = model.AdviserName; illustrationDetail.ClientName = model.ClientName; illustrationDetail.ClientType = model.ClientType; illustrationDetail.Currency = model.Currency; illustrationDetail.EasyAccess = Convert.ToDouble(model.EasyAccess); illustrationDetail.GenerateDate = model.GenerateDate; illustrationDetail.NineMonths = Convert.ToDouble(model.NineMonths); illustrationDetail.OneMonth = Convert.ToDouble(model.OneMonth); illustrationDetail.OneYear = Convert.ToDouble(model.OneYear); illustrationDetail.PartnerEmail = model.PartnerEmail; illustrationDetail.PartnerName = model.PartnerName; illustrationDetail.PartnerOrganisation = model.PartnerOrganisation; illustrationDetail.ReferredBy = model.ReferredBy; illustrationDetail.SixMonths = Convert.ToDouble(model.SixMonths); illustrationDetail.Status = model.Status; illustrationDetail.ThreeMonths = Convert.ToDouble(model.ThreeMonths); illustrationDetail.ThreeYearsPlus = Convert.ToDouble(model.ThreeYearsPlus); illustrationDetail.TotalDeposit = Convert.ToDouble(model.TotalDeposit); illustrationDetail.TwoYears = Convert.ToDouble(model.TwoYears); illustrationDetail.Status = "Created"; //Save interests illustrationDetail.AnnualGrossInterestEarned = model.ProposedPortfolio.AnnualGrossInterestEarned; illustrationDetail.AnnualNetInterestEarned = model.ProposedPortfolio.AnnualNetInterestEarned; illustrationDetail.GrossAverageYield = model.ProposedPortfolio.GrossAverageYield; illustrationDetail.NetAverageYield = model.ProposedPortfolio.GrossAverageYield; illustrationDetail.IllustrationProposedPortfolio = new List <ProposedPortfolio>(); foreach (var item in model.ProposedPortfolio.ProposedInvestments) { ProposedPortfolio folio = new ProposedPortfolio(); folio.InvestmentTerm = item.InvestmentTerm.TermText; folio.AnnualInterest = item.AnnualInterest; folio.DepositSize = item.DepositSize; folio.IllustrationID = model.Id; folio.InstitutionID = item.InstitutionID; folio.InstitutionName = item.InstitutionName; folio.InstitutionShortName = item.InstitutionShortName; folio.Rate = item.Rate; illustrationDetail.IllustrationProposedPortfolio.Add(folio); } } else { illustrationDetail = _mapper.Map <IllustrationDetailViewModel, IllustrationDetail>(model); illustrationDetail.Status = "Created"; //Save interests illustrationDetail.AnnualGrossInterestEarned = model.ProposedPortfolio.AnnualGrossInterestEarned; illustrationDetail.AnnualNetInterestEarned = model.ProposedPortfolio.AnnualNetInterestEarned; illustrationDetail.GrossAverageYield = model.ProposedPortfolio.GrossAverageYield; illustrationDetail.NetAverageYield = model.ProposedPortfolio.GrossAverageYield; illustrationDetail.IllustrationProposedPortfolio = new List <ProposedPortfolio>(); foreach (var item in model.ProposedPortfolio.ProposedInvestments) { ProposedPortfolio folio = new ProposedPortfolio(); folio.InvestmentTerm = item.InvestmentTerm.TermText; folio.AnnualInterest = item.AnnualInterest; folio.DepositSize = item.DepositSize; folio.IllustrationID = model.Id; folio.InstitutionID = item.InstitutionID; folio.InstitutionName = item.InstitutionName; folio.InstitutionShortName = item.InstitutionShortName; folio.Rate = item.Rate; illustrationDetail.IllustrationProposedPortfolio.Add(folio); } _context.IllustrationDetails.Add(illustrationDetail); } _context.SaveChanges(); var IsSave = true; return(IsSave); }