Exemple #1
0
        public DadosProdutoBuilder ComChaveProduto(ChaveProduto key)
        {
            Instance.ItemProdutoId          = key.ItemProdutoId;
            Instance.TipoFormaContratacaoId = key.TipoFormaContratacaoId;
            Instance.DataVigenciaCobertura  = key.DataVigencia;

            return(this);
        }
Exemple #2
0
 private ParametrosAmbienteDeProvisao ObterParametrosDeProvisao(ChaveProduto key)
 {
     return(new ParametrosAmbienteDeProvisao
     {
         ItemProdutoId = key.ItemProdutoId,
         TipoFormaContratacaoId = (short)key.TipoFormaContratacaoId,
         TipoRendaId = key.TipoRendaId,
         DataVigencia = key.DataVigencia
     });
 }
        public new void FixtureSetUp()
        {
            _chave = ChaveProdutoBuilder.UmaChave().Build();

            _dadosProduto = DadosProdutoBuilder.Um().Padrao().Build();

            _produtoAdapter = new Mock <IProdutoAdapter>();
            _produtoAdapter.Setup(p => p.ObterDadosProduto(It.IsAny <ChaveProduto>())).Returns(_dadosProduto);

            _produtoConteiner = new ProdutoContainer(_produtoAdapter.Object);

            _produtoConteiner.GetValue(_chave);
        }
Exemple #4
0
        protected void FixtureSetUp()
        {
            _chave = ChaveProdutoBuilder.UmaChave().Build();

            _detalhe = DadosProdutoBuilder.Um().Padrao().Build();

            _adapter = new Mock <IProdutoAdapter>();
            _adapter.Setup(p => p.ObterDadosProduto(_chave)).Returns(_detalhe);

            _servicoProduto = new ProdutoContainer(_adapter.Object);

            _detalhe = _servicoProduto.GetValue(_chave);
        }
        public void FixtureSetUp()
        {
            _chave1 = ChaveProdutoBuilder.UmaChave().Build();
            _chave2 = ChaveProdutoBuilder.UmaChave().Build();
            _chave3 = ChaveProdutoBuilder.UmaPersonalizada(
                IdentificadoresPadrao.ItemProdutoId,
                IdentificadoresPadrao.TipoFormaContratacaoId,
                null, IdentificadoresPadrao.DataInicioVigencia)
                      .Build();

            _chave4 = ChaveProdutoBuilder.UmaPersonalizada(
                IdentificadoresPadrao.ItemProdutoId,
                IdentificadoresPadrao.TipoFormaContratacaoId,
                IdentificadoresPadrao.TipoRendaId, IdentificadoresPadrao.DataInicioVigencia.AddYears(2))
                      .Build();

            _chave1.SetVigencia(IdentificadoresPadrao.DataInicioVigenciaProduto, IdentificadoresPadrao.DataFimVigenciaProduto);
            _chave2.SetVigencia(IdentificadoresPadrao.DataInicioVigenciaProduto, IdentificadoresPadrao.DataFimVigenciaProduto);
            _chave3.SetVigencia(IdentificadoresPadrao.DataInicioVigenciaProduto, IdentificadoresPadrao.DataFimVigenciaProduto);
            _chave4.SetVigencia(IdentificadoresPadrao.DataInicioVigenciaProduto, IdentificadoresPadrao.DataFimVigenciaProduto);
        }
Exemple #6
0
 public DadosProduto ObterDadosProduto(ChaveProduto key)
 {
     return(new DadosProduto()
     {
         ItemProdutoId = 200419,
         TipoFormaContratacaoId = (int)TipoFormaContratacaoEnum.CapitalSegurado,
         DataVigenciaCobertura = new DateTime(2017, 4, 3),
         DataInicioVigencia = DateTime.Now.AddYears(-2),
         DataFimVigencia = DateTime.Now.AddYears(1),
         ProdutoId = 1589,
         NomeProduto = "SEGURO TOTAL MISTO 10",
         NumeroProcessoSusep = "15414.0001996/2007-61",
         RegimeFinanceiroId = 1,
         TipoItemProdutoId = (int)TipoItemProdutoEnum.VidaIndividual,
         ModalidadeCoberturaId = 1,
         IndiceBeneficioId = 3,
         IndiceContribuicaoId = 3,
         PermiteResgateParcial = true,
         ProvisoesPossiveis = 2099,
         PlanoFipSusep = 0,
         NumeroBeneficioSusep = null
     });
 }
Exemple #7
0
        public virtual DadosProduto ObterDadosProduto(ChaveProduto key)
        {
            var itemProduto = _produtoService.ObterItensDoCadastroPorIds(key.DataVigencia, new List <int>()
            {
                key.ItemProdutoId
            }.ToArray()).Valor?.First();

            Assertion.NotNull(itemProduto, $"Não foi encontrado cadastro do item produto {key.ItemProdutoId} vigente em {key.DataVigencia:yyyy-MM--dd}").Validate();

            var ambienteProvisao = _calculoService.ObterAmbienteDeProvisoes(new List <ParametrosAmbienteDeProvisao>()
            {
                ObterParametrosDeProvisao(key)
            });

            Assertion.IsTrue(ambienteProvisao.Valor.Any(), $"Não foram encontrado informações para o ItemProduto: {key.ItemProdutoId}, " +
                             $"com a data de vigencia: {key.DataVigencia.ToString("dd/MM/yyyy")} e TipoFormaContrataca: {key.TipoFormaContratacaoId} .").Validate();

            return(ambienteProvisao.Valor.Select(dto => new DadosProduto
            {
                ItemProdutoId = dto.CarregamentoDoItemProduto.ItemProdutoId,
                TipoFormaContratacaoId = key.TipoFormaContratacaoId,
                DataVigenciaCobertura = key.DataVigencia,
                DataInicioVigencia = itemProduto.DataDaVigencia,
                DataFimVigencia = itemProduto.DataFimVigencia,
                ProdutoId = dto.CarregamentoDoItemProduto.ProdutoId,
                NomeProduto = dto.CarregamentoDoItemProduto.NomeProduto,
                NumeroProcessoSusep = dto.CarregamentoDoItemProduto.NumeroProcessoSusep,
                RegimeFinanceiroId = dto.CarregamentoDoItemProduto.RegimeFinanceiroId,
                TipoItemProdutoId = dto.CarregamentoDoItemProduto.TipoItemProdutoId,
                ModalidadeCoberturaId = dto.CarregamentoDoItemProduto.ModalidadeDaCoberturaId,
                IndiceBeneficioId = dto.CarregamentoDoItemProduto.IndiceBeneficioId,
                IndiceContribuicaoId = dto.CarregamentoDoItemProduto.IndiceContribuicaoId,
                PermiteResgateParcial = dto.PermiteResgateParcial,
                NumeroBeneficioSusep = dto.CarregamentoDoItemProduto.NumeroBeneficioSusep,
                ProvisoesPossiveis = itemProduto.EhServico ? (int)TipoProvisaoEnum.Nenhuma : ProvisoesAConstituir(dto)
            }).FirstOrDefault());
        }