public void Cadastrar(AlunoDto alunoDto)
        {
            var comCpfJaCadastrado = _alunoRepositorio.ObterPeloCpf(alunoDto.Cpf);

            ValidadorDeRegra.Novo()
            .Quando(comCpfJaCadastrado != null && comCpfJaCadastrado.Id != alunoDto.Id, Resource.CpfJaCadastrado)
            .DispararExcecaoSeExistir();

            if (alunoDto.Id == 0)
            {
                var   publicoAlvoConvertido = _conversorDePublicoAlvo.Converter(alunoDto.PublicoAlvo);
                Aluno aluno = new Aluno(
                    alunoDto.Nome,
                    alunoDto.Cpf,
                    alunoDto.Email,
                    publicoAlvoConvertido
                    );
                _alunoRepositorio.Adicionar(aluno);
            }
            else if (alunoDto.Id > 0)
            {
                var aluno = _alunoRepositorio.ObterPorId(alunoDto.Id);
                aluno.AlterarNome(alunoDto.Nome);
            }
        }
示例#2
0
        public void Armazenar(AlunoDto alunoDto)
        {
            var alunoComMesmoCpf = _alunoRepositorio.ObterPeloCpf(alunoDto.Cpf);

            ValidadorDeRegra.Novo()
            .Quando(alunoComMesmoCpf != null && alunoComMesmoCpf.Id == alunoDto.Id, Resource.CpfExistente)
            .DispararExcessaoSeExistir();

            if (alunoDto.Id == 0)
            {
                var publicoAlvoConvertido = _conversorDePublicoAlvo.Converter(alunoDto.PublicoAlvo);
                var aluno = new Aluno(alunoDto.Nome, alunoDto.Email, alunoDto.Cpf, publicoAlvoConvertido);
                _alunoRepositorio.Adicionar(aluno);
            }
            else
            {
                var aluno = _alunoRepositorio.ObterPorId(alunoDto.Id);
                aluno.AlterarNome(alunoDto.Nome);
            }
        }