修改欠单逻辑

This commit is contained in:
胡尧
2025-05-22 11:04:12 +08:00
parent 87740dbee3
commit 6bf666ac18
2 changed files with 9 additions and 3 deletions

View File

@@ -19,7 +19,11 @@ class PurchaseOrder(models.Model):
def button_confirm(self):
res = super(PurchaseOrder, self).button_confirm()
# 取消反向调拨单
reverse_move_ids = self.env['stock.move'].search([('origin', '=', self.name), ('purchase_line_id', '=', False)])
reverse_move_ids = self.env['stock.move'].search([
('origin', '=', self.name),
('purchase_line_id', '=', False),
('state', '!=', 'done')
])
if reverse_move_ids:
reverse_move_ids.picking_id.action_cancel()
return res

View File

@@ -36,10 +36,12 @@ class StockPicking(models.Model):
def _action_done(self):
res = super(StockPicking, self)._action_done()
# 将采购申请明细行的move_dest_ids设置为backorder_ids
# 将新产生的backorder对应上原来的采购申请明细行
backorder_ids = self.backorder_ids
if backorder_ids:
purchase_request_lines = self.move_ids.move_orig_ids.purchase_line_id.purchase_request_lines
if purchase_request_lines:
purchase_request_lines.move_dest_ids = [(4, x.id) for x in backorder_ids.move_ids]
purchase_request_lines.move_dest_ids = [
(4, x.id) for x in backorder_ids.move_ids if x.product_id.id == purchase_request_lines.product_id.id
]
return res