Skip to content
Snippets Groups Projects
Commit bc5282fe authored by Jordi Isidro Llobet's avatar Jordi Isidro Llobet
Browse files

no generar factures duplicades

parent 43c933a2
Branches main
No related tags found
No related merge requests found
...@@ -6,7 +6,6 @@ import requests ...@@ -6,7 +6,6 @@ import requests
from pandas import DataFrame from pandas import DataFrame
import json import json
import time import time
import aiohttp
from .database import Base from .database import Base
...@@ -48,7 +47,7 @@ class ApiUser(Base): ...@@ -48,7 +47,7 @@ class ApiUser(Base):
def get_invoice_oc(con, id_billing_run, group_code): def get_invoice_oc(con, id_billing_run, group_code):
stm_group_code = "" if group_code is None else " and ocg.code='"+group_code+"' " stm_group_code = "" if group_code is None else " and ocg.code='"+group_code+"' "
# factures a generar mirant que no estiguin ja generades.
statement = """ statement = """
select oi.description_cat, oi.code select oi.description_cat, oi.code
, round(sum(oi.amount_without_tax),2) as preu , round(sum(oi.amount_without_tax),2) as preu
...@@ -63,7 +62,17 @@ def get_invoice_oc(con, id_billing_run, group_code): ...@@ -63,7 +62,17 @@ def get_invoice_oc(con, id_billing_run, group_code):
where 1=1 where 1=1
and id_billing_run='""" + id_billing_run + "' " + \ and id_billing_run='""" + id_billing_run + "' " + \
stm_group_code + \ stm_group_code + \
"""group by oi.description_cat, oi.code, oi.tax_percent , oi.billing_run_uuid, ocg.code """
and not exists
(
select *
from odoo_account_invoice ai
join odoo_contract_group cg on ai.contract_group_id =cg.id
where ocg.code = cg.code
and ai.billing_run_id = oi.id_billing_run::varchar
and ai.state<>'cancel'
)
group by oi.description_cat, oi.code, oi.tax_percent , oi.billing_run_uuid, ocg.code
, oi.tax_code, oi.billing_account_code , oi.tax_code, oi.billing_account_code
having sum(oi.amount_without_tax)<>0""" having sum(oi.amount_without_tax)<>0"""
...@@ -83,8 +92,6 @@ def get_invoice_oc(con, id_billing_run, group_code): ...@@ -83,8 +92,6 @@ def get_invoice_oc(con, id_billing_run, group_code):
"Content-Type": "application/json", "Content-Type": "application/json",
"api-key": APIKEY "api-key": APIKEY
} }
session = aiohttp.ClientSession()
for x in group: for x in group:
d = datetime.today() # datetime.today().strftime('%Y-%m-%d') d = datetime.today() # datetime.today().strftime('%Y-%m-%d')
data = { data = {
...@@ -107,12 +114,11 @@ def get_invoice_oc(con, id_billing_run, group_code): ...@@ -107,12 +114,11 @@ def get_invoice_oc(con, id_billing_run, group_code):
} }
data["invoiceLines"].append(invoiceline) data["invoiceLines"].append(invoiceline)
# print(data) # print(data)
# r = requests.post(url=API_ENDPOINT, data=json.dumps(data), headers=head) requests.post(url=API_ENDPOINT, data=json.dumps(data), headers=head)
session.post(url=API_ENDPOINT, data=json.dumps(data), headers=head)
session.detach()
return 'OK' #[dict(zip(columns, t)) for t in registries] return 'OK' #[dict(zip(columns, t)) for t in registries]
def invoice_generate_oc_pdf(con, invoice): def invoice_generate_oc_pdf(con, invoice):
qry = "insert into external.invoice_generator (id, name_invoice, status, dt_insert, dt_update) values (nextval('external.seq_invoice_generator'),'{}', 'inici', current_timestamp, current_timestamp)".format(invoice) qry = "insert into external.invoice_generator (id, name_invoice, status, dt_insert, dt_update) values (nextval('external.seq_invoice_generator'),'{}', 'inici', current_timestamp, current_timestamp)".format(invoice)
con.execute(qry) con.execute(qry)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment