1º Identifica os contratos que serão reajustados no próximo mês. “Reajuste conforme aniversário do contrato”.
Exemplo: No início de abril são identificados os contratos com aniversário em maio.
. Pega o Id e o Percentual tabela TbContratoPSReajusteBenefANS onde a ValidadeInicial e ValidadeFim esteja entre a data atual;
. Identifica contratos ativos e beneficiários ativos e contratos do tipo "PSF" e data do próximo reajuste menor ou igual ao último dia do mês de reajute e id do último reajuste ANS menor que o Id pego em TbContratoPSReajusteBenefANS "Estes são os Contratos/Beneficiários que devem ser reajustados"
Nota: A função receber como parâmetro o mês do reajuste.
Nota: Como o campo IdUltimoContratoPsReajusteANS e o campo DtProximoReajusteANS estão na tabela Beneficiário, se por algum motivo o beneficiário estiver inativo no mês de seu reajuste, e se tornar ativo posteriormente, será reajustado no próximo reajuste.
Atenção: Ver regra para o novo campo Dt. Próximo Reajuste ANS na tabela Beneficiário
Atenção: Verificar se na criação de um um novo beneficiário ou na troca de carteirinha do beneficiário o mesmo deve "receber" o id do último reajutes ou não;
2º Aplica-se o reajuste nos preços dos Beneficiários/Contratos identificados, conforme o percentual vigente em Cadastro de Reajustes ANS para Planos de Pessoas Físicas.
. Acrescenta o Percentual pego em TbContratoPSReajusteBenefANS.Percentual ao peço do beneficiário. E atualiza o valor do campo IdUltimoContratoPsReajusteANS com o valor do campo Id atual encontrado na tabela TbContratoPSReajusteBenefANS e atualiza o valor do campo DtProximoReajusteANS com a próxima data ao qual o contrato deve ser reajustado.
3º Gera histórico dos reajustes;
. Insere novo registro na tabela TbContratoPSReajusteBenefHist.
Campos: Tipo do Reajuste "Reajuste ANS"; Preço Anterior; Preço Atual "Reajustado"; Dt. Hr. Aplicação do Reajuste; Dt. Validade Inicial do Preço Atual; Data Ideal do Reajuste;Nota: O campo ValidadeInicial será utilizado pela rotina de geração dos boletos, este irá identificar se o boleto deve ser gerado com o Preço Atual ou com o Preço Anterior.
Nota: A diferença em meses entre o valor do campo DtValidadeInicial da tabela TbContratoPSReajusteBenefHist e o valor do campo ContratoPS.DtValidadeInicial é a quantidade de meses atrazados. A quantidade de meses atrazados vezes a diferença entre o PreçoAtual e o PreçoAnterior é a diferença que deve ser cobrada na geração do boleto.
4º Gera mensagens referente ao reajuste que serão envias aos beneficiários via boleto.
Ver texto padrão da mensagem (Nota criar o texto).. Insere novo registro na tabela TbBeneficiarioMensagem.
Nova: Pegar o texto padrão para o Gabriel.
Nota: Se o índice do reajuste vigente ainda não foi cadastrado o sistema deve enviar outra mensagem no e-mail do beneficiário
5º Gera ocorrencias.
. Insere novo registro na tabela ContratoPSOcorrencia.
Nova: Mesma mensagem enviada no boleto.