public async Task <IActionResult> PutArea([FromRoute] Guid id, [FromBody] VmArea vmArea, CancellationToken cancellationToken) { if (id != vmArea.Id) { return(BadRequest()); } var areaView = _mapper.Map <AreaView>(vmArea); var area = await _areaService.UpdateAreaAsync(areaView, cancellationToken); // Загрузка изображения var vmImage = vmArea.Image; var imageHash = areaView.ImageHash; await UploadImage(area, vmImage, imageHash, cancellationToken); try { await _areaService.CommitAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { if (!await AreaExists(id, cancellationToken)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> PutArea([FromRoute] int id, [FromBody] VmArea vmArea, CancellationToken cancellationToken) { if (id != vmArea.Id) { return(BadRequest()); } var areaView = _mapper.Map <AreaView>(vmArea); areaView.UpdatedById = 1; // Hardcode Admin await _areaService.UpdateAreaAsync(areaView, cancellationToken); try { await _areaService.CommitAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { if (!await AreaExists(id, cancellationToken)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <VmArea> > PostArea([FromBody] VmArea vmArea, CancellationToken cancellationToken) { var areaView = _mapper.Map <AreaView>(vmArea); areaView.CreatedById = 1; // Hardcode Admin var dbArea = await _areaService.AddAreaAsync(areaView, cancellationToken); await _areaService.CommitAsync(cancellationToken); vmArea.Id = dbArea.Id; return(CreatedAtAction("GetArea", new { id = dbArea.Id }, vmArea)); }
public async Task <ActionResult <VmArea> > PostArea([FromBody] VmArea vmArea, CancellationToken cancellationToken) { var areaView = _mapper.Map <AreaView>(vmArea); var dbArea = await _areaService.AddAreaAsync(areaView, cancellationToken); // Загрузка изображения var vmImage = vmArea.Image; var imageHash = areaView.ImageHash; await UploadImage(dbArea, vmImage, imageHash, cancellationToken); await _areaService.CommitAsync(cancellationToken); vmArea.Id = dbArea.Id; return(CreatedAtAction("GetArea", new { id = dbArea.Id }, vmArea)); }