public void FixtureSetUp()
        {
            _portabilidade = PortabilidadeApropriadaBuilder.UmBuilder().Padrao().Build();
            var premioAnterior = PremioBuilder.Um().Padrao().ComTipoMovimento((short)TipoMovimentoEnum.Inexistente).Build();

            var retornoCobertura = CoberturaContratadaBuilder.Uma().Padrao().ComRegimeFinanceiro((short)TipoRegimeFinanceiroEnum.FundoAcumulacao);
            var movimento        = MovimentoProvisaoBuilder.UmBuilder().Padrao();

            _retornoMovimento = new List <MovimentoProvisao>()
            {
                movimento.Build()
            };

            var retornoPremio = PremioBuilder.Um().Padrao()
                                .Com(movimento)
                                .Com(retornoCobertura)
                                .Build();

            MockingKernel.GetMock <IPremioService>()
            .Setup(x => x.CriarPremio(It.IsAny <Premio>(), It.IsAny <EventoPremio>())).Returns(Task.FromResult(retornoPremio));

            MockingKernel.GetMock <ICoberturas>()
            .Setup(x => x.ObterPorItemCertificado(It.IsAny <long>())).Returns(Task.FromResult(retornoCobertura.Build()));

            MockingKernel.GetMock <ICalculadorProvisaoPremio>()
            .Setup(x => x.CriarProvisao(It.IsAny <Premio>())).Returns(_retornoMovimento.AsEnumerable());

            MockingKernel.GetMock <IPremios>()
            .Setup(x => x.ObterPremioAnterior(It.IsAny <long>(), It.IsAny <int>())).Returns(Task.FromResult(premioAnterior));

            _evento = MockingKernel.Get <EventoPremioFactory>().Fabricar(_portabilidade).Result;
        }
        public void FixtureSetUp()
        {
            _parcelaAjustada = ParcelaAjustadaBuilder.UmBuilder().Padrao().Build();

            var premioAnterior = PremioBuilder.Um().Padrao().ComTipoMovimento((short)TipoMovimentoEnum.Emissao).Build();

            var retornoCobertura = CoberturaContratadaBuilder.Uma().Padrao();
            var movimento        = MovimentoProvisaoBuilder.UmBuilder().Padrao();

            _retornoMovimento = new List <MovimentoProvisao>()
            {
                movimento.Build()
            };

            var retornoPremio = PremioBuilder.Um().Padrao()
                                .Com(movimento)
                                .Com(retornoCobertura)
                                .Build();

            MockingKernel.GetMock <IPremioService>()
            .Setup(x => x.CriarPremio(It.IsAny <Premio>(), It.IsAny <EventoPremio>())).Returns(Task.FromResult(retornoPremio));

            MockingKernel.GetMock <ICoberturas>()
            .Setup(x => x.ObterPorItemCertificado(It.IsAny <long>())).Returns(Task.FromResult(retornoCobertura.Build()));

            MockingKernel.GetMock <ICalculadorProvisaoPremio>()
            .Setup(x => x.CriarProvisao(It.IsAny <Premio>())).Returns(_retornoMovimento.AsEnumerable());

            MockingKernel.GetMock <IPremios>()
            .Setup(x => x.ObterPremioAnterior(It.IsAny <long>(), It.IsAny <int>())).Returns(Task.FromResult(premioAnterior));

            _evento = MockingKernel.Get <FabricarEventoPremio>().Com(_parcelaAjustada).Result;
        }
예제 #3
0
        public BaseEntity BuildObject(Dictionary <string, object> row)
        {
            var eventoPremio = new EventoPremio()
            {
                IdEvento = GetIntValue(row, DbColIdEvento),
                IdPremio = GetIntValue(row, DbColIdPremio),
            };

            return(eventoPremio);
        }
예제 #4
0
 public void Create(EventoPremio eventoPremio)
 {
     try
     {
         _factory.Create(eventoPremio);
     }
     catch (Exception ex)
     {
         _exMan.ManageException(ex);
     }
 }
예제 #5
0
        public EventoPremio Retrieve(EventoPremio eventoPremio)
        {
            var list = new EventoPremio();

            try
            {
                list = _factory.Retrieve <EventoPremio>(eventoPremio);
            }
            catch (Exception ex)
            {
                _exMan.ManageException(ex);
            }
            //como lo que necesito devolver es solo un registro
            // entonces lo devuelto como tipo User que es la clase
            // de la que necesito mostrar los datos en los campos en el form

            return(list);
        }
예제 #6
0
        public static void ToProvisao(this IParcela premioEntrada, EventoPremio eventoPremio)
        {
            var premioCadastrado = eventoPremio.Premios.First(p => p.ItemCertificadoApoliceId == long.Parse(premioEntrada.ParcelaId.IdentificadorExternoCobertura));

            Assertion.NotNull(premioCadastrado, "Não foi possível obter as coberturas para preencher as provisões a serem devolvidas no evento.").Validate();

            var provisoes = new List <IProvisao>();

            foreach (var movimento in premioCadastrado.MovimentosProvisao)
            {
                provisoes.Add(new ProvisaoDto()
                {
                    Valor = movimento.ValorProvisao,
                });
            }

            premioEntrada.Provisoes = provisoes;
        }
예제 #7
0
        public List <T> RetrieveByName <T>(EventoPremio eventoPremio)
        {
            var lst = new List <T>();

            try
            {
                var list = _factory.RetrieveByName <EventoPremio>(eventoPremio);
                if (list.Count > 0)
                {
                    foreach (var obj in list)
                    {
                        lst.Add((T)Convert.ChangeType(obj, typeof(T)));
                        //se convierte la lista a un tipo List<T> para que pueda ser retornada
                        //al formulario y reconocida como una lista de una instancia de User's
                    }
                }
            }
            catch (Exception ex)
            {
                _exMan.ManageException(ex);
            }
            return(lst); //se retorna la lista al formulario
        }
예제 #8
0
        public async Task <Premio> CriarPremio(Premio premio, EventoPremio evento)
        {
            var cobertura = await _coberturas.ObterPorItemCertificado(premio.ItemCertificadoApoliceId);

            if (!evento.RegimeFinanceiroPermitido.Contains(cobertura.RegimeFinanceiroId.GetValueOrDefault()))
            {
                return(null);
            }

            var contribuicoes = await ObterNumeroContribuicoes(premio, cobertura.NumeroContribuicoesInicial);

            cobertura.ComNumeroContribuicoes(contribuicoes);

            premio.ComCobertura(cobertura)
            .ComTipoMovimento((short)evento.TipoMovimento)
            .InformaEvento(evento);

            await ValidarPremioAnterior(premio);

            premio.AdicionarMovimentoProvisao(_calculador.CriarProvisao(premio));

            return(premio);
        }