Exemplo n.º 1
0
        public async Task <IActionResult> CadastrarPessoa([FromBody, SwaggerParameter("Informações de cadastro da pessoa.", Required = true)] PessoaViewModel viewModel)
        {
            var entrada = new PessoaEntrada(
                base.ObterIdUsuarioClaim(),
                viewModel.Nome);

            return(new ApiResult(await _pessoaServico.CadastrarPessoa(entrada)));
        }
Exemplo n.º 2
0
        public void Alterar(PessoaEntrada entrada)
        {
            if (entrada.Invalido)
            {
                return;
            }

            this.Nome = entrada.Nome;
        }
Exemplo n.º 3
0
        public async Task <IActionResult> AlterarPessoa(
            [FromQuery, SwaggerParameter("ID da pessoa.", Required = true)] int idPessoa,
            [FromBody, SwaggerParameter("Informações para alteração de uma pessoa.", Required = true)] PessoaViewModel model)
        {
            var entrada = new PessoaEntrada(
                base.ObterIdUsuarioClaim(),
                model.Nome);

            return(new ApiResult(await _pessoaServico.AlterarPessoa(idPessoa, entrada)));
        }
Exemplo n.º 4
0
        public Pessoa(PessoaEntrada entrada)
        {
            if (entrada.Invalido)
            {
                return;
            }

            this.IdUsuario = entrada.IdUsuario;
            this.Nome      = entrada.Nome;
        }
Exemplo n.º 5
0
        public async Task <ISaida> AlterarPessoa(int idPessoa, PessoaEntrada entrada)
        {
            // Verifica se as informações para alteração foram informadas corretamente
            if (entrada.Invalido)
            {
                return(new Saida(false, entrada.Mensagens, null));
            }

            var pessoa = await _pessoaRepositorio.ObterPorId(idPessoa);

            // Verifica se a pessoa existe
            this.NotificarSeNulo(pessoa, string.Format(PessoaMensagem.Id_Pessoa_Nao_Existe, idPessoa));

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

            // Verifica se a pessoa pertece ao usuário informado.
            this.NotificarSeDiferentes(pessoa.IdUsuario, entrada.IdUsuario, PessoaMensagem.Pessoa_Alterar_Nao_Pertence_Usuario);

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

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

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

            pessoa.Alterar(entrada);

            _pessoaRepositorio.Atualizar(pessoa);

            await _uow.Commit();

            return(new Saida(true, new[] { PessoaMensagem.Pessoa_Alterada_Com_Sucesso }, new PessoaSaida(pessoa)));
        }
Exemplo n.º 6
0
        public async Task <ISaida> CadastrarPessoa(PessoaEntrada entrada)
        {
            // Verifica se as informações para cadastro foram informadas corretamente
            if (entrada.Invalido)
            {
                return(new Saida(false, entrada.Mensagens, null));
            }

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

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

            var pessoa = new Pessoa(entrada);

            await _pessoaRepositorio.Inserir(pessoa);

            await _uow.Commit();

            return(new Saida(true, new[] { PessoaMensagem.Pessoa_Cadastrada_Com_Sucesso }, new PessoaSaida(pessoa)));
        }