mirror of
https://github.com/OCA/bank-payment.git
synced 2025-02-02 10:37:31 +02:00
[FIX] Adapt to the new partner model in 7.0
This commit is contained in:
@@ -72,7 +72,7 @@ class banking_import_transaction(orm.Model):
|
||||
invoice_ids = invoice_obj.search(cr, uid, [
|
||||
'&',
|
||||
('type', '=', 'in_invoice'),
|
||||
('partner_id', '=', account_info.bank_partner_id.id),
|
||||
('partner_id', 'child_of', account_info.bank_partner_id.id),
|
||||
('company_id', '=', account_info.company_id.id),
|
||||
('date_invoice', '=', trans.effective_date),
|
||||
('reference', '=', reference),
|
||||
|
||||
@@ -131,7 +131,7 @@ class banking_transaction_wizard(orm.TransientModel):
|
||||
{ 'move_line_id': move_line.id, }, context=context)
|
||||
statement_line_obj.write(
|
||||
cr, uid, wiz.import_transaction_id.statement_line_id.id,
|
||||
{ 'partner_id': move_line.invoice.partner_id.id,
|
||||
{ 'partner_id': move_line.partner_id.id or False,
|
||||
'account_id': move_line.account_id.id,
|
||||
}, context=context)
|
||||
found = True
|
||||
@@ -226,9 +226,9 @@ class banking_transaction_wizard(orm.TransientModel):
|
||||
}
|
||||
|
||||
if todo_entry[0]:
|
||||
st_line_vals['partner_id'] = invoice_obj.read(
|
||||
cr, uid, todo_entry[0],
|
||||
['partner_id'], context=context)['partner_id'][0]
|
||||
st_line_vals['partner_id'] = invoice_obj.browse(
|
||||
cr, uid, todo_entry[0], context=context
|
||||
).partner_id.commercial_partner_id.id
|
||||
|
||||
statement_line_obj.write(
|
||||
cr, uid, statement_line_id,
|
||||
|
||||
@@ -97,8 +97,11 @@ def get_partner(pool, cr, uid, name, address, postal_code, city,
|
||||
TODO: revive the search by lines from the address argument
|
||||
'''
|
||||
partner_obj = pool.get('res.partner')
|
||||
partner_ids = partner_obj.search(cr, uid, [('name', 'ilike', name)],
|
||||
context=context)
|
||||
partner_ids = partner_obj.search(
|
||||
cr, uid, [
|
||||
'|', ('is_company', '=', True), ('parent_id', '=', False),
|
||||
('name', 'ilike', name),
|
||||
], context=context)
|
||||
if not partner_ids:
|
||||
# Try brute search on address and then match reverse
|
||||
criteria = []
|
||||
@@ -118,11 +121,11 @@ def get_partner(pool, cr, uid, name, address, postal_code, city,
|
||||
key = name.lower()
|
||||
partners = []
|
||||
for partner in partner_obj.read(
|
||||
cr, uid, partner_search_ids, ['name'], context=context):
|
||||
cr, uid, partner_search_ids, ['name', 'commercial_partner_id'], context=context):
|
||||
if (len(partner['name']) > 3 and partner['name'].lower() in key):
|
||||
partners.append(partner)
|
||||
partners.sort(key=lambda x: len(x['name']), reverse=True)
|
||||
partner_ids = [x['id'] for x in partners]
|
||||
partner_ids = [x['commercial_partner_id'][0] for x in partners]
|
||||
if len(partner_ids) > 1:
|
||||
log.append(
|
||||
_('More than one possible match found for partner with '
|
||||
|
||||
@@ -34,7 +34,10 @@ class link_partner(orm.TransientModel):
|
||||
'supplier': fields.boolean('Supplier'),
|
||||
'customer': fields.boolean('Customer'),
|
||||
'partner_id': fields.many2one(
|
||||
'res.partner', 'or link existing partner'),
|
||||
'res.partner', 'or link existing partner',
|
||||
domain=['|', ('is_company', '=', True),
|
||||
('partner_id', '=', False)],
|
||||
),
|
||||
'statement_line_id': fields.many2one(
|
||||
'account.bank.statement.line',
|
||||
'Statement line', required=True),
|
||||
|
||||
Reference in New Issue
Block a user