Skip to content
Snippets Groups Projects
Commit bfb79546 authored by Benjamin - Le Filament's avatar Benjamin - Le Filament
Browse files

[add] change partner payment mode from mandate

parent 30e26ea0
Branches
No related tags found
No related merge requests found
# © 2020 Le Filament (<http://www.le-filament.com>) # © 2020 Le Filament (<http://www.le-filament.com>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import models from odoo import _, models
from odoo.exceptions import UserError
class AccountBankingMandate(models.Model): class AccountBankingMandate(models.Model):
...@@ -10,6 +11,15 @@ class AccountBankingMandate(models.Model): ...@@ -10,6 +11,15 @@ class AccountBankingMandate(models.Model):
# ------------------------------------------------------ # ------------------------------------------------------
# Button functions # Button functions
# ------------------------------------------------------ # ------------------------------------------------------
def set_payment_order(self):
self.ensure_one()
payment_mode = self.env["account.payment.mode"].search(
[("payment_method_id.code", "=", "sepa_direct_debit")]
)
if not payment_mode:
raise UserError(_("Aucun mode de prélèvement SEPA configuré."))
self.partner_id.customer_payment_mode_id = payment_mode
def set_invoice_mandate(self): def set_invoice_mandate(self):
return { return {
"name": "Affectation du nouveau mandat", "name": "Affectation du nouveau mandat",
...@@ -42,6 +52,8 @@ class AccountBankingMandate(models.Model): ...@@ -42,6 +52,8 @@ class AccountBankingMandate(models.Model):
payment_mode = self.env["account.payment.mode"].search( payment_mode = self.env["account.payment.mode"].search(
[("payment_method_id.code", "=", "sepa_direct_debit")] [("payment_method_id.code", "=", "sepa_direct_debit")]
) )
if not payment_mode:
raise UserError(_("Aucun mode de prélèvement SEPA configuré."))
invoice.update( invoice.update(
{ {
"payment_mode_id": payment_mode.id, "payment_mode_id": payment_mode.id,
......
...@@ -12,10 +12,19 @@ ...@@ -12,10 +12,19 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<xpath expr="//group[@name='main']" position="before"> <xpath expr="//group[@name='main']" position="before">
<div class="col-12 mt16 mb16" name="change_mandate_button"> <div class="col-12 mt16 mb16" name="change_mandate_button">
<button
name="set_payment_order"
type="object"
class="btn-outline-info"
string="Affecter le prélèvement comme mode de paiement par défaut"
attrs="{'invisible': [('state', '!=', 'valid')]}"
confirm="Valider le prélèvement par défaut pour la coopérative ?"
/>
<button <button
name="set_invoice_mandate" name="set_invoice_mandate"
type="object" type="object"
class="btn-outline-info" class="btn-outline-info"
style="margin-left: 15px;"
string="Affecter ce mandat aux factures ouvertes" string="Affecter ce mandat aux factures ouvertes"
attrs="{'invisible': [('state', '!=', 'valid')]}" attrs="{'invisible': [('state', '!=', 'valid')]}"
/> />
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment