public async Task <IActionResult> UpdateDeviceStatus(int id, [FromBody] DeviceStatusSaveResource deviceStatusSaveResource) { if (!_auth.IsAppAdmin(User)) { return(NoContent()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } /* Prexistence Test */ var filter = new MdaDeviceStatusQuery() { Name = deviceStatusSaveResource.Name, Active = Convert.ToByte(deviceStatusSaveResource.Active == true ? 1 : 0) }; var deviceStatusFromRepoExisting = await _repo.GetDeviceStatuses(filter); if (deviceStatusFromRepoExisting.Any()) { return(BadRequest($"Device Status {deviceStatusSaveResource.Name} already exists.")); } var deviceStatusFromRepo = await _repo.GetDeviceStatus(id); if (deviceStatusFromRepo == null) { return(BadRequest($"Device Status {id} could not be found.")); } _mapper.Map <DeviceStatusSaveResource, MdaDeviceStatus>(deviceStatusSaveResource, deviceStatusFromRepo); deviceStatusFromRepo.ModifiedBy = User.Identity.Name; deviceStatusFromRepo.ModifiedDate = DateTime.Now; if (await _repo.SaveAll()) { return(NoContent()); } return(BadRequest("Failed to update device status")); }
public async Task <IActionResult> AddDeviceStatus([FromBody] DeviceStatusSaveResource deviceStatusSaveResource) { if (!_auth.IsAppAdmin(User)) { return(NoContent()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } /* Prexistence Test */ var filter = new MdaDeviceStatusQuery() { Name = deviceStatusSaveResource.Name }; var deviceStatusFromRepo = await _repo.GetDeviceStatuses(filter); if (deviceStatusFromRepo.Any()) { return(BadRequest($"Device Status {deviceStatusSaveResource.Name} already exists.")); } var deviceStatus = _mapper.Map <MdaDeviceStatus>(deviceStatusSaveResource); deviceStatus.CreatedBy = User.Identity.Name; _repo.Add(deviceStatus); if (await _repo.SaveAll()) { return(Ok(deviceStatus)); } return(BadRequest("Failed to add device status")); }