fix: exigir match de tema na busca e corrigir verificacao de status ativo
This commit is contained in:
@@ -536,40 +536,36 @@ class ElasticsearchClient:
|
||||
must_conditions = []
|
||||
should_conditions = []
|
||||
|
||||
tema_lower = tema.lower().strip()
|
||||
must_conditions.append({
|
||||
"nested": {
|
||||
"path": "atuacoes",
|
||||
"query": {
|
||||
"bool": {
|
||||
"must": [
|
||||
{"term": {"atuacoes.tipo": "Consultor"}}
|
||||
],
|
||||
"should": [
|
||||
{"match": {"atuacoes.dadosConsultoria.areaConhecimentoPos.nome": {"query": tema, "boost": 3}}},
|
||||
{"match": {"atuacoes.dadosConsultoria.areaConhecimentoPos.areaAvaliacao.nome": {"query": tema, "boost": 5}}},
|
||||
{"match": {"atuacoes.dadosConsultoria.areaPesquisa.descricao": {"query": tema, "boost": 2}}},
|
||||
{"match": {"atuacoes.dadosConsultoria.areaConhecimentoPos.especialidade": {"query": tema, "boost": 2}}}
|
||||
],
|
||||
"minimum_should_match": 1
|
||||
}
|
||||
},
|
||||
"score_mode": "max"
|
||||
}
|
||||
})
|
||||
|
||||
should_conditions.extend([
|
||||
{
|
||||
"nested": {
|
||||
"path": "atuacoes",
|
||||
"query": {
|
||||
"bool": {
|
||||
"must": [
|
||||
{"term": {"atuacoes.tipo": "Consultor"}},
|
||||
{
|
||||
"bool": {
|
||||
"should": [
|
||||
{"match": {"atuacoes.dadosConsultoria.areaConhecimentoPos.nome": {"query": tema, "boost": 3}}},
|
||||
{"match": {"atuacoes.dadosConsultoria.areaConhecimentoPos.areaAvaliacao.nome": {"query": tema, "boost": 5}}},
|
||||
{"match": {"atuacoes.dadosConsultoria.areaPesquisa.descricao": {"query": tema, "boost": 2}}}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"score_mode": "max",
|
||||
"boost": 10
|
||||
}
|
||||
},
|
||||
{
|
||||
"nested": {
|
||||
"path": "atuacoes",
|
||||
"query": {
|
||||
"bool": {
|
||||
"should": [
|
||||
{"term": {"atuacoes.tipo": {"value": "Coordenação de Área de Avaliação", "boost": 8}}},
|
||||
{"term": {"atuacoes.tipo": {"value": "Histórico de Coordenação de Área de Avaliação", "boost": 4}}}
|
||||
{"term": {"atuacoes.tipo": {"value": "Coordenação de Área de Avaliação", "boost": 3}}},
|
||||
{"term": {"atuacoes.tipo": {"value": "Histórico de Coordenação de Área de Avaliação", "boost": 1}}}
|
||||
]
|
||||
}
|
||||
},
|
||||
@@ -582,8 +578,8 @@ class ElasticsearchClient:
|
||||
"query": {
|
||||
"bool": {
|
||||
"should": [
|
||||
{"term": {"atuacoes.tipo": {"value": "Premiação Prêmio", "boost": 3}}},
|
||||
{"term": {"atuacoes.tipo": {"value": "Avaliação Prêmio", "boost": 2}}}
|
||||
{"term": {"atuacoes.tipo": {"value": "Premiação Prêmio", "boost": 2}}},
|
||||
{"term": {"atuacoes.tipo": {"value": "Avaliação Prêmio", "boost": 1}}}
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
@@ -160,7 +160,7 @@ const SugerirConsultores = ({ onClose, onSelectConsultor }) => {
|
||||
<div className="sugerir-badges">
|
||||
{c.foi_coordenador && <span className="badge coordenador" title="Foi coordenador">CA</span>}
|
||||
{c.foi_premiado && <span className="badge premiado" title="Foi premiado">P</span>}
|
||||
{c.situacao === 'Atividade Continua' || c.situacao === 'Ativo' ? (
|
||||
{c.situacao && c.situacao.toLowerCase().includes('atividade') ? (
|
||||
<span className="badge ativo">Ativo</span>
|
||||
) : (
|
||||
<span className="badge inativo">Inativo</span>
|
||||
|
||||
Reference in New Issue
Block a user