Improve partner bank account creation

bzr revid: ced-148b2aa2f4858e096f157973689a6cf7ed7add64
This commit is contained in:
ced
2007-10-10 05:44:53 +00:00
parent 6f67d29372
commit 88dce40a88
2 changed files with 36 additions and 2 deletions
+29
View File
@@ -346,6 +346,7 @@ class res_partner_bank(osv.osv):
_name = "res.partner.bank"
_rec_name = "state"
_description = __doc__
_order = 'sequence'
def _bank_type_get(self, cr, uid, context=None):
bank_type_obj = self.pool.get('res.partner.bank.type')
@@ -357,6 +358,17 @@ class res_partner_bank(osv.osv):
result.append((bank_type.code, bank_type.name))
return result
def _default_value(self, cursor, user, field, context=None):
if not context.get('address', False):
return
value = ''
for ham, spam, address in context['address']:
if address['type'] == 'default':
return address[field]
elif not address['type']:
value = address[field]
return value
_columns = {
'name': fields.char('Description', size=128),
'acc_number': fields.char('Account number', size=64, required=False),
@@ -373,6 +385,23 @@ class res_partner_bank(osv.osv):
ondelete='cascade', select=True),
'state': fields.selection(_bank_type_get, 'Bank type', required=True,
change_default=True),
'sequence': fields.integer('Sequence'),
'state_id': fields.many2one('res.country.state', 'State',
domain="[('country_id', '=', country_id)]"),
}
_defaults = {
'owner_name': lambda obj, cursor, user, context: obj._default_value(
cursor, user, 'name', context=context),
'street': lambda obj, cursor, user, context: obj._default_value(
cursor, user, 'street', context=context),
'city': lambda obj, cursor, user, context: obj._default_value(
cursor, user, 'city', context=context),
'zip': lambda obj, cursor, user, context: obj._default_value(
cursor, user, 'zip', context=context),
'country_id': lambda obj, cursor, user, context: obj._default_value(
cursor, user, 'country_id', context=context),
'state_id': lambda obj, cursor, user, context: obj._default_value(
cursor, user, 'state_id', context=context),
}
def fields_get(self, cr, uid, fields=None, context=None):
+7 -2
View File
@@ -229,15 +229,17 @@
<field name="parent_id"/>
<field name="website" widget="url"/>
<field name="date" select="2"/>
<field name="bank_ids" colspan="4" nolabel="1">
<field name="bank_ids" colspan="4" nolabel="1"
context="address=address">
<form string="Bank account">
<field name="state" select="2"/>
<field name="name" select="2"/>
<newline/>
<field name="acc_number" select="1"/>
<newline/>
<field name="bank"/>
<newline/>
<field name="sequence"/>
<field name="name" select="2" colspan="4"/>
<separator string="Bank account owner" colspan="4"/>
<field name="owner_name" colspan="4"/>
<field name="street" colspan="4"/>
@@ -344,12 +346,15 @@
<newline/>
<field name="bank"/>
<newline/>
<field name="sequence"/>
<field name="name" colspan="4"/>
<separator string="Bank account owner" colspan="4"/>
<field name="owner_name" colspan="4" select="2"/>
<field name="street" colspan="4"/>
<field name="city"/>
<field name="zip"/>
<field name="country_id" select="2" completion="1"/>
<field name="state_id" select="2"/>
</form>
</field>
</record>