diff options
| author | Thibault Delavallée <tde@openerp.com> | 2012-02-13 12:28:23 +0100 |
|---|---|---|
| committer | Thibault Delavallée <tde@openerp.com> | 2012-02-13 12:28:23 +0100 |
| commit | 413e09e5fe0fcc45ebe6ec69ce3cacd21b7a2a9c (patch) | |
| tree | 52a8fde8d311f8e474002d5fc3ace3c10276f9be | |
| parent | 169534b38cb74f09ddfca84b10cf05b303f41294 (diff) | |
[FIX] Fixed wrong account_id not using property_account_receivable by default when using web-based POS front-end
bzr revid: tde@openerp.com-20120213112823-6mdf83hqiawoca27
| -rw-r--r-- | addons/point_of_sale/point_of_sale.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/addons/point_of_sale/point_of_sale.py b/addons/point_of_sale/point_of_sale.py index 0f188e584f0..19ce4b67026 100644 --- a/addons/point_of_sale/point_of_sale.py +++ b/addons/point_of_sale/point_of_sale.py @@ -55,9 +55,18 @@ class pos_order(osv.osv): #_logger.info("orders: %r", orders) list = [] for order in orders: - list.append(self.create(cr, uid, order, context)) + # set account_id using property_account_receivable if defined + property_obj = self.pool.get('ir.property') + account_def = property_obj.get(cr, uid, 'property_account_receivable', 'res.partner', context=context) + account_id = (account_def and account_def.id) or False + for statement_val in order['statement_ids']: + statement_val[2]['account_id'] = account_id or statement_val[2]['account_id'] + # create pos order + order_id = self.create(cr, uid, order, context) + list.append(order_id) + # mark as paid wf_service = netsvc.LocalService("workflow") - wf_service.trg_validate(uid, 'pos.order', list[-1], 'paid', cr) + wf_service.trg_validate(uid, 'pos.order', order_id, 'paid', cr) return list def unlink(self, cr, uid, ids, context=None): |
