feat: implementar novos critérios de pontuação da planilha atualizada
- Adicionar critérios diferenciados por papel (autor vs orientador) - Implementar INSC_INST_AUTOR, PREMIACAO_GP_AUTOR, PREMIACAO_AUTOR, MENCAO_AUTOR - Adicionar bônus de recorrência para inscrições, eventos e projetos - Corrigir lógica de bônus de consultoria (continuidade e retorno) - Ajustar extração de selos no frontend para novos códigos - Adicionar BOL_BPQ_NIVEL para bolsas sem nível especificado - Refinar cálculo de pontuação com novos tetos e multiplicadores
This commit is contained in:
@@ -55,9 +55,9 @@ const gerarSelos = (consultor) => {
|
||||
|
||||
const gerarSelosPorPapel = (papel, seloGP, seloPremio, seloMencao, hintPrefix) => {
|
||||
const lista = premiacoes.filter((p) => (p.papel || '').toString().toLowerCase() === papel.toLowerCase());
|
||||
const gp = lista.filter((p) => p.codigo === 'PREMIACAO').length;
|
||||
const premio = lista.filter((p) => p.codigo === 'PREMIACAO_GP').length;
|
||||
const mencao = lista.filter((p) => p.codigo === 'MENCAO').length;
|
||||
const gp = lista.filter((p) => ['PREMIACAO', 'PREMIACAO_GP_AUTOR'].includes(p.codigo)).length;
|
||||
const premio = lista.filter((p) => ['PREMIACAO_GP', 'PREMIACAO_AUTOR'].includes(p.codigo)).length;
|
||||
const mencao = lista.filter((p) => ['MENCAO', 'MENCAO_AUTOR'].includes(p.codigo)).length;
|
||||
|
||||
if (gp > 0) selos.push({ ...seloGP, qtd: gp, hint: `${hintPrefix} - Grande Prêmio` });
|
||||
if (premio > 0) selos.push({ ...seloPremio, qtd: premio, hint: `${hintPrefix} - Prêmio` });
|
||||
@@ -104,7 +104,7 @@ const SelosBadges = ({ selos, compacto = false }) => {
|
||||
>
|
||||
<span className="selo-icone">{selo.icone}</span>
|
||||
{!compacto && <span className="selo-label">{selo.label}</span>}
|
||||
{selo.qtd > 1 && <span className="selo-qtd">{selo.qtd}</span>}
|
||||
{!compacto && <span className="selo-qtd">{selo.qtd || 1}</span>}
|
||||
</span>
|
||||
))}
|
||||
{selosOcultos > 0 && (
|
||||
@@ -137,11 +137,14 @@ const PONTOS_BASE = {
|
||||
CA: 200, CAJ: 150, CAJ_MP: 120, CAM: 100,
|
||||
CONS_ATIVO: 150, CONS_HIST: 100, CONS_FALECIDO: 100,
|
||||
INSC_AUTOR: 10, INSC_INST: 30,
|
||||
INSC_INST_AUTOR: 20,
|
||||
AVAL_COMIS_PREMIO: 30, AVAL_COMIS_GP: 50,
|
||||
COORD_COMIS_PREMIO: 50, COORD_COMIS_GP: 60,
|
||||
PREMIACAO: 100, PREMIACAO_GP: 50, MENCAO: 30,
|
||||
PREMIACAO_GP_AUTOR: 100, PREMIACAO_AUTOR: 50, MENCAO_AUTOR: 30,
|
||||
BOL_BPQ_SUP: 30, BOL_BPQ_INT: 50,
|
||||
BOL_BPQ_SUPERIOR: 30, BOL_BPQ_INTERMEDIARIO: 50,
|
||||
BOL_BPQ_NIVEL: 30,
|
||||
EVENTO: 1, PROJ: 10,
|
||||
ORIENT_POS_DOC: 15, ORIENT_TESE: 10, ORIENT_DISS: 5,
|
||||
CO_ORIENT_POS_DOC: 7, CO_ORIENT_TESE: 5, CO_ORIENT_DISS: 3,
|
||||
@@ -149,8 +152,9 @@ const PONTOS_BASE = {
|
||||
};
|
||||
|
||||
const TETOS = {
|
||||
INSC_AUTOR: { teto: 20, doc: '3.3 Inscrições' },
|
||||
INSC_AUTOR: { teto: 20, doc: '3.3 Inscrições', bonus: '+2/participação (max 10)' },
|
||||
INSC_INST: { teto: 60, doc: '3.3 Inscrições' },
|
||||
INSC_INST_AUTOR: { teto: 50, doc: '3.3 Inscrições', bonus: '+5/participação (max 10)' },
|
||||
AVAL_COMIS_PREMIO: { teto: 60, doc: '3.4 Avaliação/Comissão', bonus: '+2/ano (max 15)' },
|
||||
AVAL_COMIS_GP: { teto: 80, doc: '3.4 Avaliação/Comissão', bonus: '+3/ano (max 20)' },
|
||||
COORD_COMIS_PREMIO: { teto: 100, doc: '3.4 Avaliação/Comissão', bonus: '+4/ano (max 20)' },
|
||||
@@ -158,12 +162,16 @@ const TETOS = {
|
||||
PREMIACAO: { teto: 180, doc: '3.4 Premiações e Bolsas' },
|
||||
PREMIACAO_GP: { teto: 60, doc: '3.4 Premiações e Bolsas' },
|
||||
MENCAO: { teto: 30, doc: '3.4 Premiações e Bolsas' },
|
||||
EVENTO: { teto: 5, doc: '3.5 Participações Acadêmicas' },
|
||||
PROJ: { teto: 40, doc: '3.5 Participações Acadêmicas' },
|
||||
PREMIACAO_GP_AUTOR: { teto: 300, doc: '3.4 Premiações e Bolsas' },
|
||||
PREMIACAO_AUTOR: { teto: 150, doc: '3.4 Premiações e Bolsas' },
|
||||
MENCAO_AUTOR: { teto: 90, doc: '3.4 Premiações e Bolsas' },
|
||||
EVENTO: { teto: 5, doc: '3.5 Participações Acadêmicas', bonus: '+1/participação (max 10)' },
|
||||
PROJ: { teto: 40, doc: '3.5 Participações Acadêmicas', bonus: '+2/participação (max 10)' },
|
||||
BOL_BPQ_SUP: { teto: 60, doc: '3.4 Premiações e Bolsas' },
|
||||
BOL_BPQ_INT: { teto: 100, doc: '3.4 Premiações e Bolsas' },
|
||||
BOL_BPQ_SUPERIOR: { teto: 60, doc: '3.4 Premiações e Bolsas' },
|
||||
BOL_BPQ_INTERMEDIARIO: { teto: 100, doc: '3.4 Premiações e Bolsas' },
|
||||
BOL_BPQ_NIVEL: { teto: 60, doc: '3.4 Premiações e Bolsas' },
|
||||
ORIENT_POS_DOC: { teto: 100, doc: '3.5 Participações Acadêmicas' },
|
||||
ORIENT_TESE: { teto: 50, doc: '3.5 Participações Acadêmicas' },
|
||||
ORIENT_DISS: { teto: 25, doc: '3.5 Participações Acadêmicas' },
|
||||
|
||||
Reference in New Issue
Block a user