public async Task <List <ConfigurationItemListDTO> > GetAllConfigurationItemAsync(string address, string projectName, string[] namespaceNames) { var data = new QueryConfigurationItemFilterModel { ProjectName = projectName, NamespaceNames = namespaceNames }; List <ConfigurationItemListDTO> result = await SendPostAsync <List <ConfigurationItemListDTO> >($"{address}api/ConfigurationItem/GetConfigurationItemList", data); return(result); }
public async Task CopyConfigServer(CopyConfigServerModel model, string token) { if (!_configServers.ContainsKey(model.SourceConfigServerName)) { throw new MateralConfigCenterException($"服务{model.SourceConfigServerName}不存在"); } var filterModel = new QueryConfigurationItemFilterModel(); List <ConfigurationItemListDTO> configurationItems = await _configServerRepository.GetConfigurationItemAsync(filterModel, _configServers[model.SourceConfigServerName].Address); var addModels = _mapper.Map <List <AddConfigurationItemModel> >(configurationItems); RunTask(configServer => _configServerRepository.InitConfigurationItemsAsync(configServer.Address, token, addModels), model.TargetConfigServerNames); }
public async Task <ResultModel <List <ConfigurationItemListDTO> > > GetConfigurationItemList(QueryConfigurationItemFilterModel filterModel) { try { List <ConfigurationItemListDTO> result = await configurationItemService.GetConfigurationItemListAsync(filterModel); return(ResultModel <List <ConfigurationItemListDTO> > .Success(result, "查询成功")); } catch (AspectInvocationException ex) { return(ResultModel <List <ConfigurationItemListDTO> > .Fail(ex.InnerException?.Message)); } catch (MateralConfigCenterException ex) { return(ResultModel <List <ConfigurationItemListDTO> > .Fail(ex.Message)); } }
public async Task <List <ConfigurationItemListDTO> > GetConfigurationItemListAsync(QueryConfigurationItemFilterModel filterModel) { Expression <Func <ConfigurationItem, bool> > searchExpression = filterModel.GetSearchExpression <ConfigurationItem>(); if (filterModel.NamespaceNames != null && filterModel.NamespaceNames.Length > 0) { Expression <Func <ConfigurationItem, bool> > temp = null; foreach (string namespaceName in filterModel.NamespaceNames) { temp = temp == null ? m => m.NamespaceName.Equals(namespaceName) : temp.Or(m => m.NamespaceName.Equals(namespaceName)); } searchExpression = searchExpression.And(temp); } ConfigCenterEnvironmentConsoleHelper.WriteLine("拼接条件完毕", "Debug", ConsoleColor.DarkGreen); List <ConfigurationItem> allConfigurationItems = await _configurationItemRepository.GetAllInfoFromCacheAsync(); ConfigCenterEnvironmentConsoleHelper.WriteLine(allConfigurationItems == null ? "以从环境获取数据,但为空" : $"以从环境获取数据,数量:{allConfigurationItems.Count}", "Debug", ConsoleColor.DarkGreen); if (allConfigurationItems == null) { return(null); } List <ConfigurationItem> configurationItemsFromDb = allConfigurationItems.Where(searchExpression.Compile()).OrderBy(m => m.Key).ToList(); ConfigCenterEnvironmentConsoleHelper.WriteLine($"已通过条件筛选完毕,数量:{configurationItemsFromDb.Count}", "Debug", ConsoleColor.DarkGreen); var result = _mapper.Map <List <ConfigurationItemListDTO> >(configurationItemsFromDb); return(result); }
public async Task <List <ConfigurationItemListDTO> > GetConfigurationItemListAsync(QueryConfigurationItemFilterModel filterModel) { Expression <Func <ConfigurationItem, bool> > searchExpression = filterModel.GetSearchExpression <ConfigurationItem>(); if (filterModel.NamespaceNames != null && filterModel.NamespaceNames.Length > 0) { Expression <Func <ConfigurationItem, bool> > temp = null; foreach (string namespaceName in filterModel.NamespaceNames) { temp = temp == null ? m => m.NamespaceName.Equals(namespaceName) : temp.Or(m => m.NamespaceName.Equals(namespaceName)); } searchExpression = searchExpression.And(temp); } List <ConfigurationItem> allConfigurationItems = await _configurationItemRepository.GetAllInfoFromCacheAsync(); List <ConfigurationItem> configurationItemsFromDb = allConfigurationItems.Where(searchExpression.Compile()).OrderBy(m => m.Key).ToList(); var result = _mapper.Map <List <ConfigurationItemListDTO> >(configurationItemsFromDb); return(result); }
public async Task <List <ConfigurationItemListDTO> > GetConfigurationItemAsync(QueryConfigurationItemFilterModel filterModel, string address) { List <ConfigurationItemListDTO> result = await SendPostAsync <List <ConfigurationItemListDTO> >($"{address}api/ConfigurationItem/GetConfigurationItemList", filterModel); return(result); }
public async Task <List <ConfigurationItemListDTO> > GetConfigurationItemListAsync(QueryConfigurationItemFilterModel filterModel) { Expression <Func <ConfigurationItem, bool> > searchExpression = filterModel.GetSearchExpression <ConfigurationItem>(); if (filterModel.NamespaceNames != null && filterModel.NamespaceNames.Length > 0) { Expression <Func <ConfigurationItem, bool> > temp = null; foreach (string namespaceName in filterModel.NamespaceNames) { if (temp == null) { temp = m => m.NamespaceName.Equals(namespaceName); } else { temp = temp.Or(m => m.NamespaceName.Equals(namespaceName)); } } searchExpression = searchExpression.And(temp); } List <ConfigurationItem> configurationItemsFromDb = await _configurationItemRepository.FindAsync(searchExpression, m => m.Key, SortOrder.Ascending); var result = _mapper.Map <List <ConfigurationItemListDTO> >(configurationItemsFromDb); return(result); }