public async Task <ActionResult> EditarOcorrencia(Guid ocorrenciaId, [FromBody] OcorrenciaPutDto ocorrenciaPutDto) { if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } if (ocorrenciaId != ocorrenciaPutDto.Id) { NotificarErro("Id da request diferente do Id da Entidade!"); return(CustomResponse(ocorrenciaPutDto)); } OcorrenciaResultDto ocorrenciaResultDto = await _ocorrenciaService.PesquisarOcorrenciaPorId(ocorrenciaId); if (ocorrenciaResultDto == null) { return(NotFound(new { success = true, status = 404, mensagem = "A ocorrência informada não foi encontrada!", })); } await _ocorrenciaService.EditarOcorrencia(ocorrenciaPutDto, ocorrenciaResultDto); return(CustomResponse(new { mensagem = "Ocorrência foi editada com sucesso!", })); }
private async Task <bool> EditarTurnoOcorrencia(OcorrenciaPutDto ocorrenciaPutDto, Guid ocorrenciaId) { TurnoOcorrencia turnoOcorrencia = new TurnoOcorrencia(ocorrenciaPutDto.TurnoId, ocorrenciaId, ocorrenciaPutDto.StatusAtualOcorrencia); // atualizar TurnoOcorrencia caso altere Status ocorrencia return(await _turnoOcorrenciaRepository.EditarStatusTurnoOcorrencia(turnoOcorrencia)); }
public Ocorrencia(OcorrenciaPutDto ocorrenciaPutDto, OcorrenciaResultDto ocorrenciaResultDto) { Id = Guid.Parse(ocorrenciaResultDto.Id); IncOcorrencia = int.Parse(ocorrenciaResultDto.IncOcorrecia); Titulo = ocorrenciaPutDto.Titulo; DataHoraInicio = ocorrenciaPutDto.DataHoraInicio; DataHoraFim = ocorrenciaPutDto.DataHoraFim; DataHoraUltimaAtualizacao = DateTime.Now; ChamadoTI = ocorrenciaPutDto.ChamadoTI; ChamadoFornecedor = ocorrenciaPutDto.ChamadoFornecedor; ChamadoTI = ocorrenciaPutDto.OcorrenciaCCM; Acionamento = ocorrenciaPutDto.Acionamento; Impacto = ocorrenciaPutDto.Impacto; DescricaoImpacto = ocorrenciaPutDto.DescricaoImpacto; StatusAtualOcorrencia = ocorrenciaPutDto.StatusAtualOcorrencia; UsuarioId = ocorrenciaPutDto.UsuarioId; }
public async Task <bool> EditarOcorrencia(OcorrenciaPutDto ocorrenciaPutDto, OcorrenciaResultDto ocorrenciaResultDto) { // validação domínio if (!ExecutarValidacao(new OcorrenciaPutDtoValidation(), ocorrenciaPutDto)) { return(false); } // validação regra de negócio if (!await EhDataHoraValida(ocorrenciaPutDto.TurnoId, ocorrenciaPutDto.DataHoraInicio, ocorrenciaPutDto.DataHoraFim)) { return(false); } if (!await EhTurnoValido(ocorrenciaPutDto.TurnoId)) { return(false); } if (!await EhUsuarioValido(ocorrenciaPutDto.UsuarioId)) { return(false); } if (!await EhListaAtivoValida(ocorrenciaPutDto.Ativos)) { return(false); } Ocorrencia ocorrencia = new Ocorrencia(ocorrenciaPutDto, ocorrenciaResultDto); await _ocorrenciaRepository.EditarAsync(ocorrencia); await EditarTurnoOcorrencia(ocorrenciaPutDto, Guid.Parse(ocorrenciaResultDto.Id)); await ExcluirOcorrenciaAtivo(ocorrenciaPutDto.Id); await CadastrarOcorrenciaAtivo(ocorrenciaPutDto.Id, ocorrenciaPutDto.Ativos); return(true); }