changeset caf8ad9e922c in modules/account_es:default
details:
https://hg.tryton.org/modules/account_es?cmd=changeset;node=caf8ad9e922c
description:
Allow requests for advancements on SEPA payments
issue9005
review282781003
diffstat:
CHANGELOG | 1 +
__init__.py | 5 +++++
account_payment.py | 36 ++++++++++++++++++++++++++++++++++++
account_payment.xml | 13 +++++++++++++
setup.py | 1 +
tests/test_account_es.py | 2 +-
tryton.cfg | 2 ++
view/payment_journal_form.xml | 10 ++++++++++
8 files changed, 69 insertions(+), 1 deletions(-)
diffs (137 lines):
diff -r 1148f779bd2d -r caf8ad9e922c CHANGELOG
--- a/CHANGELOG Mon Feb 17 09:53:12 2020 +0100
+++ b/CHANGELOG Sat Feb 22 15:17:32 2020 +0100
@@ -1,3 +1,4 @@
+* Allow requests for advancements on SEPA payments
* Exclude taxes from other reports on Spanish VAT List
Version 5.4.0 - 2019-11-04
diff -r 1148f779bd2d -r caf8ad9e922c __init__.py
--- a/__init__.py Mon Feb 17 09:53:12 2020 +0100
+++ b/__init__.py Sat Feb 22 15:17:32 2020 +0100
@@ -4,6 +4,7 @@
from . import account
from . import party
from . import reporting_tax
+from . import account_payment
def register():
@@ -29,3 +30,7 @@
Pool.register(
reporting_tax.PrintAEAT,
module='account_es', type_='wizard')
+ Pool.register(
+ account_payment.Journal,
+ account_payment.Group,
+ module='account_es', type_='model', depends=['account_payment_sepa'])
diff -r 1148f779bd2d -r caf8ad9e922c account_payment.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/account_payment.py Sat Feb 22 15:17:32 2020 +0100
@@ -0,0 +1,36 @@
+# This file is part of Tryton. The COPYRIGHT file at the top level of
+# this repository contains the full copyright notices and license terms.
+from trytond.model import fields
+from trytond.pool import PoolMeta
+from trytond.pyson import Eval
+
+
+class Journal(metaclass=PoolMeta):
+ __name__ = 'account.payment.journal'
+ es_sepa_bank_account_country_code = fields.Function(
+ fields.Char("Bank Account Country Code"),
+ 'on_change_with_es_sepa_bank_account_country_code')
+ es_sepa_request_advancement = fields.Boolean("Request Advancement",
+ states={
+ 'invisible': ((Eval('process_method') != 'sepa')
+ | (Eval('es_sepa_bank_account_country_code') != 'ES')),
+ },
+ depends=['process_method', 'es_sepa_bank_account_country_code'],
+ help="Check to receive payments before the payment date.")
+
+ @fields.depends('sepa_bank_account_number')
+ def on_change_with_es_sepa_bank_account_country_code(self, name=None):
+ if self.sepa_bank_account_number:
+ return self.sepa_bank_account_number.number[:2]
+
+
+class Group(metaclass=PoolMeta):
+ __name__ = 'account.payment.group'
+
+ @property
+ def sepa_message_id(self):
+ message_id = super().sepa_message_id
+ if (self.kind == 'receivable'
+ and self.journal.es_sepa_request_advancement):
+ message_id = 'FSDD%s' % message_id
+ return message_id
diff -r 1148f779bd2d -r caf8ad9e922c account_payment.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/account_payment.xml Sat Feb 22 15:17:32 2020 +0100
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
+this repository contains the full copyright notices and license terms. -->
+<tryton>
+ <data depends="account_payment_sepa">
+ <record model="ir.ui.view" id="journal_form">
+ <field name="model">account.payment.journal</field>
+ <field name="inherit"
ref="account_payment.payment_journal_view_form"/>
+ <field name="name">payment_journal_form</field>
+ </record>
+
+ </data>
+</tryton>
diff -r 1148f779bd2d -r caf8ad9e922c setup.py
--- a/setup.py Mon Feb 17 09:53:12 2020 +0100
+++ b/setup.py Sat Feb 22 15:17:32 2020 +0100
@@ -60,6 +60,7 @@
tests_require = [
get_require_version('proteus'),
get_require_version('trytond_account_asset'),
+ get_require_version('trytond_account_payment_sepa'),
]
dependency_links = []
if minor_version % 2:
diff -r 1148f779bd2d -r caf8ad9e922c tests/test_account_es.py
--- a/tests/test_account_es.py Mon Feb 17 09:53:12 2020 +0100
+++ b/tests/test_account_es.py Sat Feb 22 15:17:32 2020 +0100
@@ -12,7 +12,7 @@
class AccountTestCase(ModuleTestCase):
'Test Account Es module'
module = 'account_es'
- extras = ['account_asset']
+ extras = ['account_asset', 'account_payment_sepa']
def suite():
diff -r 1148f779bd2d -r caf8ad9e922c tryton.cfg
--- a/tryton.cfg Mon Feb 17 09:53:12 2020 +0100
+++ b/tryton.cfg Sat Feb 22 15:17:32 2020 +0100
@@ -8,6 +8,7 @@
party
extras_depend:
account_asset
+ account_payment_sepa
xml:
tax_groups.xml
account_normal.xml
@@ -18,3 +19,4 @@
reporting_tax.xml
message.xml
party.xml
+ account_payment.xml
diff -r 1148f779bd2d -r caf8ad9e922c view/payment_journal_form.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/view/payment_journal_form.xml Sat Feb 22 15:17:32 2020 +0100
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
+this repository contains the full copyright notices and license terms. -->
+<data>
+ <xpath expr="/form/field[@name='sepa_receivable_flavor']" position="after">
+ <label id="empty" colspan="2"/>
+ <label name="es_sepa_request_advancement"/>
+ <field name="es_sepa_request_advancement"/>
+ </xpath>
+</data>