diff --git a/controllers/main.py b/controllers/main.py index 659c6f68603da18c450beeae580c34a1c87b3706..bda8ff167724ea71930e791c5e0d987650eb3e92 100644 --- a/controllers/main.py +++ b/controllers/main.py @@ -27,6 +27,7 @@ class ExportJournalCg(http.Controller): date_creation_start=False, date_creation_end=False, partner_ids=False, + journal_ids=False, export_type="empty", **kwargs ): @@ -41,6 +42,7 @@ class ExportJournalCg(http.Controller): :param date_creation_start: date :param date_creation_end: date :param partner_ids: list + :param journal_ids: list :param export_type: string :return: file """ @@ -57,7 +59,6 @@ class ExportJournalCg(http.Controller): # journal_ur_med_id = company_id.journal_ur_med_id product_adhesion_id = company_id.product_adhesion_id - journal_adhesion_id = company_id.journal_adhesion_id # Selection des dates + pas d'export du journal UR / FEDE domain = [ @@ -83,6 +84,10 @@ class ExportJournalCg(http.Controller): if partner_ids: domain += [("partner_id", "in", list(map(int, partner_ids.split(","))))] + # adds journal in domain + if journal_ids: + domain += [("journal_id", "in", list(map(int, journal_ids.split(","))))] + export_line_ids = request.env["account.move.line"].search(domain) lines_to_export = [] @@ -120,7 +125,7 @@ class ExportJournalCg(http.Controller): line=line, amount=amount, direction=direction, - journal="VE", + journal=line.journal_id.code, account="756200", ) ) @@ -131,7 +136,7 @@ class ExportJournalCg(http.Controller): amount=amount, direction=direction, account="756200", - journal="VE", + journal=line.journal_id.code, a_type="A", analytic="010000", ) @@ -143,7 +148,7 @@ class ExportJournalCg(http.Controller): amount=amount / 2, direction=direction, account=("4660" + line.partner_id.ur_id.code_ur), - journal="OD", + journal=line.journal_id.code, ) ) od_direction = "D" if direction == "C" else "C" @@ -153,7 +158,7 @@ class ExportJournalCg(http.Controller): amount=amount / 2, direction=od_direction, account=("6581" + line.partner_id.ur_id.code_ur), - journal="OD", + journal=line.journal_id.code, ) ) lines_to_export.append( @@ -162,22 +167,22 @@ class ExportJournalCg(http.Controller): amount=amount / 2, direction=od_direction, account=("6581" + line.partner_id.ur_id.code_ur), - journal="OD", + journal=line.journal_id.code, a_type="A", analytic="010000", ) ) # Compte client CG Scop - Adhésion & Cotisation journaux de vente else: - if line.journal_id == journal_adhesion_id: - journal = "VE" - elif line.journal_id.type == "sale": + if line.journal_id.type == "sale": journal = line.journal_id.code else: journal = "EF" if line.account_id == default_receivable_account_id: account = "4112" + line.partner_id.ur_id.code_ur adh_account = self._get_partner_number(line.partner_id) + elif "old" in line.account_id.code: + account = line.account_id.code.replace("old", "") else: account = line.account_id.code adh_account = "" @@ -193,7 +198,7 @@ class ExportJournalCg(http.Controller): ) ) - line.write({"date_export": datetime.now()}) + line.update({"date_export": datetime.now()}) filename_ = "Export CG Scop - " + datetime.strftime( datetime.now(), "%Y-%m-%d_%Hh%M" diff --git a/wizard/export_journal_wizard.py b/wizard/export_journal_wizard.py index f6290a967fcdc4c48fd8decaf46cc093d96d6263..9a52e8342c6d3ec95de5eebb5441a67643bd8bd5 100644 --- a/wizard/export_journal_wizard.py +++ b/wizard/export_journal_wizard.py @@ -30,6 +30,10 @@ class ExportJournalWizard(models.TransientModel): company_id = fields.Many2one( comodel_name="res.company", default=_get_default_company ) + journal_ids = fields.Many2many( + comodel_name="account.journal", + string="Journaux", + ) partner_ids = fields.Many2many( comodel_name="res.partner", string="Coopératives", @@ -69,6 +73,8 @@ class ExportJournalWizard(models.TransientModel): ) if self.partner_ids: datas["partner_ids"] = ",".join(str(x) for x in self.partner_ids.ids) + if self.journal_ids: + datas["journal_ids"] = ",".join(str(x) for x in self.journal_ids.ids) return { "type": "ir.actions.act_url", "url": "/web/export_journal_cg?" + urlencode(datas), diff --git a/wizard/export_journal_wizard_view.xml b/wizard/export_journal_wizard_view.xml index e1ec98f1e591366c7e573f40827738614f135251..5b71a272e89b19a9e8366abe33388f2b6ce7fda9 100644 --- a/wizard/export_journal_wizard_view.xml +++ b/wizard/export_journal_wizard_view.xml @@ -61,6 +61,15 @@ options="{'no_create': True, 'no_edit': True}" /> </group> + <p style="background: #f0f0f0; padding: 5px"><u + >Sélection des journaux (si souhaité) :</u></p> + <group> + <field + name="journal_ids" + widget="many2many_tags" + options="{'no_create': True, 'no_edit': True}" + /> + </group> <footer> <button class="btn btn-sm btn-primary"