public async Task <ActionResult <VmEquipmentArea> > PostEquipment([FromBody] VmEquipmentArea vmEquipment, CancellationToken cancellationToken) { var equipmentView = _mapper.Map <EquipmentAreaView>(vmEquipment); var dbEquipment = await _areaService.AddEquipmentAreaAsync(equipmentView, cancellationToken); await _areaService.CommitAsync(cancellationToken); return(CreatedAtAction("GetEquipments", new { areaId = dbEquipment.AreaId, equipmentId = dbEquipment.EquipmentId, }, vmEquipment)); }
public async Task <IActionResult> PutEquipment(Guid areaId, Guid equipmentId, [FromBody] VmEquipmentArea vmEquipment, CancellationToken cancellationToken) { if (areaId != vmEquipment.AreaId && equipmentId != vmEquipment.EquipmentId) { return(BadRequest()); } var equipmentView = _mapper.Map <EquipmentAreaView>(vmEquipment); await _areaService.UpdateEquipmentAreaAsync(equipmentView, cancellationToken); try { await _areaService.CommitAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { if (!await EquipmentAreaExists(areaId, equipmentId, cancellationToken)) { return(NotFound()); } else { throw; } } return(NoContent()); }