Skip to content

Commit

Permalink
Merge branch 'pt_45_despesas_pagamentos'
Browse files Browse the repository at this point in the history
  • Loading branch information
jorgesilva2407 committed Mar 15, 2023
2 parents 55bbb50 + 95110f7 commit 7f8098a
Show file tree
Hide file tree
Showing 5 changed files with 182 additions and 50 deletions.
11 changes: 8 additions & 3 deletions service/src/api_de_integracao/manage.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,10 @@ def salvar_resultado_de_json(municipio_id, resultado_json):
# if (nome_da_tag in nome_da_tag_no_git_hub):
# nome_da_tag = nome_da_tag_no_git_hub[nome_da_tag]

# print("Resultado json: ", resultado_json)
for tag, resultado_por_tag in resultado_json.items():

# print("\n\n\n\n\n")
# print(tag, "-> Resultado tag: ", resultado_por_tag)
if resultado_por_tag is None: # ainda não validado
itens = get_tag_itens(tag)
resposta = get_resposta_por_erro_de_validacao("ainda não validado")
Expand All @@ -122,16 +124,19 @@ def salvar_resultado_de_json(municipio_id, resultado_json):
continue

for subtag, resultado_por_subtag in resultado_por_tag.items():

# print("\n\n\n\n\n")
# print(subtag, "-> Resultado subtag: ", resultado_por_subtag)
for item_apelido, resultado_do_item in resultado_por_subtag.items():
# print("\n\n\n\n\n")
# print(item_apelido, "-> Resultado item: ", resultado_do_item)
item = get_item(get_sub_tag(subtag).id, item_apelido)

if resultado_do_item['predict']:
resposta = Resposta.OK_VALIDADO
else:
resposta = Resposta.ERRO_VALIDADO
resposta.set_justificativa(resultado_do_item['explain'])

# print("Item id: ", item.id)
salvar_resultado(municipio_id=municipio_id,
item_id=item.id, resposta=resposta)

Expand Down
8 changes: 4 additions & 4 deletions service/src/checklist/lista_exigencias.csv
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ id,tag,sub-tag,info,abreviacao
29,Despesas,Empenhos,Data,
30,Despesas,Empenhos,Favorecido,
31,Despesas,Empenhos,Descrição,
32,Despesas,Pagamentos,Valor,
33,Despesas,Pagamentos,Data,
34,Despesas,Pagamentos,Favorecido,
35,Despesas,Pagamentos,Empenho de referência,
32,Despesas,Pagamentos,Valor,valor
33,Despesas,Pagamentos,Data,data
34,Despesas,Pagamentos,Favorecido,favorecido
35,Despesas,Pagamentos,Empenho de referência,empenho_de_referencia
36,Despesas,Consulta,Possibilita a consulta de empenhos ou pagamentos por favorecido,
37,Despesas,Gerar relatório,Permite gerar relatório da consulta de empenhos ou de pagamentos em formato aberto,
38,Despesas,Relatórios,Link de acesso ao Plano Plurianual do município,
Expand Down
196 changes: 157 additions & 39 deletions service/src/empresa/parametros_templates/constants/pt_45.json
Original file line number Diff line number Diff line change
@@ -1,53 +1,100 @@
{
"acesso_a_informacoes":{
"dados_abertos":{

}
"acesso_a_informacoes": {
"dados_abertos": {}
},
"informacoes_institucionais":{
"unidades_administrativas_":{
"informacoes_institucionais": {
"unidades_administrativas_": {
"search_term": "teste",
"keywords_to_search": ["teste"],
"types": ["html"],
"keywords_to_search": [
"teste"
],
"types": [
"html"
],
"endereco": "endereco",
"telefone": "telefone",
"horario_de_atendimento": "horario de atendimento"
},
"leis_municipais": {
"leis_municipais": {
"type": "predict_by_number_of_files",
"directory": ["informacoes_institucionais","leis_municipais"]
"directory": [
"informacoes_institucionais",
"leis_municipais"
]
}
},
"servidores_publicos": {
"dados_dos_servidores": {
"search_term": "Folha Salarial",
"keywords_to_search": ["Contas Públicas :: Folha Salarial", "Nome", "Servidor", "Matrícula", "Cargo", "Função" ],
"filter_paths": ["servidores"],
"types": ["html"],
"keywords_to_search": [
"Contas Públicas :: Folha Salarial",
"Nome",
"Servidor",
"Matrícula",
"Cargo",
"Função"
],
"filter_paths": [
"servidores"
],
"types": [
"html"
],
"nome": "nome",
"cargo_funcao": "cargo",
"remuneracao":"remuneracao",
"html_to_df":{
"remuneracao": "remuneracao",
"html_to_df": {
"tag_name": "table",
"class": "ContasPublicas",
"elements_parameters": {
"nome": {"tag_name": "td", "tag_class": "", "text": "Nome: ", "sub": "Nome: "},
"cargo": {"tag_name": "td", "tag_class": "", "text": "Cargo: ", "sub": "Cargo: "},
"funcao": {"tag_name": "td", "tag_class": "", "text": "Função: ", "sub": "Função: "},
"remuneracao": {"tag_name": "td", "tag_class": "", "text": ".*Remuneração Bruta: ", "sub": "(.*Remuneração Bruta: )|(Total da Remuneração Após Deduções:.*)"}
"nome": {
"tag_name": "td",
"tag_class": "",
"text": "Nome: ",
"sub": "Nome: "
},
"cargo": {
"tag_name": "td",
"tag_class": "",
"text": "Cargo: ",
"sub": "Cargo: "
},
"funcao": {
"tag_name": "td",
"tag_class": "",
"text": "Função: ",
"sub": "Função: "
},
"remuneracao": {
"tag_name": "td",
"tag_class": "",
"text": ".*Remuneração Bruta: ",
"sub": "(.*Remuneração Bruta: )|(Total da Remuneração Após Deduções:.*)"
}
}
}
},
},
"auxilios": {
"search_term": "servidor folha",
"keywords_to_search": ["Nome", "Servidor", "Matrícula", "Cargo", "Função"]
"keywords_to_search": [
"Nome",
"Servidor",
"Matrícula",
"Cargo",
"Função"
]
}
},
"obras_publicas":{
"dados_para_acompanhamento":{
"obras_publicas": {
"dados_para_acompanhamento": {
"search_term": "Obras",
"keywords_to_search": ["Contas Públicas :: Obras", "Obras Públicas"],
"types": ["html"],
"keywords_to_search": [
"Contas Públicas :: Obras",
"Obras Públicas"
],
"types": [
"html"
],
"objeto": "Objeto da Obra",
"valor_total": "Valor total",
"empresa_contratada": "Empresa contratada",
Expand All @@ -60,8 +107,16 @@
"contratos": {
"dados_dos_contratos": {
"search_term": "Contas Públicas :: Contratos, Atas de Registro de Preços e Aditivos",
"keywords_to_search": ["Secretaria", "Fundamento Legal", "CNPJ", "Modalidade", "Objeto"],
"types": ["html"],
"keywords_to_search": [
"Secretaria",
"Fundamento Legal",
"CNPJ",
"Modalidade",
"Objeto"
],
"types": [
"html"
],
"objeto": "objeto",
"valor": "valor",
"favorecido": "favorecido",
Expand All @@ -72,25 +127,88 @@
"tag_name": "table",
"class": "ContasPublicas",
"elements_parameters": {
"objeto": {"tag_name": "td", "tag_class": "", "text": "Objeto: ", "sub":"Objeto: "},
"valor": {"tag_name": "td", "tag_class": "", "text": "(Valor Global)|(Valor global do contrato original): ", "sub":"(Valor Global)|(Valor global do contrato original): "},
"favorecido": {"tag_name": "td", "tag_class": "", "text": "Contratado: ", "sub": "Contratado: "},
"numero_ano_do_contrato": {"tag_name": "td", "tag_class": "", "text": ".*Número do Contrato Original: ", "sub": ".*Número do Contrato Original: "},
"vigencia": {"tag_name": "td", "tag_class": "", "text": "Data da Vigência:", "sub": "Data da Vigência:"},
"licitacao_de_origem": {"tag_name": "td", "tag_class": "", "text": "Número do Processo Licitatório: ", "sub": "Número do Processo Licitatório: "}
"objeto": {
"tag_name": "td",
"tag_class": "",
"text": "Objeto: ",
"sub": "Objeto: "
},
"valor": {
"tag_name": "td",
"tag_class": "",
"text": "(Valor Global)|(Valor global do contrato original): ",
"sub": "(Valor Global)|(Valor global do contrato original): "
},
"favorecido": {
"tag_name": "td",
"tag_class": "",
"text": "Contratado: ",
"sub": "Contratado: "
},
"numero_ano_do_contrato": {
"tag_name": "td",
"tag_class": "",
"text": ".*Número do Contrato Original: ",
"sub": ".*Número do Contrato Original: "
},
"vigencia": {
"tag_name": "td",
"tag_class": "",
"text": "Data da Vigência:",
"sub": "Data da Vigência:"
},
"licitacao_de_origem": {
"tag_name": "td",
"tag_class": "",
"text": "Número do Processo Licitatório: ",
"sub": "Número do Processo Licitatório: "
}
}
}
}
}
},
"receitas":{
"dados_das_receitas":{
"receitas": {
"dados_das_receitas": {
"search_term": "Página inicial :: Tempo Real :: Receita receitas",
"keywords_to_search": ["Data", "Tipo de Minuta", "Receita", "Fonte de Recursos", "Valor"],
"types": ["html"],
"keywords_to_search": [
"Data",
"Tipo de Minuta",
"Receita",
"Fonte de Recursos",
"Valor"
],
"types": [
"html"
],
"max_files": 10,
"previsao": "",
"previsao": "",
"arrecadacao": "Valor",
"classificacao": "Fonte de Recursos"
}
},
"despesas": {
"pagamentos": {
"path": [
"despesas"
],
"max_files": 20,
"search_term": "Página inicial :: Tempo Real :: Despesa",
"keywords_to_search": [
"Página inicial :: Tempo Real :: Despesa",
"Credor",
"Empenho",
"Tipo",
"Processo Licitatório",
"Data Empenho",
"Data Liquidação"
],
"types": [
"html"
],
"valor": "Valor Pago",
"data": "Data Pagamento",
"favorecido": "Credor",
"empenho_de_referencia": "Empenho"
}
}
}
13 changes: 11 additions & 2 deletions service/src/validadores/despesas/pagamentos.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,19 @@ def __init__(self, job_name, keywords):

self.keywords = keywords
files = indexing.get_files(keywords['search_term'], job_name, keywords_search=keywords['keywords_to_search'])
files = path_functions.filter_paths(files, words=['pagamentos'])
try:
filter_path = keywords["path"]
except KeyError:
filter_path = ['pagamentos']
files = path_functions.filter_paths(files, words=filter_path)
files = path_functions.agg_paths_by_type(files)
self.files = files
self.df = get_df(self.files, keywords['types'])
try:
max_files = keywords['max_files']
except KeyError:
max_files = 10000
self.df = get_df(self.files, keywords['types'], max_files=max_files)
# print(self.df.columns)

# Valor
def predict_valor(self):
Expand Down
4 changes: 2 additions & 2 deletions service/src/validadores/despesas/pipeline_despesas.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ def pipeline_despesas(keywords, job_name):
validador_empenhos = empenhos.ValidadorEmpenhos(job_name, keywords['empenhos'])
despesas['empenhos'] = validador_empenhos.predict()

# Subtag - Pagamentos
# # Subtag - Pagamentos
validador_pagamentos = pagamentos.ValidadorPagamentos(job_name, keywords['pagamentos'])
despesas['pagamentos'] = validador_pagamentos.predict()

Expand All @@ -33,7 +33,7 @@ def pipeline_despesas(keywords, job_name):
validador_gerar_relatorios = gerar_relatorio.ValidadorGerarRelatorios(job_name, keywords['gerar_relatorios'])
despesas['gerar_relatorios'] = validador_gerar_relatorios.predict()

# Subtag - Relatórios
# # Subtag - Relatórios
validador_relatorios = relatorios.ValidadorRelatorios(job_name, keywords['relatorios'])
despesas['relatorios'] = validador_relatorios.predict()

Expand Down

0 comments on commit 7f8098a

Please sign in to comment.