[FIX] pos_sale: keep sale order references in pos restaurant

Before this commit, if the user tried to settle a sale order
in PoS restaurant, then went back to floor and then returned
to the table, the sale order reference will disappear.

The problem is that the `sale_order_origin_id` is not loaded.

opw-3550351

closes odoo/odoo#149262

X-original-commit: 13db10c1c73418ce4eabc52ef2415a1f27f1e24e
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Pedram Bi Ria (pebr) <pebr@odoo.com>
This commit is contained in:
Pedram (PEBR)
2024-01-25 13:42:44 +00:00
committed by Pedram (pebr)
parent 6f887582cc
commit 8afdad1ac1
+22
View File
@@ -122,6 +122,28 @@ class PosOrder(models.Model):
return inv_line_vals
def _get_fields_for_order_line(self):
fields = super(PosOrder, self)._get_fields_for_order_line()
fields.extend([
'sale_order_origin_id',
'down_payment_details',
'sale_order_line_id',
])
return fields
def _prepare_order_line(self, order_line):
order_line = super()._prepare_order_line(order_line)
if order_line.get('sale_order_origin_id'):
order_line['sale_order_origin_id'] = {
'id': order_line['sale_order_origin_id'][0],
'name': order_line['sale_order_origin_id'][1],
}
if order_line.get('sale_order_line_id'):
order_line['sale_order_line_id'] = {
'id': order_line['sale_order_line_id'][0],
}
return order_line
class PosOrderLine(models.Model):
_inherit = 'pos.order.line'