Skip to content
Extraits de code Groupes Projets
Valider ac899779 rédigé par Rémi - Le Filament's avatar Rémi - Le Filament
Parcourir les fichiers

[FIX] bank statement creation

parent e2cee861
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -48,11 +48,28 @@ class EbicsStatementRopImport(models.TransientModel): ...@@ -48,11 +48,28 @@ class EbicsStatementRopImport(models.TransientModel):
<hr/> <hr/>
""" """
ebics_mvt_file_id = ebics_wizard_act.get("context").get("ebics_file_ids") ebics_mvt_file_id = ebics_wizard_act.get("context").get("ebics_file_ids")
ebics_mvt_file = self.env["ebics.file"].search( ebics_mvt_file = self.env["ebics.file"].browse(ebics_mvt_file_id)
[("id", "in", ebics_mvt_file_id)]
)
if ebics_mvt_file: if ebics_mvt_file:
ebics_mvt_file.ensure_one() # Process EBICS MVT (= create bank statement)
ebics_mvt_file.process()
bank_statement = ebics_mvt_file.bank_statement_ids
bank_statement.ensure_one()
self.log += f"""
<strong><u>Import des mouvements enrichis<u></strong><br/>
Référence : {bank_statement.name}
- Journal : {bank_statement.journal_id.name}
- Date : {bank_statement.date} <br/>
Solde Initial : {bank_statement.balance_start} €<br/>
Solde Final : {bank_statement.balance_end}
<hr/>
"""
else:
self.log += """
<strong><u>Import des mouvements enrichis<u></strong><br/>
Aucune donnée n'a pu être téléchargée,
il n'y a donc pas de données à importer.
<hr/>
"""
# Download EBICS ROP # Download EBICS ROP
ebics_rop_obj = self.env["ebics.xfer"].create( ebics_rop_obj = self.env["ebics.xfer"].create(
...@@ -71,50 +88,11 @@ class EbicsStatementRopImport(models.TransientModel): ...@@ -71,50 +88,11 @@ class EbicsStatementRopImport(models.TransientModel):
<hr/> <hr/>
""" """
ebics_rop_file_id = ebics_rop_wizard_act.get("context").get("ebics_file_ids") ebics_rop_file_id = ebics_rop_wizard_act.get("context").get("ebics_file_ids")
ebics_rop_file = self.env["ebics.file"].search( ebics_rop_file = self.env["ebics.file"].browse(ebics_rop_file_id)
[("id", "in", ebics_rop_file_id)]
)
if ebics_rop_file:
ebics_rop_file.ensure_one()
# Import EBICS mvt file
if ebics_mvt_file:
journal_id = self.env["account.journal"].search(
[("bank_account_id", "=", ebics_conf_id.bank_id.id)]
)
import_mvt = self.env["account.bank.statement.import"].create(
{
"data_file": ebics_mvt_file.data,
"filename": ebics_mvt_file.name,
}
)
import_mvt_act = import_mvt.with_context(
journal_id=journal_id.id
).import_file()
bank_statement_id = import_mvt_act.get("context").get("statement_ids")
bank_statement = self.env["account.bank.statement"].browse(
bank_statement_id
)
bank_statement.ensure_one()
self.log += f"""
<strong><u>Import des mouvements enrichis<u></strong><br/>
Référence : {bank_statement.name}
- Journal : {bank_statement.journal_id.name}
- Date : {bank_statement.date} <br/>
Solde Initial : {bank_statement.balance_start} €<br/>
Solde Final : {bank_statement.balance_end}
<hr/>
"""
else: if ebics_rop_file and bank_statement:
self.log += """ # Process EBICS ROP file
<strong><u>Import des mouvements enrichis<u></strong><br/> ebics_rop_file.ensure_one()
Aucune donnée n'a pu être téléchargée,
il n'y a donc pas de données à importer.
<hr/>
"""
if ebics_rop_file and ebics_mvt_file:
# Suppression de lignes CORPORATE # Suppression de lignes CORPORATE
line_to_delete = bank_statement.line_ids.filtered( line_to_delete = bank_statement.line_ids.filtered(
lambda line: "CORPORATE CARD" in line.name lambda line: "CORPORATE CARD" in line.name
...@@ -132,6 +110,7 @@ class EbicsStatementRopImport(models.TransientModel): ...@@ -132,6 +110,7 @@ class EbicsStatementRopImport(models.TransientModel):
for ropl in rop_lines: for ropl in rop_lines:
ropl.update({"statement_id": bank_statement.id}) ropl.update({"statement_id": bank_statement.id})
self.env["account.bank.statement.line"].create(ropl) self.env["account.bank.statement.line"].create(ropl)
ebics_rop_file.state = "done"
self.log += f""" self.log += f"""
<strong><u>Création des lignes ROP<u></strong><br/> <strong><u>Création des lignes ROP<u></strong><br/>
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter