public bool ConsultarPlano(int produto, int faixaBase, ref DataTable dadosPlanos, ref DataTable dadosAgregados, ref DataTable dadosRenda) { try { switch (produto) { case (int)ProdutoPrincipal.PLANOPROTECAO: dadosPlanos = TPlanoProtecaoPERSISTENCIA.ConsultarPlanoProtecaoFuneral(faixaBase); dadosAgregados = TPlanoProtecaoPERSISTENCIA.ConsultarPlanoProtecaoAgregado(); dadosRenda = TPlanoProtecaoPERSISTENCIA.ConsultarPlanoProtecaoRenda(faixaBase); break; case (int)ProdutoPrincipal.PLANOSENIOR: dadosPlanos = TPlanoSeniorPERSISTENCIA.ConsultarPlanoSeniorFuneral(faixaBase); dadosAgregados = TPlanoSeniorPERSISTENCIA.ConsultarPlanoSeniorAgregado(); break; case (int)ProdutoPrincipal.PLANOCASAL: dadosPlanos = TPlanoCasalPERSISTENCIA.ConsultarPlanoCasalFuneral(faixaBase); dadosAgregados = TPlanoCasalPERSISTENCIA.ConsultarPlanoCasalAgregado(); break; default: break; } return(true); } catch (Exception) { return(false); } }
public void PlanoSeniorCasal(int faixaPadrao, int respPergunta2, int respPergunta7) { decimal premioMax = 0; decimal premioAP = 0; int codigoValorConsiderado = 0; #region [ Verifica Pergunta 2 e 7 para obter o Prêmio ] if (((respPergunta2 == 0) || (respPergunta2 == 12)) && (respPergunta7 == 0)) { throw new Exception("É necessário responder as perguntas 2 e 7 para realizar os cálculos."); } if (respPergunta2 > 0 && respPergunta2 < 12) { codigoValorConsiderado = respPergunta2; } else if (respPergunta7 > 0 && respPergunta7 < 12) { codigoValorConsiderado = respPergunta7; } else { throw new Exception("É necessário responder as perguntas 2 e 7 para realizar os cálculos."); } switch (codigoValorConsiderado) { case (int)PerguntaRenda.ATE_800: premioMax = 800; break; case (int)PerguntaRenda.DE_801_1000: premioMax = 1000; break; case (int)PerguntaRenda.DE_1001_1200: premioMax = 1200; break; case (int)PerguntaRenda.DE_1201_1400: premioMax = 1400; break; case (int)PerguntaRenda.DE_1401_1600: premioMax = 1600; break; case (int)PerguntaRenda.DE_1601_2000: premioMax = 2000; break; case (int)PerguntaRenda.DE_2001_2500: premioMax = 2500; break; case (int)PerguntaRenda.DE_2501_3000: premioMax = 3000; break; case (int)PerguntaRenda.DE_3001_3500: premioMax = 3500; break; case (int)PerguntaRenda.DE_3501_4000: premioMax = 4000; break; case (int)PerguntaRenda.ACIMA_4001: premioMax = 5000; break; default: break; } premioAP = (premioMax * 5 / 100) * 2 / 3; #endregion #region [ Consulta categoria SUPERIOR ] PlanoCasalDOMINIO = TPlanoCasalPERSISTENCIA.ConsultaCategoriaSuperior(faixaPadrao, premioAP); switch (faixaPadrao) { case (int)FaixaEtaria.PREMIO_61_65: PlanoCasalDOMINIO.ValorPremioIdadeBase = PlanoCasalDOMINIO.Premio_61_65; break; case (int)FaixaEtaria.PREMIO_66_70: PlanoCasalDOMINIO.ValorPremioIdadeBase = PlanoCasalDOMINIO.Premio_66_70; break; case (int)FaixaEtaria.PREMIO_71_75: PlanoCasalDOMINIO.ValorPremioIdadeBase = PlanoCasalDOMINIO.Premio_71_75; break; case (int)FaixaEtaria.PREMIO_76_80: PlanoCasalDOMINIO.ValorPremioIdadeBase = PlanoCasalDOMINIO.Premio_76_80; break; default: break; } #endregion }