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))); }
public async Task <ISaida> CadastrarPessoa([FromBody, SwaggerParameter("Informações de cadastro da pessoa.", Required = true)] CadastrarPessoaViewModel viewModel) { var cadastrarEntrada = new CadastrarPessoaEntrada( base.ObterIdUsuarioClaim(), viewModel.Nome); return(await _pessoaServico.CadastrarPessoa(cadastrarEntrada)); }
public Pessoa(CadastrarPessoaEntrada cadastrarEntrada) { if (cadastrarEntrada.Invalido) { return; } this.IdUsuario = cadastrarEntrada.IdUsuario; this.Nome = cadastrarEntrada.Nome; }
public void Nao_Deve_Cadastrar_Pessoa_Com_Parametros_Invalidos() { var cadastroEntrada = new CadastrarPessoaEntrada(0, string.Empty); _pessoaServico = Substitute.For <PessoaServico>(_pessoaRepositorio, _uow); var saida = _pessoaServico.CadastrarPessoa(cadastroEntrada).Result; Assert.IsTrue(!saida.Sucesso && saida.Mensagens.Any(x => x == PessoaMensagem.Nome_Obrigatorio_Nao_Informado), string.Join(", ", saida.Mensagens)); }