Odoo18-Base/addons/pos_sale/models/stock_picking.py
2025-01-06 10:57:38 +07:00

20 lines
787 B
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models
class StockPicking(models.Model):
_inherit = 'stock.picking'
def _create_move_from_pos_order_lines(self, lines):
lines_to_unreserve = self.env['pos.order.line']
for line in lines:
if line.order_id.shipping_date:
continue
if any(wh != line.order_id.config_id.warehouse_id for wh in line.sale_order_line_id.move_ids.location_id.warehouse_id):
continue
lines_to_unreserve |= line
lines_to_unreserve.sale_order_line_id.move_ids.filtered(lambda ml: ml.state not in ['cancel', 'done'])._do_unreserve()
return super()._create_move_from_pos_order_lines(lines)