public async Task <ActionResult> CadastrarOcorrencia([FromBody] OcorrenciaPostDto ocorrenciaPostDto) { if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } await _ocorrenciaService.AbrirOcorrencia(ocorrenciaPostDto); return(CustomResponse(new { mensagem = "Ocorrência foi aberta com sucesso!", })); }
public Ocorrencia(OcorrenciaPostDto ocorrenciaPostDto) { Titulo = ocorrenciaPostDto.Titulo; DataHoraInicio = ocorrenciaPostDto.DataHoraInicio; DataHoraFim = ocorrenciaPostDto.DataHoraFim; DataHoraUltimaAtualizacao = DateTime.Now; ChamadoTI = ocorrenciaPostDto.ChamadoTI; ChamadoFornecedor = ocorrenciaPostDto.ChamadoFornecedor; ChamadoTI = ocorrenciaPostDto.OcorrenciaCCM; Acionamento = ocorrenciaPostDto.Acionamento; Impacto = ocorrenciaPostDto.Impacto; DescricaoImpacto = ocorrenciaPostDto.DescricaoImpacto; StatusAtualOcorrencia = StatusOcorrenciaEnum.ANDAMENTO; UsuarioId = ocorrenciaPostDto.UsuarioId; }
public async Task <bool> AbrirOcorrencia(OcorrenciaPostDto ocorrenciaPostDto) { // validação domínio if (!ExecutarValidacao(new OcorrenciaPostDtoValidation(), ocorrenciaPostDto)) { return(false); } // validação regra de negócio if (!await EhDataHoraValida(ocorrenciaPostDto.TurnoId, ocorrenciaPostDto.DataHoraInicio, ocorrenciaPostDto.DataHoraFim)) { return(false); } if (!await EhTurnoValido(ocorrenciaPostDto.TurnoId)) { return(false); } if (!await EhUsuarioValido(ocorrenciaPostDto.UsuarioId)) { return(false); } if (!await EhListaAtivoValida(ocorrenciaPostDto.Ativos)) { return(false); } Ocorrencia ocorrencia = new Ocorrencia(ocorrenciaPostDto); OcorrenciaResultDto ocorrenciaResultDto = await _ocorrenciaRepository.AbrirOcorrencia(ocorrencia); await CadastrarTurnoOcorrencia(ocorrenciaPostDto.TurnoId, ocorrenciaResultDto); await CadastrarOcorrenciaAtivo(Guid.Parse(ocorrenciaResultDto.Id), ocorrenciaPostDto.Ativos); return(true); }