[IMP] website_sale: sale_get_order avoid useless sql request
Avoid an sql request when sale_order_id is None.
Improvement of 6b6d7310c0
.
Closes PR #8974.
This commit is contained in:
parent
600bfbdc43
commit
fa48e6f485
|
@ -129,9 +129,16 @@ class website(orm.Model):
|
||||||
def sale_get_order(self, cr, uid, ids, force_create=False, code=None, update_pricelist=None, context=None):
|
def sale_get_order(self, cr, uid, ids, force_create=False, code=None, update_pricelist=None, context=None):
|
||||||
sale_order_obj = self.pool['sale.order']
|
sale_order_obj = self.pool['sale.order']
|
||||||
sale_order_id = request.session.get('sale_order_id')
|
sale_order_id = request.session.get('sale_order_id')
|
||||||
|
sale_order = None
|
||||||
|
|
||||||
|
# Test validity of the sale_order_id
|
||||||
|
if sale_order_id and sale_order_obj.exists(cr, SUPERUSER_ID, sale_order_id, context=context):
|
||||||
sale_order = sale_order_obj.browse(cr, SUPERUSER_ID, sale_order_id, context=context)
|
sale_order = sale_order_obj.browse(cr, SUPERUSER_ID, sale_order_id, context=context)
|
||||||
|
else:
|
||||||
|
sale_order_id = None
|
||||||
|
|
||||||
# create so if needed
|
# create so if needed
|
||||||
if not sale_order.exists() and (force_create or code):
|
if not sale_order_id and (force_create or code):
|
||||||
# TODO cache partner_id session
|
# TODO cache partner_id session
|
||||||
partner = self.pool['res.users'].browse(cr, SUPERUSER_ID, uid, context=context).partner_id
|
partner = self.pool['res.users'].browse(cr, SUPERUSER_ID, uid, context=context).partner_id
|
||||||
|
|
||||||
|
@ -148,7 +155,7 @@ class website(orm.Model):
|
||||||
request.session['sale_order_id'] = sale_order_id
|
request.session['sale_order_id'] = sale_order_id
|
||||||
sale_order = sale_order_obj.browse(cr, SUPERUSER_ID, sale_order_id, context=context)
|
sale_order = sale_order_obj.browse(cr, SUPERUSER_ID, sale_order_id, context=context)
|
||||||
|
|
||||||
if sale_order.exists():
|
if sale_order_id:
|
||||||
# TODO cache partner_id session
|
# TODO cache partner_id session
|
||||||
partner = self.pool['res.users'].browse(cr, SUPERUSER_ID, uid, context=context).partner_id
|
partner = self.pool['res.users'].browse(cr, SUPERUSER_ID, uid, context=context).partner_id
|
||||||
# check for change of pricelist with a coupon
|
# check for change of pricelist with a coupon
|
||||||
|
|
Loading…
Reference in New Issue