public async Task <CollectorAppVersionDto> CreateEntityAsync(CollectorAppVersionRequest request) { var entity = _mapper.Map <CollectorAppVersionRequest, CollectorAppVersion>(request); entity.CreatedAt = DateTime.Now; entity = await _uow.CollectorAppVersionRepository.CreateAsync(entity); if (entity != null && entity.IsActive) { var items = await _uow.CollectorAppVersionRepository .GetRangeAsync(1, int.MaxValue, x => x.Id != entity.Id && x.IsActive); items.ForEach(x => { x.IsActive = false; _uow.CollectorAppVersionRepository.Update(x); }); } var result = await _uow.SaveAsync(); if (!result) { return(null); } if (entity == null) { return(null); } var dto = _mapper.Map <CollectorAppVersion, CollectorAppVersionDto>(entity); return(dto); }
public virtual async Task <ActionResult> Create([FromBody] CollectorAppVersionRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var dto = await _collectorAppsService.CreateEntityAsync(request); if (dto == null) { return(StatusCode(500)); } return(Ok(dto)); }