public void Cancelar(CancelarOrdemServico cancelar) { var compra = this.VendaDAO.GetByOSID(cancelar.Id)?.Where(e => e.DataCancelamento != null).ToList(); if (compra?.Count > 0) { throw new BusinessException(new { Id = "Não é possível desativar, pois existe venda(s) ativa(s)." }); } if (cancelar.Justificativa.Length < 20) { throw new BusinessException(new { Justificativa = "Justificativa deve ter mais de 20 caracteres." }); } if (cancelar.Justificativa.Length > 255) { throw new BusinessException(new { Justificativa = "Justificativa deve ter menos de 255 caracteres." }); } if (!this.UserDAO.PasswordSignIn(this.UserRequest.UserNome, cancelar.Senha).Succeeded) { throw new BusinessException(new { Senha = "Senha inválida." }); } var OS = this.DAO.GetByID(cancelar.Id); OS.DataCancelamento = DateTime.Now; OS.UserCancelamento = this.UserRequest.Id.ToString(); OS.JustificativaCancelamento = cancelar.Justificativa; this.DAO.Update(OS); }
public virtual IActionResult Cancelar([FromRoute] int id, [FromBody] CancelarOrdemServico os) { os.Id = id; this.Service.Cancelar(os); return(Ok()); }