Exemple #1
0
        public async Task <ISaida> CadastrarPessoa(CadastrarPessoaEntrada cadastroEntrada)
        {
            // Verifica se as informações para cadastro foram informadas corretamente
            if (cadastroEntrada.Invalido)
            {
                return(new Saida(false, cadastroEntrada.Mensagens, null));
            }

            // Verifica se já existe uma pessoa com o mesmo nome informado
            this.NotificarSeVerdadeiro(await _pessoaRepositorio.VerificarExistenciaPorNome(cadastroEntrada.IdUsuario, cadastroEntrada.Nome), PessoaMensagem.Pessoa_Com_Mesmo_Nome);

            if (this.Invalido)
            {
                return(new Saida(false, this.Mensagens, null));
            }

            var pessoa = new Pessoa(cadastroEntrada);

            await _pessoaRepositorio.Inserir(pessoa);

            await _uow.Commit();

            return(_uow.Invalido
                ? new Saida(false, _uow.Mensagens, null)
                : new Saida(true, new[] { PessoaMensagem.Pessoa_Cadastrada_Com_Sucesso }, new PessoaSaida(pessoa)));
        }
Exemple #2
0
        public async Task <IActionResult> Post(PessoaModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            try
            {
                var cpfExiste = await _pessoaRepositorio.CpfJaExiste(new Cpf(model.Cpf));

                if (cpfExiste)
                {
                    return(BadRequest(new ResponseModel <string>(HttpStatusCode.BadRequest, "", "Cpf já cadastrado")));
                }

                var pessoa = model.ParaPessoa();

                var resultado = await _pessoaRepositorio.Inserir(pessoa);

                await _unitOfWork.SaveChanges();

                var response = new ResponseModel <PessoaDetalhesModel>(HttpStatusCode.Created, new PessoaDetalhesModel(resultado), "Pessoa casdastrado com sucesso.");
                return(Created(string.Empty, response));
            }
            catch (Exception e)
            {
                return(BadRequest(new ResponseModel <PessoaModel>(HttpStatusCode.BadRequest, null, e.Message)));
            }
        }
Exemple #3
0
        /// param name="entity">/param>
        public int Inserir(Pessoa entity)
        {
            var NomeExistente = _pessoaRepositorio.SelecionarPorNomeEspecifico(entity.Nome);

            if (string.IsNullOrEmpty(entity.Nome))
            {
                throw new ConflitoException("Não é permitido uma Pessoa sem nome");
            }

            if (NomeExistente != null)
            {
                throw new ConflitoException($"Já existe uma Pessoa cadastrada com este nome {entity.Nome}!");
            }

            var EmailExistente = _pessoaRepositorio.SelecionarPorEmail(entity.Email);

            if (EmailExistente != null)
            {
                throw new ConflitoException($"Já existe uma Pessoa cadastrada com este Email {entity.Email}!");
            }

            if (entity.Id_squad == 0)
            {
                entity.Id_squad = null;
            }
            entity.Senha = PasswordHash.Create(entity.Senha.ToString());

            var IdPessoa = _pessoaRepositorio.Inserir(entity);

            if (entity.Permissao == 2)
            {
                _mentorRepositorio.Inserir(IdPessoa);
            }
            return(IdPessoa);
        }
Exemple #4
0
        public Pessoa Inserir(Pessoa pessoa)
        {
            try
            {
                pessoa.Validar();

                return(_pessoaRepositorio.Inserir(pessoa));
            }
            catch (Exception e)
            {
                throw new ApplicationException(e.Message);
            }
        }
Exemple #5
0
        public PessoaServiceTeste()
        {
            _fixture = new Fixture();
            _pessoa  = _fixture.Create <Pessoa>();

            _pessoaRepositorio = Substitute.For <IPessoaRepositorio>();
            _pessoaRepositorio.Inserir(Arg.Any <Pessoa>()).Returns(_pessoa);

            _pessoaRepositorioMock = new Mock <IPessoaRepositorio>();
            _pessoaRepositorioMock
            .Setup(x => x.Inserir(It.IsAny <Pessoa>()))
            .Returns(_pessoa);

            _pessoaService = new PessoaService(_pessoaRepositorioMock.Object);
        }
        /// <summary>
        /// Inserir uma pessoa nova
        /// </summary>
        /// <param name="pessoa"></param>
        public PessoaDTO Inserir(PessoaDTO pessoaParam)
        {
            var p = _pessoaRepositorio.BuscarPorCPF(pessoaParam.CPF);

            if (p != null)
            {
                throw new ArgumentException(MensagemResposta.PessoaFisicaJaExiste);
            }

            var pessoa = _pessoaRepositorio.Inserir(pessoaParam.CPF, pessoaParam.Nome);

            return(new PessoaDTO
            {
                IdPessoa = pessoa.IdPessoa,
                CPF = pessoa.Cpf,
                Nome = pessoa.Nome
            });
        }