Arthur-Attili commited on
Commit
d27f048
·
verified ·
1 Parent(s): c1edfda

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -3
app.py CHANGED
@@ -95,7 +95,8 @@ def buscar_combinacoes(credito_desejado, entrada_desejada, parcela_desejada, adm
95
  for r in range(1, min(3, len(cotas)) + 1): # Máximo 3 cotas por combinação
96
  for combinacao in itertools.combinations(cotas, r):
97
  total_credito = sum(c['valor_credito'] for c in combinacao)
98
- total_entrada = sum(c['valor_entrada'] for c in combinacao)
 
99
  total_parcelas = sum(c['valor_parcela'] for c in combinacao)
100
 
101
  if (credito_min <= total_credito <= credito_max and
@@ -125,7 +126,8 @@ def formatar_resultados(resultados):
125
  for idx, (adm, combinacao, _) in enumerate(resultados[:15], 1):
126
  codigos = [str(c.get('codigo', 'N/A')) for c in combinacao]
127
  total_credito = sum(c['valor_credito'] for c in combinacao)
128
- total_entrada = sum(c['valor_entrada'] for c in combinacao)
 
129
  total_saldo = sum(c['saldo_devedor'] for c in combinacao)
130
  total_parcelas = sum(c['valor_parcela'] for c in combinacao)
131
  maior_prazo = max(int(c.get('qtd_parcelas', 0)) for c in combinacao)
@@ -156,6 +158,10 @@ def formatar_resultados(resultados):
156
  # Carrega a planilha uma vez quando o aplicativo inicia
157
  carregar_planilha()
158
 
 
 
 
 
159
  # Prepara a lista de administradoras para o Gradio
160
  def get_administradoras_options():
161
  if df is not None:
@@ -253,7 +259,7 @@ with gr.Blocks(title="Sistema de Busca de Consórcio Imóvel") as demo:
253
  output_text = gr.Textbox(label="Resultados da Busca", lines=20, max_lines=40, interactive=False, placeholder="Os resultados aparecerão aqui...")
254
 
255
  submit_btn.click(
256
- fn=buscar_combinacoes,
257
  inputs=[credito_input, entrada_input, parcela_input, administradoras_multiselect],
258
  outputs=output_text
259
  )
 
95
  for r in range(1, min(3, len(cotas)) + 1): # Máximo 3 cotas por combinação
96
  for combinacao in itertools.combinations(cotas, r):
97
  total_credito = sum(c['valor_credito'] for c in combinacao)
98
+ total_entrada_base = sum(c['valor_entrada'] for c in combinacao)
99
+ total_entrada = total_entrada_base + (total_credito * 0.085) # aplica os 8,5% sobre o crédito
100
  total_parcelas = sum(c['valor_parcela'] for c in combinacao)
101
 
102
  if (credito_min <= total_credito <= credito_max and
 
126
  for idx, (adm, combinacao, _) in enumerate(resultados[:15], 1):
127
  codigos = [str(c.get('codigo', 'N/A')) for c in combinacao]
128
  total_credito = sum(c['valor_credito'] for c in combinacao)
129
+ total_entrada_base = sum(c['valor_entrada'] for c in combinacao)
130
+ total_entrada = total_entrada_base + (total_credito * 0.085)
131
  total_saldo = sum(c['saldo_devedor'] for c in combinacao)
132
  total_parcelas = sum(c['valor_parcela'] for c in combinacao)
133
  maior_prazo = max(int(c.get('qtd_parcelas', 0)) for c in combinacao)
 
158
  # Carrega a planilha uma vez quando o aplicativo inicia
159
  carregar_planilha()
160
 
161
+ def ajustar_e_buscar(credito_desejado, entrada_desejada, parcela_desejada, administradoras):
162
+ entrada_calculada = credito_desejado * 0.085 + entrada_desejada
163
+ return buscar_combinacoes(credito_desejado, entrada_calculada, parcela_desejada, administradoras)
164
+
165
  # Prepara a lista de administradoras para o Gradio
166
  def get_administradoras_options():
167
  if df is not None:
 
259
  output_text = gr.Textbox(label="Resultados da Busca", lines=20, max_lines=40, interactive=False, placeholder="Os resultados aparecerão aqui...")
260
 
261
  submit_btn.click(
262
+ fn=ajustar_e_buscar,
263
  inputs=[credito_input, entrada_input, parcela_input, administradoras_multiselect],
264
  outputs=output_text
265
  )