private void PreencherSimuladorAbaTabelasSubPlano() { if (Convert.ToInt32(cmbAba5Sub5Sub1Produto.SelectedValue) == (int)ProdutoPrincipal.PLANOPROTECAO && cmbAba5Sub5Sub2Morte.SelectedIndex > 0 && cmbAba5Sub5Sub2Funeral.SelectedIndex > 0) { TPlanoProtecaoDOMINIO registro = ControllerPlanoProtecao.CalcularPremioFuneral(Convert.ToDecimal(cmbAba5Sub5Sub2Morte.SelectedValue), 0, 0, Convert.ToInt32(cmbAba5Sub5Sub2Funeral.SelectedValue), Convert.ToInt32(cmbAba5Sub5Sub1FaixaBase.SelectedValue)); lblAba5Sub5Sub2AssistOUConjValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.CoberturaAcidente); lblAba5Sub5Sub2IPAValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.CoberturaEmergencia); lblAba5Sub5Sub2PremioPlanoValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.ValorPremioIdadeBase.GetValueOrDefault()); } if (Convert.ToInt32(cmbAba5Sub5Sub1Produto.SelectedValue) == (int)ProdutoPrincipal.PLANOSENIOR && cmbAba5Sub5Sub2Morte.SelectedIndex > 0 && cmbAba5Sub5Sub2Funeral.SelectedIndex > 0) { TPlanoSeniorDOMINIO registro = ControllerPlanoSenior.CalcularPremioFuneral(Convert.ToDecimal(cmbAba5Sub5Sub2Morte.SelectedValue), Convert.ToInt32(cmbAba5Sub5Sub2Funeral.SelectedValue), Convert.ToInt32(cmbAba5Sub5Sub1FaixaBase.SelectedValue)); lblAba5Sub5Sub2PremioPlanoValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.ValorPremioIdadeBase.GetValueOrDefault()); } if (Convert.ToInt32(cmbAba5Sub5Sub1Produto.SelectedValue) == (int)ProdutoPrincipal.PLANOCASAL && cmbAba5Sub5Sub2Morte.SelectedIndex > 0 && cmbAba5Sub5Sub2Funeral.SelectedIndex > 0) { TPlanoCasalDOMINIO registro = ControllerPlanoCasal.CalcularPremioFuneral(Convert.ToDecimal(cmbAba5Sub5Sub2Morte.SelectedValue), 0, Convert.ToInt32(cmbAba5Sub5Sub2Funeral.SelectedValue), Convert.ToInt32(cmbAba5Sub5Sub1FaixaBase.SelectedValue)); lblAba5Sub5Sub2AssistOUConjValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.CoberturaConjuge); lblAba5Sub5Sub2PremioPlanoValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.ValorPremioIdadeBase.GetValueOrDefault()); } }
private void PreencherDominoAbaSimuladorSubRenda() { DataTable tableTRenda = ControllerSimuladorSubRenda.SelecioneSimuladorSubRenda(DadosTSimuladorProduto.IDSimuladorProduto); if (tableTRenda.Rows.Count > 0) { DadosTPlanoProtecao.RendaPeriodo = tableTRenda.Rows[0]["Periodo"].ToString(); DadosTPlanoProtecao.RendaCoberturaRendaMensal = Convert.ToDecimal(tableTRenda.Rows[0]["ValorRenda"]); DadosTPlanoProtecao.RendaCoberturaCapitalTotal = Convert.ToDecimal(tableTRenda.Rows[0]["Capital"]); DadosTPlanoProtecao.RendaValorPremioIdadeBase = Convert.ToDecimal(tableTRenda.Rows[0]["PremioRenda"]); PremioRenda = DadosTPlanoProtecao.RendaValorPremioIdadeBase.GetValueOrDefault(); } else { if (DadosTPlanoProtecao.IDPlanoProtecao > 0 || DadosTSimuladorProduto.Produto.Equals(ProdutoPrincipal.PLANOPROTECAO.GetStringValue())) { decimal valorPlanoAP = PremioTotalMax - PremioPlano - PremioAgregado; TPlanoProtecaoDOMINIO rendaCalculada = new TPlanoProtecaoDOMINIO(); rendaCalculada = ControllerPlanoProtecao.SelecionarPlanoProtecaoRendaInicial(FaixaBase, valorPlanoAP); if (rendaCalculada.IDPlanoProtecaoRenda > 0) { DadosTPlanoProtecao.RendaPeriodo = rendaCalculada.RendaPeriodo; DadosTPlanoProtecao.RendaCoberturaRendaMensal = rendaCalculada.RendaCoberturaRendaMensal; DadosTPlanoProtecao.RendaCoberturaCapitalTotal = rendaCalculada.RendaCoberturaCapitalTotal; DadosTPlanoProtecao.RendaValorPremioIdadeBase = rendaCalculada.RendaValorPremioIdadeBase; PremioRenda = rendaCalculada.RendaValorPremioIdadeBase.GetValueOrDefault(); } } } }
private void PreencherSimuladorAbaTabelasSubRenda() { if (cmbAba5Sub5Sub4Periodo.SelectedIndex > 0 && cmbAba5Sub5Sub4Valor.SelectedIndex > 0) { TPlanoProtecaoDOMINIO registro = ControllerPlanoProtecao.CalcularPremioRenda(cmbAba5Sub5Sub4Periodo.Text, Convert.ToDecimal(cmbAba5Sub5Sub4Valor.SelectedValue), Convert.ToInt32(cmbAba5Sub5Sub1FaixaBase.SelectedValue)); lblAba5Sub5Sub4CapitalValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.RendaCoberturaCapitalTotal); lblAba5Sub5Sub4PremioRendaValor.Text = String.Format(new CultureInfo("pt-BR"), "{0:C}", registro.RendaValorPremioIdadeBase.GetValueOrDefault());; } }
private void PopularSimuladorAlterarProduto() { try { if (cmbAba5Sub4Produto.SelectedIndex > 0) { List <ProdutoPrincipal> produtos = new List <ProdutoPrincipal>(); int idadeBase = 0; DadosTSimuladorProduto = new TSimuladorProdutoDOMINIO(); DadosTPlanoProtecao = new TPlanoProtecaoDOMINIO(); DadosTPlanoSenior = new TPlanoSeniorDOMINIO(); DadosTPlanoCasal = new TPlanoCasalDOMINIO(); ControllerPlano.PlanoProtecaoDOMINIO = new TPlanoProtecaoDOMINIO(); ControllerPlano.PlanoSeniorDOMINIO = new TPlanoSeniorDOMINIO(); ControllerPlano.PlanoCasalDOMINIO = new TPlanoCasalDOMINIO(); bool alterar = true; ProdutoCalculo = Convert.ToInt32(cmbAba5Sub4Produto.SelectedValue); if (ControllerPlano.SimularPlanoAlterarProduto(DadosTEntrevistado.DataNascimento.Value, DadosTEntrevistado.DataNascimentoConjuge, Resposta2, Resposta7, ProdutoCalculo, ref produtos, ref idadeBase)) { FaixaBase = idadeBase; DadosTPlanoProtecao = ControllerPlano.PlanoProtecaoDOMINIO; DadosTPlanoSenior = ControllerPlano.PlanoSeniorDOMINIO; DadosTPlanoCasal = ControllerPlano.PlanoCasalDOMINIO; ProdutoDisponivel = produtos; } DadosTSimuladorProduto.Produto = "Produto"; //Preenche campos do simulador PreencherCamposSimuladorAbaPlanos(); //Verificações para Aba Agregados PreencherDominoAbaSimuladorSubAgregados(alterar); PreencherCamposSimuladorAbaRenda(); tabControlSimulador.SelectedIndex = 0; } } catch (Exception ex) { Util.CaixaMensagem.ExibirOk(ex.Message); Util.LogErro.GravaLog("Erro ao Simular Plano.", ex.Message); } }
public bool SimularPlano(DateTime dataTitular, DateTime?dataConjuge, int respPergunta2, int respPergunta7, ref List <ProdutoPrincipal> ProdutoDisponivel, ref int idadeBase) { try { PlanoProtecaoDOMINIO = new TPlanoProtecaoDOMINIO(); PlanoCasalDOMINIO = new TPlanoCasalDOMINIO(); PlanoSeniorDOMINIO = new TPlanoSeniorDOMINIO(); idadeBase = 0; int faixaTitular = TCombosEnumPERSISTENCIA.FaixaEtariaDataNascimento(dataTitular); int faixaConjuge = 0; if (dataConjuge.HasValue) { faixaConjuge = TCombosEnumPERSISTENCIA.FaixaEtariaDataNascimento(dataConjuge.Value); if ((dataTitular - dataConjuge.Value).TotalDays <= 0) { idadeBase = faixaTitular; } else { idadeBase = faixaConjuge; } } else { idadeBase = faixaTitular; } //Adiciona a lista de opções de acordo com a Faixa Etária #region [ Opções de Produtos ] if ((faixaTitular < 7) || (faixaTitular == 8)) { ProdutoDisponivel.Add(ProdutoPrincipal.PLANOPROTECAO); } if ((faixaTitular >= 6) && (faixaTitular != 8)) { ProdutoDisponivel.Add(ProdutoPrincipal.PLANOSENIOR); ProdutoDisponivel.Add(ProdutoPrincipal.PLANOCASAL); } #endregion //Verificar o Produto a ser oferecido pela faixa etária do titular e do cônjuge #region [ Produto Plano Proteção Familia ] if ((idadeBase <= 6) || (idadeBase == 8)) { PlanoProtecao(faixaTitular, idadeBase, respPergunta2, respPergunta7); return(true); } if (((faixaTitular <= 5) || (faixaTitular == 8)) && (faixaConjuge >= 7 && faixaConjuge <= 10 && faixaConjuge != 8)) { PlanoProtecao(faixaTitular, faixaTitular, respPergunta2, respPergunta7); return(true); } #endregion #region [ Produto Sênior Individual ] if ((faixaTitular >= 6) && (faixaTitular != 8)) { if (faixaConjuge == 0) { PlanoSenior(idadeBase, respPergunta2, respPergunta7); return(true); } if ((faixaTitular >= 7) && (((1 <= faixaConjuge) && (faixaConjuge <= 5)) || (faixaConjuge == 8))) { PlanoSenior(idadeBase, respPergunta2, respPergunta7); return(true); } } #endregion #region [ Produto Sênior Casal ] if (((faixaTitular >= 6) && (faixaTitular != 8)) && ((faixaConjuge >= 6) && (faixaConjuge != 8))) { PlanoSeniorCasal(idadeBase, respPergunta2, respPergunta7); return(true); } #endregion return(false); } catch (Exception) { throw new Exception("Erro ao Simular Plano."); } }
private void PopularSimulador() { try { if (ControllerEnum.FaixaEtariaDataNascimento(DadosTEntrevistado.DataNascimento.GetValueOrDefault()) != (int)FaixaEtaria.PREMIO_81) { List <ProdutoPrincipal> produtos = new List <ProdutoPrincipal>(); int idadeBase = 0; bool alterarAgregado = true; TipoRegistro = 'A'; DadosTSimuladorProduto = new TSimuladorProdutoDOMINIO(); DadosTPlanoProtecao = new TPlanoProtecaoDOMINIO(); DadosTPlanoSenior = new TPlanoSeniorDOMINIO(); DadosTPlanoCasal = new TPlanoCasalDOMINIO(); ControllerPlano.PlanoProtecaoDOMINIO = new TPlanoProtecaoDOMINIO(); ControllerPlano.PlanoSeniorDOMINIO = new TPlanoSeniorDOMINIO(); ControllerPlano.PlanoCasalDOMINIO = new TPlanoCasalDOMINIO(); //Verifica se já foi feita simulação DataTable tableProduto = ControllerSimuladorProduto.SelecioneSimuladorProduto(DadosTEntrevista.CodigoEntrevista); if (tableProduto.Rows.Count > 0) { DadosTSimuladorProduto.IDSimuladorProduto = Convert.ToInt32(tableProduto.Rows[0]["IDSimuladorProduto"]); DadosTSimuladorProduto.IDEntrevista = Convert.ToInt64(tableProduto.Rows[0]["IDEntrevista"]); DadosTSimuladorProduto.Produto = tableProduto.Rows[0]["Produto"].ToString(); DadosTSimuladorProduto.PremioTotal = Convert.ToDecimal(tableProduto.Rows[0]["PremioTotal"]); DadosTSimuladorProduto.FaixaEtaria = Convert.ToInt32(tableProduto.Rows[0]["FaixaEtaria"]); DadosTSimuladorProduto.FaixaEtariaConjuge = Convert.ToInt32(tableProduto.Rows[0]["FaixaEtariaConjuge"]); DadosTSimuladorProduto.RespostaBaseRenda = Convert.ToInt32(tableProduto.Rows[0]["RespostaBaseRenda"]); DadosTSimuladorProduto.RespostaBaseDisposto = Convert.ToInt32(tableProduto.Rows[0]["RespostaBaseDisposto"]); //Verificações para Aba Planos if ((DadosTSimuladorProduto.FaixaEtaria == DadosTEntrevistado.FaixaEtaria) && (DadosTSimuladorProduto.FaixaEtariaConjuge == DadosTEntrevistado.FaixaEtariaConjuge) && (DadosTSimuladorProduto.RespostaBaseRenda == Resposta2) && (DadosTSimuladorProduto.RespostaBaseDisposto == Resposta7)) { int CalculaBase = 0; ControllerPlano.FaixaBase(DadosTEntrevistado.FaixaEtaria, DadosTEntrevistado.FaixaEtariaConjuge, ref CalculaBase); FaixaBase = CalculaBase; ProdutoDisponivel = new List <ProdutoPrincipal>(); if ((FaixaBase <= 6) || (FaixaBase == 8)) { ProdutoDisponivel.Add(ProdutoPrincipal.PLANOPROTECAO); } if ((FaixaBase >= 6) && (FaixaBase != 8)) { ProdutoDisponivel.Add(ProdutoPrincipal.PLANOSENIOR); ProdutoDisponivel.Add(ProdutoPrincipal.PLANOCASAL); } PreencherDominoAbaSimuladorSubPlanos(); alterarAgregado = false; GravarSimulador = false; } else { if (ControllerPlano.SimularPlano(DadosTEntrevistado.DataNascimento.Value, DadosTEntrevistado.DataNascimentoConjuge, Resposta2, Resposta7, ref produtos, ref idadeBase)) { FaixaBase = idadeBase; DadosTPlanoProtecao = ControllerPlano.PlanoProtecaoDOMINIO; DadosTPlanoSenior = ControllerPlano.PlanoSeniorDOMINIO; DadosTPlanoCasal = ControllerPlano.PlanoCasalDOMINIO; PremioTotalMax = ControllerPlano.TotalMax; ProdutoDisponivel = produtos; GravarSimulador = true; TipoRegistro = 'S'; } } } else { if (ControllerPlano.SimularPlano(DadosTEntrevistado.DataNascimento.Value, DadosTEntrevistado.DataNascimentoConjuge, Resposta2, Resposta7, ref produtos, ref idadeBase)) { FaixaBase = idadeBase; DadosTPlanoProtecao = ControllerPlano.PlanoProtecaoDOMINIO; DadosTPlanoSenior = ControllerPlano.PlanoSeniorDOMINIO; DadosTPlanoCasal = ControllerPlano.PlanoCasalDOMINIO; PremioTotalMax = ControllerPlano.TotalMax; ProdutoDisponivel = produtos; GravarSimulador = true; TipoRegistro = 'S'; } DadosTSimuladorProduto.Produto = "Produto"; } //Preenche campos do simulador PreencherCamposSimuladorAbaPlanos(); //Verificações para Aba Agregados PreencherDominoAbaSimuladorSubAgregados(alterarAgregado); if (DadosTPlanoProtecao.IDPlanoProtecao > 0 || DadosTSimuladorProduto.Produto.Equals(ProdutoPrincipal.PLANOPROTECAO.GetStringValue())) { //Verificações para Aba Renda PreencherDominoAbaSimuladorSubRenda(); PreencherCamposSimuladorAbaRenda(); } PreencherCamposTotais(); if (GravarSimulador) { SalvarAbaSimulador(); } } } catch (Exception ex) { Util.CaixaMensagem.ExibirOk(ex.Message); Util.LogErro.GravaLog("Erro ao Simular Plano.", ex.Message); } }