diff --git a/account_payment_sale/README.rst b/account_payment_sale/README.rst index b06129e42..d4e1399d0 100644 --- a/account_payment_sale/README.rst +++ b/account_payment_sale/README.rst @@ -14,13 +14,13 @@ Account Payment Sale :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbank--payment-lightgray.png?logo=github - :target: https://github.com/OCA/bank-payment/tree/12.0/account_payment_sale + :target: https://github.com/OCA/bank-payment/tree/13.0/account_payment_sale :alt: OCA/bank-payment .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/bank-payment-12-0/bank-payment-12-0-account_payment_sale + :target: https://translation.odoo-community.org/projects/bank-payment-13-0/bank-payment-13-0-account_payment_sale :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/97/12.0 + :target: https://runbot.odoo-community.org/runbot/173/13.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -39,11 +39,6 @@ modules in the banking addons conflict with *account_payment_extension*. .. contents:: :local: -Configuration -============= - -There is nothing to configure. - Usage ===== @@ -57,7 +52,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -78,6 +73,7 @@ Contributors * Alexandre Fayolle * Danimar Ribeiro * Raphaël Valyi +* Raf Ven Maintainers ~~~~~~~~~~~ @@ -92,6 +88,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -This module is part of the `OCA/bank-payment `_ project on GitHub. +This module is part of the `OCA/bank-payment `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_payment_sale/__manifest__.py b/account_payment_sale/__manifest__.py index f1fce0f34..7966b4d6c 100644 --- a/account_payment_sale/__manifest__.py +++ b/account_payment_sale/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Account Payment Sale", - "version": "12.0.1.1.0", + "version": "13.0.1.1.0", "category": "Banking addons", "license": "AGPL-3", "summary": "Adds payment mode on sale orders", diff --git a/account_payment_sale/i18n/account_payment_sale.pot b/account_payment_sale/i18n/account_payment_sale.pot index f2ba0905d..3d4dcbd2d 100644 --- a/account_payment_sale/i18n/account_payment_sale.pot +++ b/account_payment_sale/i18n/account_payment_sale.pot @@ -1,12 +1,12 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * account_payment_sale +# * account_payment_sale # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 12.0\n" +"Project-Id-Version: Odoo Server 13.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: <>\n" +"Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,13 +19,13 @@ msgid "Payment Mode:" msgstr "" #. module: account_payment_sale -#: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id -msgid "Payment Mode" +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" msgstr "" #. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" +#: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id +msgid "Payment Mode" msgstr "" #. module: account_payment_sale @@ -33,3 +33,7 @@ msgstr "" msgid "Sales Advance Payment Invoice" msgstr "" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" diff --git a/account_payment_sale/i18n/ca.po b/account_payment_sale/i18n/ca.po index 068baed16..a89ecd904 100644 --- a/account_payment_sale/i18n/ca.po +++ b/account_payment_sale/i18n/ca.po @@ -24,17 +24,24 @@ msgstr "" msgid "Payment Mode:" msgstr "Mode de pagament:" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Mode de pagament" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "Comanda" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "Factura d'avançament de venda" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +#, fuzzy +#| msgid "Sale Order" +msgid "Sales Order" +msgstr "Comanda" diff --git a/account_payment_sale/i18n/da_DK.po b/account_payment_sale/i18n/da_DK.po index 592e57d59..e759ccc61 100644 --- a/account_payment_sale/i18n/da_DK.po +++ b/account_payment_sale/i18n/da_DK.po @@ -23,17 +23,22 @@ msgstr "" msgid "Payment Mode:" msgstr "" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Betalingsform" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" diff --git a/account_payment_sale/i18n/de.po b/account_payment_sale/i18n/de.po index 387410be8..4c736eb5a 100644 --- a/account_payment_sale/i18n/de.po +++ b/account_payment_sale/i18n/de.po @@ -23,17 +23,22 @@ msgstr "" msgid "Payment Mode:" msgstr "Zahlungsmethode:" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Zahlungsmodus" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "Verkaufsanzahlungsrechnung" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" diff --git a/account_payment_sale/i18n/es.po b/account_payment_sale/i18n/es.po index e8038e6ed..09df33aae 100644 --- a/account_payment_sale/i18n/es.po +++ b/account_payment_sale/i18n/es.po @@ -24,20 +24,25 @@ msgstr "" msgid "Payment Mode:" msgstr "Modo de pago:" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Modo de pago" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "Ventas. Anticipo pago factura" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" + #~ msgid "Quotation" #~ msgstr "Presupuesto" diff --git a/account_payment_sale/i18n/fr.po b/account_payment_sale/i18n/fr.po index 797d82ef5..f1442a7ac 100644 --- a/account_payment_sale/i18n/fr.po +++ b/account_payment_sale/i18n/fr.po @@ -24,20 +24,25 @@ msgstr "" msgid "Payment Mode:" msgstr "Mode de paiement :" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Mode de paiement" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "Facture de paiement anticipé des ventes" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" + #~ msgid "Quotation" #~ msgstr "Devis" diff --git a/account_payment_sale/i18n/nl.po b/account_payment_sale/i18n/nl.po index 9ed504117..2c3a80438 100644 --- a/account_payment_sale/i18n/nl.po +++ b/account_payment_sale/i18n/nl.po @@ -23,17 +23,22 @@ msgstr "" msgid "Payment Mode:" msgstr "Betaalmode:" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Betaalwijze" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "Verkoop Incassofactuur" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" diff --git a/account_payment_sale/i18n/nl_NL.po b/account_payment_sale/i18n/nl_NL.po index 19712745b..0bee1eb89 100644 --- a/account_payment_sale/i18n/nl_NL.po +++ b/account_payment_sale/i18n/nl_NL.po @@ -24,18 +24,23 @@ msgstr "" msgid "Payment Mode:" msgstr "" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -#, fuzzy -msgid "Sale Order" -msgstr "Verkooporder" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +#, fuzzy +msgid "Sales Order" +msgstr "Verkooporder" diff --git a/account_payment_sale/i18n/pt_BR.po b/account_payment_sale/i18n/pt_BR.po index b0df2c64e..fb051a118 100644 --- a/account_payment_sale/i18n/pt_BR.po +++ b/account_payment_sale/i18n/pt_BR.po @@ -11,8 +11,8 @@ msgstr "" "POT-Creation-Date: 2018-02-02 03:43+0000\n" "PO-Revision-Date: 2019-09-03 03:23+0000\n" "Last-Translator: Rodrigo Macedo \n" -"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/" -"23907/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/" +"teams/23907/pt_BR/)\n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -25,17 +25,24 @@ msgstr "" msgid "Payment Mode:" msgstr "Modo de Pagamento:" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Modo de Pagamento" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "Ordem de Venda" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "Fatura de pagamento antecipado de vendas" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +#, fuzzy +#| msgid "Sale Order" +msgid "Sales Order" +msgstr "Ordem de Venda" diff --git a/account_payment_sale/i18n/sl.po b/account_payment_sale/i18n/sl.po index 4a90e5fd8..3e4b351d7 100644 --- a/account_payment_sale/i18n/sl.po +++ b/account_payment_sale/i18n/sl.po @@ -24,17 +24,22 @@ msgstr "" msgid "Payment Mode:" msgstr "" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "Metoda plačila" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +msgid "Sales Order" +msgstr "" diff --git a/account_payment_sale/i18n/zh_CN.po b/account_payment_sale/i18n/zh_CN.po index 685913871..58d7ac7b9 100644 --- a/account_payment_sale/i18n/zh_CN.po +++ b/account_payment_sale/i18n/zh_CN.po @@ -1,6 +1,6 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * account_payment_sale +# * account_payment_sale # msgid "" msgstr "" @@ -21,17 +21,24 @@ msgstr "" msgid "Payment Mode:" msgstr "付款方式:" +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_account_move +msgid "Journal Entries" +msgstr "" + #. module: account_payment_sale #: model:ir.model.fields,field_description:account_payment_sale.field_sale_order__payment_mode_id msgid "Payment Mode" msgstr "付款方式" -#. module: account_payment_sale -#: model:ir.model,name:account_payment_sale.model_sale_order -msgid "Sale Order" -msgstr "销售订单" - #. module: account_payment_sale #: model:ir.model,name:account_payment_sale.model_sale_advance_payment_inv msgid "Sales Advance Payment Invoice" msgstr "销售预付款发票" + +#. module: account_payment_sale +#: model:ir.model,name:account_payment_sale.model_sale_order +#, fuzzy +#| msgid "Sale Order" +msgid "Sales Order" +msgstr "销售订单" diff --git a/account_payment_sale/models/__init__.py b/account_payment_sale/models/__init__.py index 6aacb7531..df48fd830 100644 --- a/account_payment_sale/models/__init__.py +++ b/account_payment_sale/models/__init__.py @@ -1 +1,2 @@ +from . import account_move from . import sale_order diff --git a/account_payment_sale/models/account_move.py b/account_payment_sale/models/account_move.py new file mode 100644 index 000000000..f2bf20f88 --- /dev/null +++ b/account_payment_sale/models/account_move.py @@ -0,0 +1,19 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import api, models + + +class AccountMove(models.Model): + _inherit = "account.move" + + @api.model + def create(self, vals_list): + if vals_list.get("payment_mode_id"): + payment_mode = self.env["account.payment.mode"].browse( + vals_list["payment_mode_id"] + ) + if payment_mode.bank_account_link == "fixed": + vals_list[ + "invoice_partner_bank_id" + ] = payment_mode.fixed_journal_id.bank_account_id.id + return super().create(vals_list) diff --git a/account_payment_sale/models/sale_order.py b/account_payment_sale/models/sale_order.py index 79de661bd..cea5f06f3 100644 --- a/account_payment_sale/models/sale_order.py +++ b/account_payment_sale/models/sale_order.py @@ -8,59 +8,31 @@ class SaleOrder(models.Model): _inherit = "sale.order" payment_mode_id = fields.Many2one( - "account.payment.mode", - string="Payment Mode", + comodel_name="account.payment.mode", + compute="_compute_payment_mode", + store=True, + readonly=False, domain=[("payment_type", "=", "inbound")], ) + @api.depends("partner_id") + def _compute_payment_mode(self): + for order in self: + if order.partner_id: + order.payment_mode_id = order.partner_id.customer_payment_mode_id + else: + order.payment_mode_id = False + def _get_payment_mode_vals(self, vals): if self.payment_mode_id: vals["payment_mode_id"] = self.payment_mode_id.id if self.payment_mode_id.bank_account_link == "fixed": vals[ - "partner_bank_id" + "invoice_partner_bank_id" ] = self.payment_mode_id.fixed_journal_id.bank_account_id.id return vals - @api.onchange("partner_id") - def onchange_partner_id(self): - res = super().onchange_partner_id() - if self.partner_id: - self.payment_mode_id = self.partner_id.customer_payment_mode_id - else: - self.payment_mode_id = False - return res - - @api.multi def _prepare_invoice(self): """Copy bank partner from sale order to invoice""" vals = super()._prepare_invoice() return self._get_payment_mode_vals(vals) - - def _finalize_invoices(self, invoices, references): - """ - Invoked after creating invoices at the end of action_invoice_create. - - We must override this method since the onchange on partner is called by - the base method and therefore will change the specific payment_mode set - on the SO if one is defined on the partner.. - - :param invoices: {group_key: invoice} - :param references: {invoice: order} - """ - payment_vals_by_invoice = {} - for invoice in invoices.values(): - payment_vals_by_invoice[invoice] = { - "payment_mode_id": invoice.payment_mode_id.id, - "partner_bank_id": invoice.partner_bank_id.id, - } - res = super()._finalize_invoices(invoices, references) - for invoice in invoices.values(): - payment_vals = payment_vals_by_invoice[invoice] - if invoice.payment_mode_id.id == payment_vals["payment_mode_id"]: - payment_vals.pop("payment_mode_id") - if invoice.partner_bank_id.id == payment_vals["partner_bank_id"]: - payment_vals.pop("partner_bank_id") - if payment_vals: - invoice.write(payment_vals) - return res diff --git a/account_payment_sale/readme/CONTRIBUTORS.rst b/account_payment_sale/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..66e1e8090 --- /dev/null +++ b/account_payment_sale/readme/CONTRIBUTORS.rst @@ -0,0 +1,6 @@ +* Pedro M. Baeza +* Alexis de Lattre +* Alexandre Fayolle +* Danimar Ribeiro +* Raphaël Valyi +* Raf Ven diff --git a/account_payment_sale/readme/DESCRIPTION.rst b/account_payment_sale/readme/DESCRIPTION.rst new file mode 100644 index 000000000..3f30200f3 --- /dev/null +++ b/account_payment_sale/readme/DESCRIPTION.rst @@ -0,0 +1,8 @@ +This modules adds one field on sale orders: *Payment Mode*. +This field is copied from customer to sale order and then from sale order to +customer invoice. + +This module is similar to the *sale_payment* module; the main difference is +that it doesn't depend on the *account_payment_extension* module (it's not the +only module to conflict with *account_payment_extension*; all the SEPA +modules in the banking addons conflict with *account_payment_extension*. diff --git a/account_payment_sale/readme/USAGE.rst b/account_payment_sale/readme/USAGE.rst new file mode 100644 index 000000000..59244604c --- /dev/null +++ b/account_payment_sale/readme/USAGE.rst @@ -0,0 +1,3 @@ +You are able to add a payment mode directly on a partner. +This payment mode is automatically associated to the sale order, then on related invoice. +This default value can be changed in a draft sale order or draft invoice. diff --git a/account_payment_sale/static/description/index.html b/account_payment_sale/static/description/index.html index db1b96213..6ee57eb02 100644 --- a/account_payment_sale/static/description/index.html +++ b/account_payment_sale/static/description/index.html @@ -3,7 +3,7 @@ - + Account Payment Sale