public async Task InitConfigurationItemsByNamespaceAsync(InitConfigurationItemsByNamespaceModel model) { List <ConfigurationItem> allConfigurationItems = await _configurationItemRepository.FindAsync(m => m.NamespaceID == model.NamespaceID); foreach (ConfigurationItem configurationItem in allConfigurationItems) { _protalServerUnitOfWork.RegisterDelete(configurationItem); } foreach (AddConfigurationItemModel itemModel in model.ConfigurationItems) { var configurationItem = itemModel.CopyProperties <ConfigurationItem>(); _protalServerUnitOfWork.RegisterAdd(configurationItem); } await _protalServerUnitOfWork.CommitAsync(); }
public async Task <ResultModel> InitConfigurationItemsByNamespace(InitConfigurationItemsByNamespaceModel model) { try { await configurationItemService.InitConfigurationItemsByNamespaceAsync(model); return(ResultModel.Success("添加成功")); } catch (AspectInvocationException ex) { return(ResultModel.Fail(ex.InnerException?.Message)); } catch (MateralConfigCenterException ex) { return(ResultModel.Fail(ex.Message)); } }
public async Task CopyNamespace(CopyNamespaceModel model, string token) { if (!_configServers.ContainsKey(model.SourceConfigServerName)) { throw new MateralConfigCenterException($"服务{model.SourceConfigServerName}不存在"); } var filterModel = new QueryConfigurationItemFilterModel { NamespaceID = model.NamespaceID }; List <ConfigurationItemListDTO> configurationItems = await _configServerRepository.GetConfigurationItemAsync(filterModel, _configServers[model.SourceConfigServerName].Address); var addModel = new InitConfigurationItemsByNamespaceModel { ConfigurationItems = _mapper.Map <List <AddConfigurationItemModel> >(configurationItems), NamespaceID = model.NamespaceID }; RunTask(configServer => _configServerRepository.InitConfigurationItemsByNamespaceAsync(configServer.Address, token, addModel), model.TargetConfigServerNames); }
public async Task InitConfigurationItemsByNamespaceAsync(string address, string token, InitConfigurationItemsByNamespaceModel model) { Dictionary <string, string> heads = GetDefaultHeads(); heads["Authorization"] = $"Bearer {token}"; await SendPostAsync($"{address}api/ConfigurationItem/InitConfigurationItemsByNamespace", model, heads); }