예제 #1
0
        public ValidationResult AtualizarCurso(Curso curso)
        {
            var resultadoValidacao = new ValidationResult();
            var cursoDb            = _cursoRepository.GetById(curso.CursoId);

            cursoDb.AtualizarCurso(curso.Nome, curso.Ativo, curso.TipoCurso);

            if (!cursoDb.IsValid)
            {
                resultadoValidacao.AdicionarErro(cursoDb.ResultadoValidacao);
                return(resultadoValidacao);
            }

            var resultadoConsistencia = new CursoEstaConsistenteParaAtualizarValidation(_cursoRepository).Validar(cursoDb);

            if (!resultadoConsistencia.IsValid)
            {
                resultadoValidacao.AdicionarErro(resultadoConsistencia);
                return(resultadoValidacao);
            }

            _cursoRepository.Update(cursoDb);

            return(resultadoValidacao);
        }
예제 #2
0
        public ValidationResult AtualizarCurso(Guid cursoId, string descricao, bool ativo)
        {
            var resultadoValidacao = new ValidationResult();
            var curso = _cursoRepository.GetById(cursoId);

            curso.AtualizarCurso(descricao);

            if (ativo)
            {
                curso.AtivarCurso();
            }
            else
            {
                curso.DesativarCurso();
            }

            if (!curso.IsValid)
            {
                resultadoValidacao.AdicionarErro(curso.ResultadoValidacao);
                return(resultadoValidacao);
            }

            _cursoRepository.Update(curso);


            return(resultadoValidacao);
        }
예제 #3
0
        public ValidationResult CancelarPedido(Pedido model, Guid idUsuarioAlteracao)
        {
            var resultadoValidacao = new ValidationResult();

            if (!model.IsValid())
            {
                resultadoValidacao.AdicionarErro(model.ResultadoValidacao);
                return(resultadoValidacao);
            }

            //if (model.Status != "Aberto")
            //{
            //    resultadoValidacao.AdicionarErro(new ValidationError("Status não permitido para cancelamento."));
            //    return resultadoValidacao;
            //}

            //model.Status = "Cancelado";
            //model.DtAlteracao = DateTime.Now;
            //model.DtFechamento = DateTime.Now;
            //model.IdUsuarioAlteracao = IdUsuarioAlteracao;

            base.Update(model);

            return(resultadoValidacao);
        }
예제 #4
0
        public IActionResult Cadastrar([FromBody] CadastroProjetoViewModel viewModel)
        {
            var projeto = new Projeto(viewModel.Codigo,
                                      viewModel.Nome,
                                      viewModel.ValorSolicitado,
                                      viewModel.TipoProjetoId,
                                      viewModel.DataInicioPrevista,
                                      viewModel.DataTerminoPrevista);

            foreach (var dr in viewModel.DRs)
            {
                projeto.AdicionarDRParticipante(new RateioDR(dr.SiglaRegional, dr.ValorTotal, dr.ValorParticipacaoDN));
            }

            var resultadoValidacao = new ValidationResult();

            var result = new ProjetoAptoASerCadastradoValidation(_projetoRepository).Validar(projeto);

            if (!result.IsValid)
            {
                resultadoValidacao.AdicionarErro(result);
                return(BadRequest(resultadoValidacao));
            }

            return(Ok(resultadoValidacao));
        }
예제 #5
0
        public ValidationResult AtualizarCliente(Cliente cliente)
        {
            var resultado = new ValidationResult();

            if (!cliente.IsValid())
            {
                resultado.AdicionarErro(cliente.ResultadoValidacao);
                return resultado;
            }

            resultado = VerificaCpfUnico(cliente);
            if (!resultado.IsValid)
            {
                resultado.AdicionarErro(cliente.ResultadoValidacao);
                return resultado;
            }

            Update(cliente);
            return resultado;
        }
예제 #6
0
        public ValidationResult Adicionar(Usuario entity)
        {
            var resultadoValidacao = new ValidationResult();

            if (!entity.IsValid())
            {
                resultadoValidacao.AdicionarErro(entity.ResultadoValidacao);
                return(resultadoValidacao);
            }
            _usuarioRepository.Adicionar(entity);
            return(resultadoValidacao);
        }
예제 #7
0
        public ValidationResult Adicionar(SalaAgendamento entity)
        {
            var resultadoValidacao = new ValidationResult();

            if (!entity.IsValid())
            {
                resultadoValidacao.AdicionarErro(entity.ResultadoValidacao);
                return(resultadoValidacao);
            }
            _agendamentoRepository.Adicionar(entity);
            return(resultadoValidacao);
        }
        public ValidationResult AdicionarNovoAluno(Aluno aluno)
        {
            var resultadoValidacao = new ValidationResult();

            if (!aluno.IsValid)
            {
                resultadoValidacao.AdicionarErro(aluno.ResultadoValidacao);
                return(resultadoValidacao);
            }

            var resultadoConsistencia = new AlunoEstaConsistenteParaCadastroValidation(_alunoRepository).Validar(aluno);

            if (!resultadoConsistencia.IsValid)
            {
                resultadoValidacao.AdicionarErro(resultadoConsistencia);
                return(resultadoValidacao);
            }
            _alunoRepository.Add(aluno);

            return(resultadoValidacao);
        }
예제 #9
0
        public ValidationResult AdicionarNovoCurso(Curso curso)
        {
            var resultadoValidacao = new ValidationResult();

            if (!curso.IsValid)
            {
                resultadoValidacao.AdicionarErro(curso.ResultadoValidacao);
                return(resultadoValidacao);
            }

            var resultadoConsistencia = new CursoEstaConsistenteValidation(_cursoRepository).Validar(curso);

            if (!resultadoConsistencia.IsValid)
            {
                resultadoValidacao.AdicionarErro(resultadoConsistencia);
                return(resultadoValidacao);
            }
            _cursoRepository.Add(curso);

            return(resultadoValidacao);
        }
예제 #10
0
        public ValidationResult AdicionarGradeCurricular(GradeCurricular gradeCurricular)
        {
            var resultadoValidacao = new ValidationResult();

            if (!gradeCurricular.IsValid())
            {
                resultadoValidacao.AdicionarErro(gradeCurricular.ResultadoValidacao);
                return(resultadoValidacao);
            }

            Add(gradeCurricular);
            return(resultadoValidacao);
        }
예제 #11
0
        public ValidationResult AdicionarCurso(Curso curso)
        {
            var resultadoValidacao = new ValidationResult();

            if (!curso.IsValid())
            {
                resultadoValidacao.AdicionarErro(curso.ResultadoValidacao);
                return(resultadoValidacao);
            }

            Add(curso);
            return(resultadoValidacao);
        }
예제 #12
0
        public ValidationResult AddMensalidade(Receitas receita)
        {
            var resultado = new ValidationResult();

            resultado = VerificaMensalidadeUnica(receita);
            if (!resultado.IsValid)
            {
                resultado.AdicionarErro(receita.ResultadoValidacao);
                return(resultado);
            }

            base.Add(receita);
            return(resultado);
        }
예제 #13
0
        public virtual ValidationResult Validar(TEntity entity)
        {
            var result = new ValidationResult();

            foreach (var x in _validations.Keys)
            {
                var rule = _validations[x];
                if (!rule.Validar(entity))
                {
                    result.AdicionarErro(new ValidationError(rule.MensagemErro));
                }
            }
            return(result);
        }
예제 #14
0
        public ValidationResult AdicionarPedido(Pedido model)
        {
            var resultadoValidacao = new ValidationResult();

            if (!model.IsValid())
            {
                resultadoValidacao.AdicionarErro(model.ResultadoValidacao);
                return(resultadoValidacao);
            }

            base.Add(model);

            return(resultadoValidacao);
        }
예제 #15
0
        public ValidationResult AdicionarFormaDePagamento(FormaDePagamento model)
        {
            var resultadoValidacao = new ValidationResult();

            if (!model.IsValid())
            {
                resultadoValidacao.AdicionarErro(model.ResultadoValidacao);
                return(resultadoValidacao);
            }

            base.Add(model);

            return(resultadoValidacao);
        }
예제 #16
0
        public ValidationResult AddCliente(Cliente cliente)
        {
            var resultadoValidacao = new ValidationResult();

            if (!cliente.IsValid())
            {
                resultadoValidacao.AdicionarErro(cliente.ResultadoValidacao);
                return(resultadoValidacao);
            }

            base.Add(cliente);

            return(resultadoValidacao);
        }
예제 #17
0
        public ValidationResult AdicionarProduto(Produto model)
        {
            var resultadoValidacao = new ValidationResult();

            if (!model.IsValid())
            {
                resultadoValidacao.AdicionarErro(model.ResultadoValidacao);
                return(resultadoValidacao);
            }

            //Coloca a hora no padrão 01/01/1900
            model.Hora = new DateTime().AddYears(1899).AddHours(model.Hora.Hour).AddMinutes(model.Hora.Minute);

            base.Add(model);

            return(resultadoValidacao);
        }