public async Task <RendaPorPessoaDto> Armazenar(RendaPorPessoaDto dto)
        {
            if (!ValidarDto(dto))
            {
                return(null);
            }

            var rendaPorPessoa = new RendaPorPessoa(
                dto.PessoaId,
                dto.NomePessoa,
                dto.Valor);

            if (rendaPorPessoa.Invalid)
            {
                Notificador.Notificar(rendaPorPessoa.Notificacoes);
                return(null);
            }

            await _rendaPorPessoaRepositorio.Incluir(rendaPorPessoa);

            await _rendaPorPessoaRepositorio.Salvar();

            var retorno = new RendaPorPessoaDto
            {
                Id         = rendaPorPessoa.Id,
                PessoaId   = rendaPorPessoa.PessoaId,
                NomePessoa = rendaPorPessoa.NomePessoa,
                Valor      = rendaPorPessoa.Valor
            };

            _alteradorDePontosPorInsercaoDeRenda.Alterar(retorno);

            return(retorno);
        }
Пример #2
0
        public async Task <PessoaDto> Armazenar(PessoaDto dto)
        {
            if (!ValidarDto(dto))
            {
                return(null);
            }

            var pessoa = new Pessoa(dto.Nome, dto.DataDeNascimento, (TipoDaPessoaEnum)dto.TipoDaPessoa);

            if (pessoa.Invalid)
            {
                Notificador.Notificar(pessoa.Notificacoes);
                return(null);
            }

            await _pessoaRepositorio.Incluir(pessoa);

            await _pessoaRepositorio.Salvar();

            return(new PessoaDto
            {
                Id = pessoa.Id,
                Nome = pessoa.Nome,
                DataDeNascimento = pessoa.DataDeNascimento
            });
        }
        private bool ValidarDto(FamiliaDto dto)
        {
            if (dto == null)
            {
                Notificador.Notificar("Dto", FamiliaDicionarioDeMensagensDeValidacao.MensagemDtoInvalido);
                return(false);
            }

            return(true);
        }
Пример #4
0
        private bool ValidarDto(PessoaDto dto)
        {
            if (dto == null || dto.TipoDaPessoa <= 0)
            {
                Notificador.Notificar("Dto", PessoaDicionarioDeMensagensDeValidacao.MensagemDtoInvalido);
                return(false);
            }

            return(true);
        }
        private bool ValidarPessoas(List <PessoaDto> pessoas)
        {
            _pessoasContrato.ValidarContrato(pessoas);

            if (_pessoasContrato.Invalid)
            {
                Notificador.Notificar(_pessoasContrato.Notifications);
            }

            return(_pessoasContrato.Valid);
        }
        private bool ValidarRendaPorPessoas(List <RendaPorPessoaDto> rendaPorPessoas)
        {
            _rendaPorPessoasContrato.ValidarContrato(rendaPorPessoas);

            if (_rendaPorPessoasContrato.Invalid)
            {
                Notificador.Notificar(_pessoasContrato.Notifications);
            }

            return(_rendaPorPessoasContrato.Valid);
        }
        public async Task <FamiliaDto> Armazenar(FamiliaDto dto)
        {
            if (!ValidarDto(dto))
            {
                return(null);
            }

            if (!ValidarPessoas(dto.Pessoas))
            {
                return(null);
            }

            if (!ValidarRendaPorPessoas(dto.RendaPorPessoas))
            {
                return(null);
            }

            if (await ValidarSeHaPessoasJahInformadasEmOutraFamilia(dto.Pessoas))
            {
                return(null);
            }

            var familia = new Familia(
                InstanciaPessoas(dto.Pessoas),
                InstanciaRendaPorPessoas(dto.RendaPorPessoas)
                );

            if (familia.Invalid)
            {
                Notificador.Notificar(familia.Notificacoes);
                return(null);
            }

            await _familiaRepositorio.Incluir(familia);

            await _familiaRepositorio.Salvar();

            return(MontarDtoDeRetorno(familia));
        }
        public async Task <FamiliaDto> Armazenar(FamiliaDto dto)
        {
            if (!ValidarDto(dto))
            {
                return(null);
            }

            if (!ValidarPessoas(dto.Pessoas))
            {
                return(null);
            }

            if (!ValidarRendaPorPessoas(dto.RendaPorPessoas))
            {
                return(null);
            }

            var familia = new Familia(
                dto.Id,
                InstanciaPessoas(dto.Pessoas),
                InstanciaRendaPorPessoas(dto.RendaPorPessoas),
                dto.Status
                );

            var pontuacaoPorFamilia = new PontuacaoPorFamilia(familia);

            if (pontuacaoPorFamilia.Invalid)
            {
                Notificador.Notificar(pontuacaoPorFamilia.Notificacoes);
                return(null);
            }

            await _pontuacaoPorFamiliaRepositorio.Incluir(pontuacaoPorFamilia);

            await _pontuacaoPorFamiliaRepositorio.Salvar();

            return(MontarDtoDeRetorno(pontuacaoPorFamilia));
        }
Пример #9
0
 public override void Notificar(string mensagem)
 {
     _notificador.Notificar(mensagem);
 }