/// <summary> /// Finds the add cost quality topic. /// </summary> /// <param name="list">The list.</param> /// <param name="dataserviceProvider">The dataservice provider.</param> /// <param name="topicCategoryName">Name of the topic category.</param> /// <param name="topicName">Name of the topic.</param> /// <param name="selectedMeasures">The selected measures.</param> public static void FindAddCostQualityTopic( List <CostQualityTopic> list, IDomainSessionFactoryProvider dataserviceProvider, string topicCategoryName, string topicName, IList <Measure> selectedMeasures) { using (var session = dataserviceProvider.SessionFactory.OpenSession()) { var measureTopics = session.Query <MeasureTopic>() .Where(mt => mt.Topic.Name == topicName && mt.Topic.Owner.Name == topicCategoryName) .ToList() .Where(mt => selectedMeasures.Select(sm => sm.Id).Contains(mt.Measure.Id)) .ToList(); if (measureTopics == null || measureTopics.Count == 0) { return; } var id = measureTopics[0].Topic != null ? measureTopics[0].Topic.Id : 0; var name = measureTopics[0].Topic != null ? measureTopics[0].Topic.Name : String.Empty; var measures = new List <CostQualityMeasure>(); measureTopics.ForEach(mt => measures.Add(new CostQualityMeasure(mt.Measure))); list.Add(new CostQualityTopic(id, name, measures)); } }
public MonthAndYearBaseDataVersionStrategy( [Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider sessionFactoryProvider, Type entityType) : base(logger, sessionFactoryProvider, entityType) { }
/// <summary> /// Clears the regions. /// </summary> /// <param name="sessionFactory">The session factory.</param> /// <param name="selectedRegionType">Type of the selected region.</param> /// <param name="selectedStates">The selected states.</param> public void ClearRegions(IDomainSessionFactoryProvider sessionFactory, Type selectedRegionType, SelectListItem[] selectedStates) { if (selectedRegionType == typeof(CustomRegion)) { return; } var states = selectedStates.Aggregate(string.Empty, (current, state) => current + string.Format("'{0}',", state.Text)); states = states.SubStrBeforeLast(","); var updateQuery = @"UPDATE [dbo].[Hospitals] SET [CustomRegion_Id] = null Where [CustomRegion_Id] is not null or [CustomRegion_Id]=0 AND [State] in (" + states + ") AND [IsArchived]=0 AND [IsDeleted]=0; "; using (var session = sessionFactory.SessionFactory.OpenStatelessSession()) { using (var trans = session.BeginTransaction()) { session.CreateSQLQuery(updateQuery) .ExecuteUpdate(); trans.Commit(); } } }
/// <summary> /// Initializes a new instance of the <see cref="ReportingEntityModule"/> class and initializes other private members. /// </summary> /// <param name="logger">The logger.</param> /// <param name="factoryProvider">The factory provider.</param> /// <param name="dataLoaders">The data loaders.</param> protected ReportingEntityModule( IDomainSessionFactoryProvider factoryProvider, IEnumerable <IDataLoader> dataLoaders) { FactoryProvider = factoryProvider; DataLoaders = dataLoaders; }
public SessionLocator( IDomainSessionFactoryProvider sessionFactoryHolder, [Import(LogNames.Operations)] ILogWriter logger) : this(sessionFactoryHolder) { Logger = logger; }
private void RunPendingStatements() { //var session = SessionLocator.For(_baseType); try { IDomainSessionFactoryProvider provider = ServiceLocator.Current.GetInstance <IDomainSessionFactoryProvider>(); using (var session = provider.SessionFactory.OpenStatelessSession()) { //using(var connection = session.Connection;) foreach (var sqlStatement in _sqlStatements.Distinct()) { Logger.Debug(sqlStatement); session.CreateSQLQuery(sqlStatement) .SetTimeout((int)Math.Round(MonahrqConfiguration.SettingsGroup .MonahrqSettings().LongTimeout.TotalSeconds)) .ExecuteUpdate(); _reportsCoordinator.Information("Data Migration{0}\tExecuting SQL Query: {1}", System.Environment.NewLine, String.Format("{0}", sqlStatement)); } } } finally { _sqlStatements.Clear(); } }
public CustomRegionFileImporter(IUserFolder folder , IDomainSessionFactoryProvider provider , IHospitalRegistryService hospitalRegistryService , IEventAggregator events , [Import(LogNames.Session)] ILogWriter logger) : base(folder, provider, hospitalRegistryService, events, logger) { }
public Module(IConfigurationService configService, [Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider sessionFactoryProvider, Monahrq.Infrastructure.Configuration.IConfigurationService configurationService) { ConnectionSettings = configService.ConnectionSettings; Logger = Logger ?? NullLogger.Instance; }
public DrgSourceLoader([Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider sessionFactoryProvider , [ImportMany(DataImportContracts.ClincialDimensions)] IEnumerable <IDataReaderDictionary> dataproviders , Monahrq.Infrastructure.Configuration.IConfigurationService configurationService) : base(logger, sessionFactoryProvider, dataproviders, configurationService) { }
public YearOnlyBaseDataVersionStrategy( [Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider sessionFactoryProvider, Type entityType, bool isReplaced = false) : base(logger, sessionFactoryProvider, entityType) { IsReplaced = isReplaced; }
public CountyModule([Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider sessionFactoryProvider , [ImportMany(DataImportContracts.BaseData)] IEnumerable <IDataReaderDictionary> dataproviders , Monahrq.Infrastructure.Configuration.IConfigurationService configurationService) : base(logger, sessionFactoryProvider, dataproviders, configurationService) { }
public Module( IDomainSessionFactoryProvider factoryProvider, [ImportMany(DataImportContracts.BaseData)] IEnumerable <IProgrammability> programmability, [ImportMany(DataImportContracts.BaseData)] IEnumerable <IDataLoader> dataLoaders ) : base(factoryProvider, dataLoaders.Where(d => d.DataProvider.VersionAttribute.Version == dataLoaders.Max(d1 => d1.DataProvider.VersionAttribute.Version)).Distinct().Prioritize()) { }
protected BaseDataVersionStrategy( [Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider sessionFactoryProvider, Type entityType) { EntityType = entityType; DataProvider = sessionFactoryProvider; Logger = logger; }
public DataSetListViewModel(IDomainSessionFactoryProvider sessionProvider) { IsValid = true; SessionProvider = sessionProvider; RegionMgr = ServiceLocator.Current.GetInstance <IRegionManager>(); ImportDataFileClick = new DelegateCommand <object>(ImportDataFileClickExecute, ImportDataFileClickCanExecute); EditDatasetMetadataCommand = new DelegateCommand <object>(OnEditDatasetMetadata, CanEditDatasetMetadata); HideDatasetMetadataPopUpCommand = new DelegateCommand(OnCloseEditDatasetMetadata, () => true); UpdateDatasetMetadataCommand = new DelegateCommand(OnUpdateDatasetMetadata, () => true); }
public PhysicianFileImporter(IUserFolder folder , IDomainSessionFactoryProvider provider , IHospitalRegistryService hospitalRegistryService , IEventAggregator events , [Import(LogNames.Session)] ILogWriter logger , IConfigurationService configurationService) : base(folder, provider, hospitalRegistryService, events, logger) { _configurationService = configurationService; }
public BaseDataModule( [Import(LogNames.Session)] ILogWriter logger, IDomainSessionFactoryProvider factoryProvider, [ImportMany(DataImportContracts.BaseDataLoader)] IEnumerable <IBasedataImporter> baseDataLoaders) { Logger = logger; FactoryProvider = factoryProvider; BaseDataLoaders = baseDataLoaders.OrderBy(x => x.LoaderPriority); OnFeedback += (sender, args) => Events.GetEvent <MessageUpdateEvent>().Publish(new MessageUpdateEvent { Message = args.Data }); }
protected EntityFileImporter(IUserFolder folder , IDomainSessionFactoryProvider provider , IHospitalRegistryService hospitalRegistryService , IEventAggregator events , [Import(LogNames.Session)] ILogWriter logger) { Provider = provider; Logger = logger; Folder = folder; Events = events; HospitalRegistryService = hospitalRegistryService; Description = string.Format("{0} Import", ExportAttribute.ContractName); Inserted = new List <object>(); ImportErrors = new List <ImportError>(); }
private static bool ProcessDatasets(WebsiteImportTypeEnum importType, WebsiteExport websiteExport, Website existingWebsite, Website newWebsite, IDomainSessionFactoryProvider provider, ILogWriter logger) { try { if (importType == WebsiteImportTypeEnum.File && websiteExport != null) { List <Dataset> datasets; List <string> datasetNameList = websiteExport.Datasets.Select(ds => ds.Name).ToList(); using (var session = provider.SessionFactory.OpenSession()) { datasets = session.Query <Dataset>() .Where(d => datasetNameList.Contains(d.File)) .ToFuture() .ToList(); } if (datasets.Any()) { if (newWebsite.Datasets == null) { newWebsite.Datasets = new List <WebsiteDataset>(); } datasets.ForEach(d => { newWebsite.Datasets.Add(new WebsiteDataset { Dataset = d }); }); } } else if (importType == WebsiteImportTypeEnum.Existing && existingWebsite != null) { newWebsite.Datasets = existingWebsite.Datasets.DistinctBy(d => d.Dataset.Id).Select(wd => new WebsiteDataset { Dataset = wd.Dataset, Index = wd.Index }).ToList(); //newWebsite.Datasets.ForEach(wd => wd.Id= 0); } return(true); } catch (Exception exc) { logger.Write(exc); return(false); } }
/// <summary> /// Initializes a new instance of the <see cref="EntityImporter{TStrategy, TEntity, TKey}"/> class. /// </summary> /// <param name="logger">The logger.</param> /// <param name="sessionFactoryProvider">The session factory provider.</param> /// <param name="dataproviders">The dataproviders.</param> /// <param name="configurationService">The configuration service.</param> protected EntityImporter(ILogWriter logger , [Import(RequiredCreationPolicy = CreationPolicy.NonShared)] IDomainSessionFactoryProvider sessionFactoryProvider , IEnumerable <IDataReaderDictionary> dataproviders , IConfigurationService configurationService) { Logger = logger; SessionFactory = sessionFactoryProvider.SessionFactory; SessionProvider = sessionFactoryProvider; FirstImport = false; EntityStrategy = new TStrategy(); var max = dataproviders.Max(d => d.VersionAttribute.Version); DataProvider = dataproviders.FirstOrDefault(d => d.VersionAttribute.Version == max); ConfigurationService = configurationService; EventAggregator = ServiceLocator.Current.GetInstance <IEventAggregator>(); OnFeedback += (sender, args) => { if (!IsBackground) { EventAggregator.GetEvent <MessageUpdateEvent>() .Publish(new MessageUpdateEvent { Message = args.Data.ToString() }); } else { EventAggregator.GetEvent <UiMessageUpdateEventForeGround>() .Publish(new UiMessageUpdateEventForeGround() { Message = args.Data.ToString() }); } }; }
private static bool ProcessMeasures(WebsiteImportTypeEnum importType, WebsiteExport websiteExport, Website existingWebsite, Website newWebsite, IDomainSessionFactoryProvider provider, ILogWriter logger) { try { if (importType == WebsiteImportTypeEnum.File && websiteExport != null) { List <WebsiteMeasure> measures; using (var session = provider.SessionFactory.OpenSession()) { measures = (from measure in websiteExport.Measures let originalMeasure = session.Query <Measure>().Where(m => m.Name.ToUpper() == measure.OrginalCode.ToUpper() && !m.IsOverride).ToFuture().FirstOrDefault() where originalMeasure != null let overrideMeasure = session.Query <Measure>().Where(m => m.Name.ToUpper() == (!string.IsNullOrEmpty(measure.OverrideCode) ? measure.OverrideCode.ToUpper() : string.Empty) && m.IsOverride).ToFuture().FirstOrDefault() select new WebsiteMeasure { OriginalMeasure = originalMeasure, OverrideMeasure = overrideMeasure, IsSelected = measure.IsSelected }).ToList(); } if (measures.Any()) { if (newWebsite.Measures == null) { newWebsite.Measures = new List <WebsiteMeasure>(); } if (newWebsite.Datasets.Any()) { var targetNames = newWebsite.Datasets.DistinctBy(d => d.Dataset.Id).Select(d => d.Dataset.ContentType.Name).ToList(); //newWebsite.Measures.ToList().RemoveAll(m => !m.OriginalMeasure.Owner.Name.In(targetNames)); foreach (var measure in measures.Where(measure => measure.OriginalMeasure.Owner.Name.In(targetNames)).ToList()) { newWebsite.Measures.Add(measure); } } else { newWebsite.Measures = new List <WebsiteMeasure>(); } } } else if (importType == WebsiteImportTypeEnum.Existing && existingWebsite != null) { newWebsite.Measures = existingWebsite.Measures.DistinctBy(d => d.OriginalMeasure.Id).Select(wm => new WebsiteMeasure { OriginalMeasure = wm.OriginalMeasure, OverrideMeasure = wm.OverrideMeasure, IsSelected = wm.IsSelected, Index = wm.Index }) .ToList(); // newWebsite.Measures.ForEach(wd => wd.Id = 0); } return(true); } catch (Exception exc) { logger.Write(exc); return(false); } }
public MeasureService(IDomainSessionFactoryProvider provider, [Import(LogNames.Session)] ILogWriter logger) { Logger = logger ?? NullLogger.Instance; Provider = provider; }
public SessionLocator( IDomainSessionFactoryProvider sessionFactoryHolder) { _sessionFactoryHolder = sessionFactoryHolder; Logger = NullLogger.Instance; }
/// <summary> /// Gets the CMS zones. /// </summary> /// <param name="DataProvider">The data provider.</param> /// <param name="CurrentWebsite">The current website.</param> /// <returns></returns> private static IList <CMSZone> GetCMSZones(IDomainSessionFactoryProvider DataProvider, Website CurrentWebsite) { IList <CMSZone> zones; List <int> applicableReportIds = CurrentWebsite.Reports .Select(wr => wr.Report.Id).ToList(); // Retrieve CMS Zone data from DB. using (var session = DataProvider.SessionFactory.OpenSession()) { //try //{ // var q2 = (session // .CreateSQLQuery(sqlGetWebsitePagesX) // .AddEntity("z", typeof(CMSZone)) // .SetResultTransformer(new DistinctRootEntityResultTransformer()) as NHibernate.ISQLQuery) // .AddJoin("zv", "z.ZoneValue") // .SetParameter("websiteID", CurrentWebsite.Id) // .SetParameterList("applicableReportIds", applicableReportIds); ; // // var zone2 = q2.List<CMSZone>(); //} //catch (Exception ex) //{ // ex.GetType(); //} var query = session .CreateSQLQuery(sqlGetWebsitePages) .SetResultTransformer(Transformers.AliasToBean(typeof(CMSZoneDTO))) .SetParameter("websiteID", CurrentWebsite.Id) .SetParameterList("applicableReportIds", applicableReportIds); zones = query .List <CMSZoneDTO>() .Select(zoneDTO => new CMSZone() { Id = zoneDTO.ZoneId, Type = zoneDTO.ZoneType, PageType = zoneDTO.ZonePageType, CMSZoneValue = new CMSZoneValue() { Path = zoneDTO.ZoneValuePath.Replace("\\", "/"), Product = zoneDTO.ZoneValueProduct, ReportName = zoneDTO.ZoneValueReportName, ReportGUID = zoneDTO.ZoneValueReportGUID.ToLower(), ZoneName = zoneDTO.ZoneValueZoneName.ToLower(), TemplateContent = zoneDTO.ZoneValueTemplateContent, }, }).ToList <CMSZone>(); } // Fill in CMS Zone objects with data from ReportManifest. foreach (var zone in zones) { if (zone.PageType == "Report") { var report = CurrentWebsite.Reports.Where(r => r.Report.Name == zone.CMSZoneValue.ReportName).FirstOrDefault(); if (report == null) { //throw new InvalidOperationException("Something seriously went wrong. The reporting website can not be null."); continue; } zone.CMSZoneValue.ReportGUID = report.Report.SourceTemplate.RptId.ToLower(); } } return(zones); }
public BaseDataService(IDomainSessionFactoryProvider provider) { }
public WebsiteReportDataService(IDomainSessionFactoryProvider provider) : base(provider) { //var m = _getModelFromEnums<Audience, AudienceModel>(); }
public CategoryService(IDomainSessionFactoryProvider provider, IConfigurationService conf) { Provider = provider; ConfigurationService = conf; }
private static bool ProcessSettings(WebsiteImportTypeEnum importType, WebsiteExport websiteExport, Website existingWebsite, Website newWebsite, IDomainSessionFactoryProvider provider, ILogWriter logger) { try { var config = ServiceLocator.Current.GetInstance <IConfigurationService>(); var availableWebsiteThemes = config.MonahrqSettings.Themes.Cast <MonahrqThemeElement>(); var defaultTheme = availableWebsiteThemes.FirstOrDefault(x => x.Name.Contains("Default")); if (importType == WebsiteImportTypeEnum.File && websiteExport != null) { newWebsite.OutPutDirectory = websiteExport.OutPutDirectory; newWebsite.SelectedZipCodeRadii = websiteExport.SelectedZipCodeRadii.ToList(); newWebsite.GeographicDescription = websiteExport.GeographicDescription; newWebsite.AboutUsSectionSummary = websiteExport.AboutUsSectionSummary; newWebsite.AboutUsSectionText = websiteExport.AboutUsSectionText; newWebsite.CustomFeedbackFormUrl = websiteExport.CustomFeedbackFormUrl; newWebsite.FeedBackEmail = websiteExport.FeedBackEmail; newWebsite.FeedbackTopics = websiteExport.FeedbackTopics.ToList(); newWebsite.IncludeFeedbackFormInYourWebsite = websiteExport.IncludeFeedbackFormInYourWebsite; newWebsite.IncludeGuideToolInYourWebsite = websiteExport.IncludeGuideToolInYourWebsite; newWebsite.GoogleAnalyticsKey = websiteExport.GoogleAnalyticsKey; newWebsite.GoogleMapsApiKey = websiteExport.GoogleMapsApiKey; newWebsite.BrowserTitle = websiteExport.BrowserTitle; newWebsite.HeaderTitle = websiteExport.HeaderTitle; newWebsite.Keywords = websiteExport.Keywords; var theme = availableWebsiteThemes.FirstOrDefault(x => x.Name.ContainsCaseInsensitive(websiteExport.SelectedTheme)); var professionalWebsiteTheme = GetWebsiteTheme(Audience.Professionals, websiteExport.SelectedTheme, websiteExport.AccentColor, websiteExport.SelectedFont, websiteExport.BrandColor, theme); if (!string.IsNullOrEmpty(websiteExport.ConsumerBrandColor)) { var consumerWebsiteTheme = GetWebsiteTheme(Audience.Consumers, websiteExport.ConsumerSelectedTheme, websiteExport.AccentColor, websiteExport.ConsumerSelectedFont, websiteExport.ConsumerBrandColor, theme); newWebsite.Themes.Add(consumerWebsiteTheme); } newWebsite.Themes.Add(professionalWebsiteTheme); newWebsite.Menus = !string.IsNullOrEmpty(websiteExport.Menus.Value) ? JsonHelper.Deserialize <List <Menu> >(websiteExport.Menus.Value).Select(x => new WebsiteMenu { Menu = x }).ToList() : new List <WebsiteMenu>();; if (websiteExport.BannerImage != null) { // Encoding.UTF8.GetBytes(websiteExport.BannerImage.Image), newWebsite.BannerImage = new WebsiteImage { Image = websiteExport.BannerImage.Image, MemeType = websiteExport.BannerImage.MemeType, ImagePath = websiteExport.BannerImage.Path }; } if (websiteExport.LogoImage != null) { //Encoding.UTF8.GetBytes(websiteExport.LogoImage.Image), newWebsite.LogoImage = new WebsiteImage { Image = websiteExport.LogoImage.Image, MemeType = websiteExport.LogoImage.MemeType, ImagePath = websiteExport.LogoImage.Path }; } if (websiteExport.Hospitals != null && websiteExport.Hospitals.Any()) { var hospitals = new List <Hospital>(); var hositalIdList = websiteExport.Hospitals.Select(ds => ds.Id).ToList(); var hospitExportList = websiteExport.Hospitals .ToDictionary(wh => wh.ProviderId, wh => new Holder { Hospital = null, ProviderId = wh.ProviderId, Ccr = wh.Ccr }); using (var session = provider.SessionFactory.OpenSession()) { hospitals = session.CreateCriteria <Hospital>() .Add(Restrictions.In("State", newWebsite.StateContext.Cast <object>().ToArray())) .Add(Restrictions.And(Restrictions.Eq("IsArchived", false), Restrictions.Eq("IsDeleted", false))) .Future <Hospital>() .ToList(); } if (hospitals.Any()) { if (newWebsite.Hospitals == null) { newWebsite.Hospitals = new List <WebsiteHospital>(); } foreach (var hospital in hospitals) { if (hospitExportList.Values.All(x => x.ProviderId.ToUpper() != hospital.CmsProviderID.ToUpper())) { continue; } hospitExportList[hospital.CmsProviderID].Hospital = hospital; } foreach (var hospitalHolder in hospitExportList.Where(x => x.Value.Hospital != null).ToList()) { newWebsite.Hospitals.Add(new WebsiteHospital { Hospital = hospitalHolder.Value.Hospital, CCR = hospitalHolder.Value.Ccr }); } } else { newWebsite.Hospitals = new List <WebsiteHospital>(); } } if (websiteExport.NursingHomes != null && websiteExport.NursingHomes.Any()) { var nursingHomes = new List <NursingHome>(); // var nursingHomeList = websiteExport.NursingHomes.Select(ds => ds.Id).ToList(); var nursingHomeExportList = websiteExport.NursingHomes.ToDictionary(h => h.ProviderId, h => new Holder { NursingHome = null }); using (var session = provider.SessionFactory.OpenSession()) { nursingHomes = session.CreateCriteria <NursingHome>() .Add(Restrictions.In("State", newWebsite.StateContext.Cast <object>().ToArray())) //.Add(Restrictions.Eq("IsDeleted",false)) .Future <NursingHome>() .ToList(); } if (nursingHomes.Any()) { if (newWebsite.NursingHomes == null) { newWebsite.NursingHomes = new List <WebsiteNursingHome>(); } foreach (var nursingHome in nursingHomes) { if (!nursingHomeExportList.ContainsKey(nursingHome.ProviderId)) { continue; } nursingHomeExportList[nursingHome.ProviderId].NursingHome = nursingHome; } foreach (var hospitalHolder in nursingHomeExportList.Where(x => x.Value != null && x.Value.NursingHome != null).ToList()) { newWebsite.NursingHomes.Add(new WebsiteNursingHome { NursingHome = hospitalHolder.Value.NursingHome }); } } else { newWebsite.NursingHomes = new List <WebsiteNursingHome>(); } } } else if (importType == WebsiteImportTypeEnum.Existing && existingWebsite != null) { newWebsite.OutPutDirectory = existingWebsite.OutPutDirectory; newWebsite.SelectedZipCodeRadii = existingWebsite.SelectedZipCodeRadii.ToList(); newWebsite.GeographicDescription = existingWebsite.GeographicDescription; newWebsite.AboutUsSectionSummary = existingWebsite.AboutUsSectionSummary; newWebsite.AboutUsSectionText = existingWebsite.AboutUsSectionText; newWebsite.CustomFeedbackFormUrl = existingWebsite.CustomFeedbackFormUrl; newWebsite.FeedBackEmail = existingWebsite.FeedBackEmail; newWebsite.FeedbackTopics = existingWebsite.FeedbackTopics.ToList(); newWebsite.IncludeFeedbackFormInYourWebsite = existingWebsite.IncludeFeedbackFormInYourWebsite; newWebsite.IncludeGuideToolInYourWebsite = existingWebsite.IncludeGuideToolInYourWebsite; newWebsite.GoogleAnalyticsKey = existingWebsite.GoogleAnalyticsKey; newWebsite.GoogleMapsApiKey = existingWebsite.GoogleMapsApiKey; newWebsite.BrowserTitle = existingWebsite.BrowserTitle; newWebsite.HeaderTitle = existingWebsite.HeaderTitle; newWebsite.Keywords = existingWebsite.Keywords; if (existingWebsite.Themes != null && existingWebsite.Themes.Any()) { newWebsite.Themes = existingWebsite.Themes.Select(t => new WebsiteTheme { AudienceType = t.AudienceType, SelectedTheme = t.SelectedTheme ?? defaultTheme.Name, AccentColor = t.AccentColor ?? defaultTheme.AccentColor, BrandColor = t.BrandColor ?? defaultTheme.BrandColor, SelectedFont = t.SelectedFont ?? "'Droid Sans', Arial, sans-serif;", BackgroundColor = t.BackgroundColor ?? defaultTheme.BackgroundColor, BodyTextColor = t.BodyTextColor ?? defaultTheme.BodyTextColor, LinkTextColor = t.LinkTextColor ?? defaultTheme.LinkTextColor }).ToList(); } if (existingWebsite.Hospitals != null && existingWebsite.Hospitals.Any()) { newWebsite.Hospitals = existingWebsite.Hospitals.Select(wh => new WebsiteHospital { Hospital = wh.Hospital, CCR = wh.CCR, Index = wh.Index }) .ToList(); } if (existingWebsite.NursingHomes != null && existingWebsite.NursingHomes.Any()) { newWebsite.NursingHomes = existingWebsite.NursingHomes.Select(nh => new WebsiteNursingHome { NursingHome = nh.NursingHome, Index = nh.Index }) .ToList(); } if (existingWebsite.BannerImage != null) { newWebsite.BannerImage = existingWebsite.BannerImage; } if (existingWebsite.LogoImage != null) { newWebsite.LogoImage = existingWebsite.LogoImage; } } newWebsite.ActivityLog.Add(new ActivityLogEntry("Settings have be saved and/our updated.", DateTime.Now)); return(true); } catch (Exception exc) { logger.Write(exc); return(false); } }
public TopicService(IDomainSessionFactoryProvider factoryProvider) : base(factoryProvider) { }
private static bool ProcessReports(WebsiteImportTypeEnum importType, WebsiteExport websiteExport, Website existingWebsite, Website newWebsite, IDomainSessionFactoryProvider provider, ILogWriter logger) { try { if (importType == WebsiteImportTypeEnum.File && websiteExport != null) { var reports = new List <WebsiteReport>(); using (var session = provider.SessionFactory.OpenSession()) { foreach (var wr in websiteExport.Reports.ToList()) { var report = session.Query <Report>() .FirstOrDefault(r => r.Name.ToUpper() == wr.Name.ToUpper() && r.ReportType.ToUpper() == wr.ReportType.ToUpper()); if (report != null) { reports.Add(new WebsiteReport { Report = report, DefaultSelectedYear = wr.DefaultSelectedYear, SelectedYears = wr.SelectedYears, }); } } } if (reports.Any()) { if (newWebsite.Reports == null) { newWebsite.Reports = new List <WebsiteReport>(); } //newWebsite.Reports = reports; if (newWebsite.Datasets.Any()) { var targetNames = newWebsite.Datasets.DistinctBy(d => d.Dataset.Id).Select(d => d.Dataset.ContentType.Name).ToList(); foreach (var report in reports.ToList()) { if (!report.Report.Datasets.Any(ds => ds.In(targetNames))) { continue; } newWebsite.Reports.Add(report); } } else { newWebsite.Reports = new List <WebsiteReport>(); } } } else if (importType == WebsiteImportTypeEnum.Existing && existingWebsite != null) { newWebsite.Reports = existingWebsite.Reports.DistinctBy(d => d.Report.Id).Select(wr => new WebsiteReport { Report = wr.Report, DefaultSelectedYear = wr.DefaultSelectedYear, SelectedYears = wr.SelectedYears, Index = wr.Index }).ToList(); //newWebsite.Reports.ForEach(wd => wd.Id = 0); } return(true); } catch (Exception exc) { logger.Write(exc); return(false); } }
/// <summary> /// Initializes a new instance of the <see cref="EntityService{T, TKey}"/> class. /// </summary> /// <param name="factoryProvider">The factory provider.</param> public EntityService(IDomainSessionFactoryProvider factoryProvider) { FactoryProvider = factoryProvider; }