public async Task <GatewayDto> CreateGateway(CreateGatewayDto dto) { var entity = mapper.Map <Gateway>(dto); entity.Created = DateTime.Now; return(mapper.Map <GatewayDto>(await gatewayRepository.Insert(entity))); }
public GatewayDto Create(CreateGatewayDto input) { var query = _gatewayRepository.GetAllIncluding().Where(g => g.HardwareId == input.HardwareId || g.GatewayName == input.GatewayName); var gateway_old = query.FirstOrDefault(); if ((query.Any()) && (query.FirstOrDefault().IsDeleted == true)) { gateway_old.IsDeleted = false; var result_old = _gatewayRepository.Update(gateway_old); CurrentUnitOfWork.SaveChanges(); return(ObjectMapper.Map <GatewayDto>(result_old)); } if (query.Any() && gateway_old.IsDeleted == false) { throw new ApplicationException("网关已存在"); } var workshopQuery = _workshopRepository.GetAllIncluding().Where(w => w.WorkshopName == input.WorkshopName) .Where(w => w.Factory.FactoryName == input.FactoryName) .Where(w => w.Factory.City.CityName == input.CityName); var workshop = workshopQuery.FirstOrDefault(); if (workshop == null) { throw new ApplicationException("Workshop不存在"); } var gatewayTypeQuery = _gatewayTypeRepository.GetAll().Where(gt => gt.TypeName == input.GatewayTypeName); var gatewayType = gatewayTypeQuery.FirstOrDefault(); if (gatewayType == null) { throw new ApplicationException("网关类型不存在"); } var gateway = ObjectMapper.Map <Gateway>(input); gateway.Workshop = workshop; gateway.GatewayType = gatewayType; var result = _gatewayRepository.Insert(gateway); CurrentUnitOfWork.SaveChanges(); return(ObjectMapper.Map <GatewayDto>(result)); }
public Task <GatewayDto> CreateGateway(CreateGatewayDto dto) { return(gatewayService.CreateGateway(dto)); }
/// <summary> /// Create new Gateway /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='newGateway'> /// The entity to create /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async System.Threading.Tasks.Task <object> PostBynewGatewayAsync(this IGateways operations, CreateGatewayDto newGateway, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.PostBynewGatewayWithHttpMessagesAsync(newGateway, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Create new Gateway /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='newGateway'> /// The entity to create /// </param> public static object PostBynewGateway(this IGateways operations, CreateGatewayDto newGateway) { return(System.Threading.Tasks.Task.Factory.StartNew(s => ((IGateways)s).PostBynewGatewayAsync(newGateway), operations, System.Threading.CancellationToken.None, System.Threading.Tasks.TaskCreationOptions.None, System.Threading.Tasks.TaskScheduler.Default).Unwrap().GetAwaiter().GetResult()); }