public static void SyncSemiStaticData() { DatabaseInit._LogHandler.WriteLog("SyncSemiStaticData()", LogSeverity.Information, LogCategory.DataAccess); using (var httpHandler = new HttpClientHandler()) { httpHandler.UseDefaultCredentials = true; using (var httpClient = new HttpClient(httpHandler)) { httpClient.BaseAddress = new Uri(Properties.Settings.Default.ServicesHostUrl); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); using (var consoleRepository = new ConsoleRepository()) { DatabaseInit.SyncBrokers(httpClient, consoleRepository); DatabaseInit.SyncNonLondonBrokers(httpClient, consoleRepository); DatabaseInit.SyncCOBs(httpClient, consoleRepository); DatabaseInit.SyncOffices(httpClient, consoleRepository); DatabaseInit.SyncUnderwriters(httpClient, consoleRepository); DatabaseInit.SyncRiskCodes(httpClient, consoleRepository); DatabaseInit.UpdateSipAddresses(consoleRepository); DatabaseInit.UpdateEmailAddresses(consoleRepository); DatabaseInit.UpdateUserPictures(consoleRepository); consoleRepository.SaveChanges(); } } } }
public string CreateQuoteSheet(CreateQuoteSheetDto dto, out Submission submission) { // TODO: use the correct quote sheet... var quoteSheetTemplateId = dto.QuoteSheetTemplateId; dto.QuoteSheetTemplateUrl = this.ConsoleRepository.Query<QuoteTemplate>() .FirstOrDefault(qt => qt.Id == dto.QuoteSheetTemplateId).RdlPath; dto.QuoteSheetTemplateName = this.ConsoleRepository.Query<QuoteTemplate>() .FirstOrDefault(qt => qt.Id == dto.QuoteSheetTemplateId).Name; submission = this.SubmissionModule.GetSubmissionById(dto.SubmissionId); //todo this is done to clear previous context. has to be fixed once softdelet is fixed. using (IConsoleRepository consoleRepository = new ConsoleRepository()) { if (submission == null) throw new KeyNotFoundException(string.Format(this.NotFoundMessage, dto.SubmissionId)); consoleRepository.Attach(submission); var currentUser = consoleRepository.Query<User>() .FirstOrDefault(u => u.DomainLogon == this.HttpContext.CurrentUser.Identity.Name); if (currentUser == null) throw new ApplicationException("Current user could not be found"); var quotesheet = new QuoteSheet { Title = string.Format(this.QuoteSheetTitle, submission.Title, submission.InsuredName, DateTime.Now), IssuedBy = currentUser, IssuedById = currentUser.Id, IssuedDate = DateTime.Now, ObjectStore = "Underwriting" }; var content = this.QuoteSheetData.CreateQuoteSheetPdf(dto); quotesheet.Guid = this.QuoteSheetData.SaveQuoteSheetToDMS(quotesheet, content, submission); var versions = (from version in submission.Options.SelectMany(o => o.OptionVersions) from option in dto.OptionList where version.OptionId == option.OptionId from versionNumber in option.OptionVersionNumberList where version.VersionNumber == versionNumber select version).ToList(); quotesheet.OptionVersions = versions; foreach (var quote in versions.SelectMany(ov => ov.Quotes)) { quote.OptionVersion.IsLocked = true; quote.SubmissionStatus = "QUOTED"; } consoleRepository.Add(quotesheet); consoleRepository.SaveChanges(); return string.Format(this.QuoteSheetUrl, ConfigurationManager.AppSettings["UWDmsFileDownloadURL"], quotesheet.Guid); } }
public void Audit(string source, string reference, string title, string description) { //todo: need to work on dispose using (IConsoleRepository consoleRepository = new ConsoleRepository()) { consoleRepository.Add(new AuditTrail { Source = source, Reference = reference, Title = title, Description = description }); consoleRepository.SaveChanges(); } }
public static void Setup(TestContext t) { using (IConsoleRepository _rep = new ConsoleRepository()) { Team teamA = new Team() { Title = "Team A", DefaultPolicyType = "MARINE", QuoteExpiryDaysDefault = 30 }; _rep.Add<Team>(teamA); Team teamB = new Team() { Title = "Team B", DefaultPolicyType = "MARINE", QuoteExpiryDaysDefault = 30 }; _rep.Add<Team>(teamB); COB aa = new COB() { Id = "AA", Narrative = "AA" }; COB bb = new COB() { Id = "BB", Narrative = "BB" }; COB xx = new COB() { Id = "XX", Narrative = "XX" }; COB yy = new COB() { Id = "YY", Narrative = "YY" }; COB zz = new COB() { Id = "ZZ", Narrative = "ZZ" }; _rep.Add<COB>(aa); _rep.Add<COB>(bb); _rep.Add<COB>(xx); _rep.Add<COB>(yy); _rep.Add<COB>(zz); teamA.RelatedCOBs = new List<COB>(); teamA.RelatedCOBs.Add(aa); teamA.RelatedCOBs.Add(bb); teamA.RelatedCOBs.Add(xx); teamB.RelatedCOBs = new List<COB>(); teamB.RelatedCOBs.Add(xx); teamB.RelatedCOBs.Add(yy); teamB.RelatedCOBs.Add(zz); User user1 = new User() { DomainLogon = @"talbot\user1", UnderwriterCode = "AED" }; _rep.Add<User>(user1); _rep.SaveChanges(); newUserId = user1.Id; TeamAId = teamA.Id; TeamBId = teamB.Id; } context = new Mock<ICurrentHttpContext>(); var user = @"talbotdev\MurrayE"; context.Setup(h => h.CurrentUser).Returns(new GenericPrincipal(new GenericIdentity(user), null)); context.Setup(h => h.Context).Returns(MvcMockHelpers.FakeHttpContextWithSession()); }
public static void Setup(TestContext t) { using (IConsoleRepository rep = new ConsoleRepository()) { _totalMarketWording = rep.Query<MarketWording>(mw => true).Count(); _totalTermsNConditionWording = rep.Query<TermsNConditionWording>(mw => true).Count(); _totalSubjectToClauseWording = rep.Query<SubjectToClauseWording>(mw => true).Count(); var lon = rep.Query<Office>(off => off.Id == "LON").First(); var team = new Team { Title = "TestTeam", QuoteExpiryDaysDefault = 30, CreatedBy = "InitialSetup", CreatedOn = DateTime.Now, ModifiedBy = "InitialSetup", ModifiedOn = DateTime.Now, SubmissionTypeId = null, DefaultPolicyType = "MARINE", RelatedOffices = new List<Office> { lon }, TeamOfficeSettings = new List<TeamOfficeSetting> { new TeamOfficeSetting { Office = lon, MarketWordingSettings = new List<MarketWordingSetting>(), TermsNConditionWordingSettings = new List<TermsNConditionWordingSetting>(), SubjectToClauseWordingSettings = new List<SubjectToClauseWordingSetting>() } } }; rep.Add(team); rep.SaveChanges(); } _httpContext = new Mock<ICurrentHttpContext>(); const string user = @"talbotdev\MurrayE"; _httpContext.Setup(h => h.CurrentUser).Returns(new GenericPrincipal(new GenericIdentity(user), null)); _httpContext.Setup(h => h.Context).Returns(MvcMockHelpers.FakeHttpContextWithSession()); }
public string CreateQuoteSheet(CreateQuoteSheetDto dto, out Submission submission) { // TODO: use the correct quote sheet... var quoteSheetTemplateId = dto.QuoteSheetTemplateId; dto.QuoteSheetTemplateUrl = this.ConsoleRepository.Query<QuoteTemplate>() .FirstOrDefault(qt => qt.Id == dto.QuoteSheetTemplateId).RdlPath; dto.QuoteSheetTemplateName = this.ConsoleRepository.Query<QuoteTemplate>() .FirstOrDefault(qt => qt.Id == dto.QuoteSheetTemplateId).Name; submission = this.SubmissionModule.GetSubmissionById(dto.SubmissionId); //todo this is done to clear previous context. has to be fixed once softdelet is fixed. using (IConsoleRepository consoleRepository = new ConsoleRepository()) { if (submission == null) throw new KeyNotFoundException(string.Format(this.NotFoundMessage, dto.SubmissionId)); consoleRepository.Attach(submission); var currentUser = consoleRepository.Query<User>() .FirstOrDefault(u => u.DomainLogon == this.HttpContext.CurrentUser.Identity.Name); if (currentUser == null) throw new ApplicationException("Current user could not be found"); var versions = (from version in submission.Options.SelectMany(o => o.OptionVersions) from option in dto.OptionList where version.OptionId == option.OptionId from versionNumber in option.OptionVersionNumberList where version.VersionNumber == versionNumber select version).ToList(); var isDeclinature = false; var submSt = submission.Options.Select(s => s) .SelectMany(o => o.OptionVersions) .SelectMany(ov => ov.Quotes) .Where(q => q.IsSubscribeMaster).Select(s => s.SubmissionStatus).Distinct().ToList(); if ((submSt.Count == 1) && (submSt.FirstOrDefault().Equals(Settings.Default["DeclinatureSubmissionStatus"].ToString()))) isDeclinature = true; var quotesheet = new QuoteSheet {//Todo: S2Q Title = string.Format(this.QuoteSheetTitle, submission.Title, versions.SelectMany(ov => ov.Quotes).First().InsuredName, DateTime.Now), IssuedBy = currentUser, IssuedById = currentUser.Id, IssuedDate = DateTime.Now, ObjectStore = Settings.Default["DMSObjectStore"].ToString(), DocumentClass = Settings.Default["DMSDocumentClass"].ToString(), DocumentType = isDeclinature ? Settings.Default["DeclinatureDocType"].ToString() : Settings.Default["QuoteDocType"].ToString() }; var content = this.QuoteSheetData.CreateQuoteSheetPdf(dto, isDeclinature); quotesheet.Guid = this.QuoteSheetData.SaveQuoteSheetToDMS(quotesheet, content, submission, isDeclinature); quotesheet.OptionVersions = versions; if (!isDeclinature) { foreach (var quote in versions.SelectMany(ov => ov.Quotes)) { if (!quote.SubmissionStatus.Equals(Settings.Default["DeclinatureSubmissionStatus"].ToString())) { quote.OptionVersion.IsLocked = true; quote.SubmissionStatus = "QUOTED"; } } } consoleRepository.Add(quotesheet); consoleRepository.SaveChanges(); return string.Format(this.QuoteSheetUrl, ConfigurationManager.AppSettings["UWDmsFileDownloadURL"], quotesheet.Guid); } }