public async Task <OperationDataResult <BaneDanmarkLaBaseSettings> > GetSettings() { try { var option = _options.Value; if (option.SdkConnectionString == "...") { string connectionString = _dbContext.Database.GetDbConnection().ConnectionString; string dbNameSection = Regex.Match(connectionString, @"(Database=(...)_eform-angular-\w*-plugin;)").Groups[0].Value; string dbPrefix = Regex.Match(connectionString, @"Database=(\d*)_").Groups[1].Value; string sdk = $"Database={dbPrefix}_SDK;"; connectionString = connectionString.Replace(dbNameSection, sdk); await _options.UpdateDb(settings => { settings.SdkConnectionString = connectionString; }, _dbContext, UserId); } return(new OperationDataResult <BaneDanmarkLaBaseSettings>(true, option)); } catch (Exception e) { Trace.TraceError(e.Message); _logger.LogError(e.Message); return(new OperationDataResult <BaneDanmarkLaBaseSettings>(false, _baneDanmarkLaLocalizationService.GetString("ErrorWhileObtainingItemsPlanningSettings"))); } }
public async Task <OperationDataResult <CaseTemplatesModel> > GetAll(CaseTemplateRequestModel pnRequestModel) { try { CaseTemplatesModel caseTemplatesModel = new CaseTemplatesModel(); IQueryable <CaseTemplate> caseTemplatesQuery = _dbContext.CaseTemplates.AsQueryable(); if (!string.IsNullOrEmpty(pnRequestModel.Sort)) { if (pnRequestModel.IsSortDsc) { caseTemplatesQuery = caseTemplatesQuery.CustomOrderByDescending(pnRequestModel.Sort); } else { caseTemplatesQuery = caseTemplatesQuery.CustomOrderBy(pnRequestModel.Sort); } } else { caseTemplatesQuery = _dbContext.CaseTemplates.OrderBy(x => x.Id); } if (!string.IsNullOrEmpty(pnRequestModel.NameFilter)) { caseTemplatesQuery = caseTemplatesQuery.Where(x => x.Title.Contains(pnRequestModel.NameFilter)); } caseTemplatesQuery = caseTemplatesQuery .Where(x => x.WorkflowState != Constants.WorkflowStates.Removed) .Skip(pnRequestModel.Offset) .Take(pnRequestModel.PageSize); List <CaseTemplateModel> caseTemplates = await caseTemplatesQuery.Select(x => new CaseTemplateModel() { Id = x.Id, Title = x.Title, CreatedAt = x.CreatedAt, // CreatedBy = x., ShowFrom = x.StartAt.ToString(), ShowTo = x.EndAt.ToString() // Status = x.Status }).ToListAsync(); caseTemplatesModel.Total = await _dbContext.CaseTemplates.CountAsync(x => x.WorkflowState != Constants.WorkflowStates.Removed); caseTemplatesModel.CaseTemplates = caseTemplates; return(new OperationDataResult <CaseTemplatesModel>(true, caseTemplatesModel)); } catch (Exception e) { Trace.TraceError(e.Message); return(new OperationDataResult <CaseTemplatesModel>(false, _baneDanmarkLaLocalizationService.GetString("ErrorObtainingLists"))); } }