public Pessoa Post([FromBody] CriarPessoaCommand command) { var pessoa = new Pessoa(command.NomePessoa); _pessoaRepository.Save(pessoa); return(pessoa); }
public void Quando_criar__com_todos_os_dados_corretamente__devera_constar_respectivamente() { var command = new CriarPessoaCommand(_entityId, _nome, _cpf); command.EntityId.Should().Be(_entityId); command.Nome.Should().Be(_nome); command.Cpf.Should().Be(_cpf); }
private async Task Create() { _mockPessoaRepository.Setup(x => x.ObterPorCpfAsync(It.IsAny <string>())) .Returns(Task.FromResult(new Domain.Pessoa { })); _command = new CriarPessoaCommand(_entityId, _nome, _cpf); _handler = new CriarPessoaCommandHandler(_mockPessoaRepository.Object); await _handler.HandleAsync(_command); }
public async Task <Guid> CriarAsync(string nome, string cpf) { var pessoaId = Guid.NewGuid(); var command = new CriarPessoaCommand(pessoaId, nome, cpf); await _commandDispatcher.DispatchAsync(command); await _unitOfWork.CommitAsync(); return(pessoaId); }
public async Task <IActionResult> Criar([FromBody] CriarPessoaCommand command) { try { _pessoaService.Criar(command); return(await Response(null, _pessoaService.Notifications)); } catch (Exception ex) { return(await base.TryErrors(ex)); } }
private async Task Create() { _mockPessoaRepository.Setup(x => x.AddAsync(It.IsAny <Domain.Pessoa>())) .Callback((Domain.Pessoa pessoa) => { _pessoaCallBack = pessoa; }); _command = new CriarPessoaCommand(_entityId, _nome, _cpf); _handler = new CriarPessoaCommandHandler(_mockPessoaRepository.Object); await _handler.HandleAsync(_command); }
private Pessoa ExistePai(CriarPessoaCommand command) { if (string.IsNullOrWhiteSpace(command.NomePai)) { return(null); } var pai = _pessoaRepository.BuscaPorNomeSobrenome(command.NomePai, command.SobrenomePai); if (pai == null) { _pessoaRepository.Add(new Pessoa(command.NomePai, command.SobrenomePai)); pai = _pessoaRepository.BuscaPorNomeSobrenome(command.NomePai, command.SobrenomePai); } return(pai); }
private Pessoa ExisteMae(CriarPessoaCommand command) { if (string.IsNullOrWhiteSpace(command.NomeMae)) { return(null); } var mae = _pessoaRepository.BuscaPorNomeSobrenome(command.NomeMae, command.SobrenomeMae); if (mae == null) { _pessoaRepository.Add(new Pessoa(command.NomeMae, command.SobrenomeMae)); mae = _pessoaRepository.BuscaPorNomeSobrenome(command.NomeMae, command.SobrenomeMae); } return(mae); }
public void Criar(CriarPessoaCommand command) { using (var trans = new TransactionScope()) { var pessoa = _pessoaRepository.BuscaPorNomeSobrenome(command.Nome, command.Sobrenome) ?? new Pessoa(command.Nome, command.Sobrenome); if (string.IsNullOrWhiteSpace(command.Nome) || string.IsNullOrWhiteSpace(command.Sobrenome)) { this.AddNotification("Nome e Sobrenome", "Nome e Sobrenome são obrigatórios"); } if (this.Invalid) { return; } pessoa.Genero = command.Genero; pessoa.Etnia = command.Etnia; pessoa.Escolaridade = command.Escolaridade; pessoa.Regiao = command.Regiao; if (command.Regiao == 0) { this.AddNotification("Regiao", "A região é obrigatória para o censo"); } if (this.Invalid) { return; } pessoa.Pai = ExistePai(command); pessoa.Mae = ExisteMae(command); //Adiciona a pessoa _pessoaRepository.AdicionaOuAtualiza(pessoa, pessoa.Pai.PessoaId, pessoa.Mae.PessoaId); //Adiciona os filhos AdicionaFilhos(command.Filhos, command.Genero, pessoa); trans.Complete(); } }
public async Task Criar_CadastroDoCenso() { //Consigo inserir minha irmã que não possui filhos var pessoa = new CriarPessoaCommand { Nome = "Milena", Sobrenome = "Parra", NomePai = "Mauro", SobrenomePai = "Parra", NomeMae = "Naira", SobrenomeMae = "Parra", Escolaridade = EEscolaridade.SuperiorCompleto, Etnia = EEtnia.Branco, Genero = EGenero.Feminino, Regiao = ERegiao.Sudeste }; var json = JsonConvert.SerializeObject(pessoa); var data = new StringContent(json, Encoding.UTF8, "application/json"); var response = await _client.PostAsync("/api/v1/censo/criar", data); response.EnsureSuccessStatusCode(); }
private async Task <HttpResponseMessage> CriarEstudante(CriarPessoaCommand cmd) { return(await DoPostRequest("/Pessoa/CriarPessoa", cmd)); }
public void Initialize() { _userService.CreateAdminUserWhenDontHaveManagerUsers(); var criarEstudante = new CriarPessoaCommand() { Perfil = Perfil.Estudante, Id = Guid.NewGuid(), Nome = "Felipe", Username = "******", Password = "******", CPF = "12345678901", DataNascimento = DateTime.Now.AddYears(-23) }; _mediator.Send(criarEstudante); var semestres = SalvaSemestres(); var horarios = SalvaHorarios(); var computacaoCienciaProfissao = CriarSemestreDisciplina("Computação, Ciência e Profissão", 40, 1); var metodologiaCientifica = CriarSemestreDisciplina("Metodologia Científica", 40, 1); var calculo = CriarSemestreDisciplina("Calculo", 80, 1); var calcVelotorialGeometriaAnaliticaPlana = CriarSemestreDisciplina("Calc. Vetorial e Geometria Analítica Plana", 80, 1); var algoritmos = CriarSemestreDisciplina("Algoritmos", 80, 1); var logicaMatematica = CriarSemestreDisciplina("Introdução Logica Matematica", 80, 1); var calculo2 = CriarSemestreDisciplina("Calculo II", 80, 2, calculo); var calcVetorialGeometriaAnaliticaEspacial = CriarSemestreDisciplina("Calc. Vetorial e Geometria Analítica Espacial", 80, 2, calcVelotorialGeometriaAnaliticaPlana); var fisica = CriarSemestreDisciplina("Física I", 80, 2); var labSO = CriarSemestreDisciplina("Lab SO", 40, 2); var labProgConstSoftware = CriarSemestreDisciplina("Lab Prog e Const Software", 80, 2, algoritmos); var redacaoEmpresarial = CriarSemestreDisciplina("Redação Empresarial", 40, 3); var psicologiaOrganizacional = CriarSemestreDisciplina("Psicologia Organizacional", 40, 3); var calculo3 = CriarSemestreDisciplina("Cálculo III", 80, 3, calculo2); var fisica2 = CriarSemestreDisciplina("Física II", 80, 3, fisica); var arqComputadores = CriarSemestreDisciplina("Arq. Computadores", 80, 3, labSO); var estruturaDados1 = CriarSemestreDisciplina("Estrutura Dados I ", 80, 3); var algebraLinear = CriarSemestreDisciplina("Álgebra Linear", 80, 4); var fisica3 = CriarSemestreDisciplina("Física III", 80, 4, fisica2); var fundamentosEngDeSoftware = CriarSemestreDisciplina("Fundamentos de Eng. De Software", 80, 4); var programacaoWeb = CriarSemestreDisciplina("Programação Web", 80, 4); var estruturaDados2 = CriarSemestreDisciplina("Estrutura de Dados II", 80, 4, estruturaDados1); var eqDifSeries = CriarSemestreDisciplina("Eq Diferen Séries", 80, 5); var fundProbabEstatística = CriarSemestreDisciplina("Fund Probab Estatística", 40, 5); var teoriaDaComputacao = CriarSemestreDisciplina("Teoria da Computação", 40, 5); var bancoDeDados = CriarSemestreDisciplina("Banco de Dados I", 80, 5); var fundamentosDeAutomacao = CriarSemestreDisciplina("Fundamentos de Automação", 80, 5); var fundSistEletroEletronicos = CriarSemestreDisciplina("Fund Sist ElétroEletrônicos", 80, 5); var bancoDeDados2 = CriarSemestreDisciplina("Banco de Dados II", 40, 6, bancoDeDados); var sistemasOperacionais = CriarSemestreDisciplina("Sistemas Operacionais", 80, 6); var labProgConstSoftOO = CriarSemestreDisciplina("Lab Prog Const Soft OO", 80, 6); var sistemasDeControle = CriarSemestreDisciplina("Sistemas de Controle", 80, 6); var fundSistDigitais = CriarSemestreDisciplina("Fund Sist Digitais", 80, 6); var eticaNaEngenharia = CriarSemestreDisciplina("Ética na Engenharia", 40, 7); var fisica4 = CriarSemestreDisciplina("Física IV", 80, 7, fisica3); var arquiteturaModelagemDeSoftware = CriarSemestreDisciplina("Arquitetura e Modelagem de Software", 80, 7, fisica3); var labProjSistDig = CriarSemestreDisciplina("Lab Proj Sist Dig", 80, 7); var engenhariaDeSistemasEmbarcados = CriarSemestreDisciplina("Engenharia de Sistemas Embarcados", 80, 7); var fundamentosDeAdministracao = CriarSemestreDisciplina("Fundamentos de Administração", 40, 8); var redesDeComputadores = CriarSemestreDisciplina("Redes de Computadores", 80, 8); var dispositivosProgramáveisMicroMicro = CriarSemestreDisciplina("Dispositivos Programáveis e Micro & micro", 80, 8); var projetoIntegração = CriarSemestreDisciplina("Projeto de Integração", 80, 8); var tcc1 = CriarSemestreDisciplina("TCC I", 40, 8); var gereneciaDeProjeto = CriarSemestreDisciplina("Gerência de Projetos", 80, 9); var oHomemFenomenoReligioso = CriarSemestreDisciplina("O Homem e o Fenômeno Religioso", 40, 9); var sistemaOperacionaisDeTempoReal = CriarSemestreDisciplina("Sistemas Operacionais de Tempo Real", 40, 9); var teleprocessamento = CriarSemestreDisciplina("Teleprocessamento", 40, 9); var fundamentosDeRobotica = CriarSemestreDisciplina("Fundamentos de Robótica", 80, 9); var laboratorioDeSistemasEmbarcados = CriarSemestreDisciplina("Laboratório de Sistemas Embarcados", 80, 9); var tcc2 = CriarSemestreDisciplina("TCC II", 40, 9, tcc1); var fundamentosDeEconomia = CriarSemestreDisciplina("Fundamentos de Economia", 40, 10); var inteligenciaArtifical = CriarSemestreDisciplina("Inteligência Artificial", 40, 10); var sistemaDistribuidos = CriarSemestreDisciplina("Sistemas Distribuídos", 40, 10); var auditoriaSegurancaDeRedes = CriarSemestreDisciplina("Auditoria e Segurança de Redes", 40, 10); var estagioSupervisionado = CriarSemestreDisciplina("Estágio Supervisionado", 80, 10); var tcc3 = CriarSemestreDisciplina("TCC II", 40, 10, tcc2); var grade = new Grade() { Id = Guid.NewGuid(), Ano = 2020, SemestreDisciplinas = new List <SemestreDisciplina>() { computacaoCienciaProfissao, metodologiaCientifica, calculo, calcVelotorialGeometriaAnaliticaPlana, algoritmos, logicaMatematica, calculo2, calcVetorialGeometriaAnaliticaEspacial, fisica, labSO, labProgConstSoftware, redacaoEmpresarial, psicologiaOrganizacional, calculo3, fisica2, arqComputadores, estruturaDados1, algebraLinear, fisica3, fundamentosEngDeSoftware, programacaoWeb, estruturaDados2, eqDifSeries, fundProbabEstatística, teoriaDaComputacao, bancoDeDados, fundamentosDeAutomacao, fundSistEletroEletronicos, bancoDeDados2, sistemasOperacionais, labProgConstSoftOO, sistemasDeControle, fundSistDigitais, eticaNaEngenharia, fisica4, arquiteturaModelagemDeSoftware, labProjSistDig, engenhariaDeSistemasEmbarcados, fundamentosDeAdministracao, redesDeComputadores, dispositivosProgramáveisMicroMicro, projetoIntegração, tcc1, gereneciaDeProjeto, oHomemFenomenoReligioso, sistemaOperacionaisDeTempoReal, teleprocessamento, fundamentosDeRobotica, laboratorioDeSistemasEmbarcados, tcc2, fundamentosDeEconomia, inteligenciaArtifical, sistemaDistribuidos, auditoriaSegurancaDeRedes, estagioSupervisionado, tcc3 } }; _f7DbContext.Add(grade); var curso = new Curso() { Id = Guid.NewGuid(), Nome = "Engenharia da Computação", Grades = new[] { grade }, }; grade.Curso = curso; _f7DbContext.Add(curso); var professorRogerio = new PessoaUsuario() { Id = Guid.NewGuid(), Nome = "Rogerio", Perfil = Perfil.Professor, }; var professorAfonso = new PessoaUsuario() { Id = Guid.NewGuid(), Nome = "Afonso", Perfil = Perfil.Professor, }; var turmaDeCalculo = new Turma() { Sala = "101A", Id = Guid.NewGuid(), Disciplina = calculo.Disciplina, Semestre = semestres.semestre, Professor = professorAfonso, }; _f7DbContext.TurmaDbSet.Add(turmaDeCalculo); var turmaDeCalculo2 = new Turma() { Sala = "101A", Id = Guid.NewGuid(), Disciplina = calculo2.Disciplina, Semestre = semestres.semestre2, Professor = professorAfonso, }; _f7DbContext.TurmaDbSet.Add(turmaDeCalculo); var turmaDeLogicaMatematica = new Turma() { Sala = "102A", Id = Guid.NewGuid(), Disciplina = logicaMatematica.Disciplina, Semestre = semestres.semestre2, Professor = professorRogerio, }; var turmaDeAlgoritmos = new Turma() { Sala = "103A", Id = Guid.NewGuid(), Disciplina = algoritmos.Disciplina, Semestre = semestres.semestre2, Professor = professorRogerio }; var turmaDeCalculoHorarios = new List <TurmaHorario> { new TurmaHorario { Horario = horarios[0], Turma = turmaDeCalculo }, new TurmaHorario { Horario = horarios[1], Turma = turmaDeCalculo }, new TurmaHorario { Horario = horarios[6], Turma = turmaDeCalculo2 }, new TurmaHorario { Horario = horarios[7], Turma = turmaDeCalculo2 }, new TurmaHorario { Horario = horarios[1], Turma = turmaDeLogicaMatematica }, new TurmaHorario { Horario = horarios[2], Turma = turmaDeLogicaMatematica }, new TurmaHorario { Horario = horarios[4], Turma = turmaDeAlgoritmos }, new TurmaHorario { Horario = horarios[5], Turma = turmaDeAlgoritmos } }; _f7DbContext.AddRange(turmaDeCalculoHorarios); var inscricao = new Inscricao() { Completa = true, P1 = 10, P2 = 9, Turma = turmaDeCalculo, DataInscricao = DateTime.Now.AddMonths(-6), Id = Guid.NewGuid(), }; var matricula = new Matricula() { Grade = grade, Id = Guid.NewGuid(), PessoaUsuarioId = criarEstudante.Id, Ativo = true, Inscricoes = new List <Inscricao>() { inscricao }, }; inscricao.MatriculaId = matricula.Id; _f7DbContext.Add(matricula); _f7DbContext.Add(inscricao); var config = new Configuration() { NotaMedia = 6, SemestreAtual = semestres.semestre2 }; _f7DbContext.Configurations.Add(config); _f7DbContext.SaveChanges(); }
public IActionResult CriarPessoa([FromBody] CriarPessoaCommand cmd) { _mediator.Send(cmd); return(Ok()); }