diff --git a/controllers/main.py b/controllers/main.py index e597342d295a34c712a9667bcfd1df6fe60957fa..2323135f620b689cdbf1a50374258e5790785d24 100644 --- a/controllers/main.py +++ b/controllers/main.py @@ -34,13 +34,15 @@ class ExportJournalCg(http.Controller): default_receivable_account_id = request.env.ref('l10n_fr.1_fr_pcg_recv') contribution_cg_id = company_id.contribution_cg_id contribution_ur_or_fede_journal_id = company_id.contribution_ur_or_fede_journal_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 = [ ('date', '>=', date_start), ('date', '<=', date_end), ('partner_id', '!=', False), - ('journal_id', '!=', contribution_ur_or_fede_journal_id.id) + ('journal_id', '!=', contribution_ur_or_fede_journal_id.id), ] if type == 'empty': domain += [('date_export', '=', False)] @@ -75,13 +77,53 @@ class ExportJournalCg(http.Controller): account=('7060' + line.partner_id.ur_id.code_ur), a_type='A', analytic='030201') ) - # Compte client CG Scop + # Produit Adhésion CG + Analytique + OD + if line.product_id == product_adhesion_id: + amount_analytic = round(1 / 2 * amount, 2) + # Compte général + lines_to_export.append(self._export_row( + line=line, amount=amount, direction=direction, + journal='VE', account='706200') + ) + # Lignes analytiques + lines_to_export.append(self._export_row( + line=line, amount=amount_analytic, direction=direction, + account='706200', journal='VE', a_type='A', + analytic='010201') + ) + lines_to_export.append(self._export_row( + line=line, amount=amount_analytic, direction=direction, + account='706200', journal='VE', a_type='A', + analytic='020201') + ) + # OD Adhésion + lines_to_export.append(self._export_row( + line=line, amount=amount/2, direction=direction, + account=('4660' + line.partner_id.ur_id.code_ur), + journal='OD') + ) + lines_to_export.append(self._export_row( + line=line, amount=amount / 2, direction='D', + account=('6581' + line.partner_id.ur_id.code_ur), + journal='OD',) + ) + lines_to_export.append(self._export_row( + line=line, amount=amount / 2, direction='D', + account=('6581' + line.partner_id.ur_id.code_ur), + journal='OD', a_type='A', analytic='020201') + ) + # Compte client CG Scop - Adhésion & Cotisation elif line.account_id == default_receivable_account_id: + if line.journal_id == journal_adhesion_id: + journal = 'VE' + else: + journal = 'CO' # Compte général lines_to_export.append(self._export_row( line=line, amount=amount, direction=direction, account=('4112' + line.partner_id.ur_id.code_ur), - adh_account=self._get_partner_number(line.partner_id)) + adh_account=self._get_partner_number(line.partner_id), + journal=journal) ) # Banque else: @@ -111,7 +153,7 @@ class ExportJournalCg(http.Controller): if line.invoice_id.bordereau_id.name: inv_num = line.invoice_id.bordereau_id.name elif line.full_reconcile_id.reconciled_line_ids.mapped('invoice_id'): - line.full_reconcile_id.reconciled_line_ids.mapped('invoice_id')[0].bordereau_id.name + inv_num = line.full_reconcile_id.reconciled_line_ids.mapped('invoice_id')[0].bordereau_id.name else: inv_num = '' # Libellé