mirror of
https://github.com/OCA/bank-payment.git
synced 2025-02-02 10:37:31 +02:00
[FIX] account_banking: replaced wrong argument on on_change trigger,
preventing res_partner_bank forms to open
[FIX] account_banking: fixed bug in SQL code
[IMP] account_banking: moved on_change triggers to base forms to silence
discussions
[IMP] account_banking: added dummy online converters for full SEPA countries
This commit is contained in:
@@ -832,13 +832,12 @@ class payment_order(osv.osv):
|
||||
|
||||
def set_done(self, cr, uid, id, *args):
|
||||
'''
|
||||
Extend standard transition to update childs as well.
|
||||
Extend standard transition to update children as well.
|
||||
'''
|
||||
cr.execute("UPDATE payment_line "
|
||||
"SET export_state = 'done', date_done = '%s' "
|
||||
"WHERE order_id = %s" % (
|
||||
time.strftime('%Y-%m-%d'),
|
||||
self.id
|
||||
time.strftime('%Y-%m-%d'), id
|
||||
))
|
||||
return super(payment_order, self).set_done(
|
||||
cr, uid, id, *args
|
||||
@@ -914,6 +913,7 @@ class res_partner_bank(osv.osv):
|
||||
Create dual function IBAN account for SEPA countries
|
||||
Note: No check on validity IBAN/Country
|
||||
'''
|
||||
import pdb; pdb.set_trace()
|
||||
if 'iban' in vals and vals['iban']:
|
||||
iban = sepa.IBAN(vals['iban'])
|
||||
vals['iban'] = str(iban)
|
||||
@@ -1048,12 +1048,16 @@ class res_partner_bank(osv.osv):
|
||||
# Pre fill country based on partners address
|
||||
country_obj = self.pool.get('res.country')
|
||||
partner_obj = self.pool.get('res.partner')
|
||||
if not country_id:
|
||||
if (not country_id) and partner_id:
|
||||
country = partner_obj.browse(cursor, uid, partner_id).country
|
||||
country_ids = [country.id]
|
||||
else:
|
||||
elif country_id:
|
||||
country = country_obj.browse(cursor, uid, country_id)
|
||||
country_ids = [country_id]
|
||||
else:
|
||||
# Without country, there is no way to identify the right online
|
||||
# interface to get IBAN accounts...
|
||||
return {}
|
||||
|
||||
# Complete data with online database when available
|
||||
if country.code in sepa.IBAN.countries:
|
||||
|
||||
@@ -267,7 +267,7 @@
|
||||
<record id="view_partner_bank_account_banking_form_2" model="ir.ui.view">
|
||||
<field name="name">res.partner.bank.form.banking-2</field>
|
||||
<field name="model">res.partner.bank</field>
|
||||
<field name="inherit_id" ref="base_iban.view_partner_bank_iban_form"/>
|
||||
<field name="inherit_id" ref="base.view_partner_bank_form"/>
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<field name="acc_number" position="replace">
|
||||
@@ -291,12 +291,23 @@
|
||||
<record id="view_partner_account_banking_form_2" model="ir.ui.view">
|
||||
<field name="name">res.partner.form.banking-2</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base_iban.view_partner_iban_form"/>
|
||||
<field name="inherit_id" ref="account.view_partner_property_form"/>
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<field name="acc_number" position="replace">
|
||||
<field name="acc_number" on_change="onchange_acc_number(acc_number, partner_id, country_id)" />
|
||||
</field>
|
||||
<xpath expr="/form/notebook/page/field[@name='bank_ids']/form/field[@name='acc_number']" position="replace">
|
||||
<field name="acc_number" on_change="onchange_acc_number(acc_number, active_id, country_id)" />
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
<record id="view_partner_account_banking_form_3" model="ir.ui.view">
|
||||
<field name="name">res.partner.form.banking-3</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="account.view_partner_property_form"/>
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="/form/notebook/page/field[@name='bank_ids']/tree/field[@name='acc_number']" position="replace">
|
||||
<field name="acc_number" on_change="onchange_acc_number(acc_number, active_id, country_id)" />
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -102,10 +102,24 @@ def get_iban_bic_BE(bank_acc):
|
||||
result.code = result.bic[:6]
|
||||
return result
|
||||
|
||||
def BBAN_is_IBAN(bank_acc):
|
||||
'''
|
||||
Straight copy, valid for SEPA members who switched to SEPA from old
|
||||
standards before SEPA actually started.
|
||||
'''
|
||||
return bank_acc
|
||||
|
||||
_account_info = {
|
||||
# TODO: Add more online data banks
|
||||
'BA': BBAN_is_IBAN,
|
||||
'BE': get_iban_bic_BE,
|
||||
'BG': BBAN_is_IBAN,
|
||||
'NL': get_iban_bic_NL,
|
||||
'LV': BBAN_is_IBAN,
|
||||
'LT': BBAN_is_IBAN,
|
||||
'LU': BBAN_is_IBAN,
|
||||
'MU': BBAN_is_IBAN,
|
||||
'SM': BBAN_is_IBAN,
|
||||
}
|
||||
|
||||
def account_info(iso, bank_acc):
|
||||
|
||||
Reference in New Issue
Block a user