Esempio n. 1
0
        public async Task <IActionResult> Handle(ExcluirPactoTrabalhoCommand request, CancellationToken cancellationToken)
        {
            ApplicationResult <bool> result = new ApplicationResult <bool>(request);

            //Monta o objeto com os dados do catalogo
            var pacto = await PactoTrabalhoRepository.ObterAsync(request.PactoTrabalhoId);

            if (pacto.SituacaoId >= (int)Domain.Enums.SituacaoPactoTrabalhoEnum.EmExecucao)
            {
                result.Validations = new List <string> {
                    "Não é é possível excluir um plano que já tenha iniciado a execução"
                };
                return(result);
            }

            //Altera o pacto de trabalho no banco de dados
            PactoTrabalhoRepository.Excluir(pacto);
            UnitOfWork.Commit(false);

            result.Result = true;
            result.SetHttpStatusToOk("Pacto de trabalho alterado com sucesso.");
            return(result);
        }