public async Task <IActionResult> UpdateProtocol(long projectId, [FromBody] ProtocolUpdateDto protocolUpdateDto) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var user = await _unitOfWork.Users.SingleOrDefaultAsync(u => u.Id == protocolUpdateDto.UserId); var project = await _unitOfWork.Projects.GetProjectWithProtocol(p => p.Id == projectId); if (project.Status != (int)ProjectStatus.Active) { // project locked no update allowed return(Forbid()); } project.Protocol.Text = protocolUpdateDto.Text; project.Protocol.UpdateLastEditedDetails(user); project.UpdateLastEditedDetails(user); if (await _unitOfWork.Complete() <= 0) { return(StatusCode(304)); } return(Ok()); }
public async Task <ActionResult> UpdateProtocol(int id, ProtocolUpdateDto protocolUpdateDto) { var protocol = await _protocolRepository.GetProtocol(id); protocol.ProtocolName = protocolUpdateDto.ProtocolName; protocol.ModifiedAt = protocolUpdateDto.ModifiedAt; _protocolRepository.Update(protocol); return(NoContent()); }