解决表面工艺外协调拨单验证报错的问题
This commit is contained in:
@@ -690,7 +690,8 @@ class StockPicking(models.Model):
|
||||
# 如果当前工单是是制造订单的最后一个工艺外协工单
|
||||
if workorder == next((workorder for workorder in reversed(sorted_workorders) if workorder.is_subcontract),
|
||||
None):
|
||||
move_dest_id = item.move_raw_ids[0].id
|
||||
if item.move_raw_ids:
|
||||
move_dest_id = item.move_raw_ids[0].id
|
||||
else:
|
||||
# 从sorted_workorders中找到上一工单的move
|
||||
if len(sorted_workorders) > 1:
|
||||
@@ -726,6 +727,7 @@ class StockPicking(models.Model):
|
||||
moves_out._action_confirm()
|
||||
moves_out._assign_picking_post_process(new=new_picking)
|
||||
|
||||
|
||||
@api.depends('move_type', 'immediate_transfer', 'move_ids.state', 'move_ids.picking_id')
|
||||
def _compute_state(self):
|
||||
super(StockPicking, self)._compute_state()
|
||||
@@ -849,6 +851,7 @@ class ReStockMove(models.Model):
|
||||
# 'route_ids': False if not route else [(4, route.id)],
|
||||
'date_deadline': datetime.now(),
|
||||
'picking_type_id': picking_type_id,
|
||||
# 'is_subcontract': True,
|
||||
}
|
||||
return move_values
|
||||
|
||||
@@ -1118,6 +1121,13 @@ class ReStockMove(models.Model):
|
||||
if self.state != 'assigned':
|
||||
self.state = 'assigned'
|
||||
return self.action_show_details()
|
||||
|
||||
def _prepare_move_line_vals(self, quantity=None, reserved_quant=None):
|
||||
res = super(ReStockMove, self)._prepare_move_line_vals(quantity, reserved_quant)
|
||||
if self.subcontract_workorder_id:
|
||||
if self.subcontract_workorder_id.production_id.move_raw_ids.move_line_ids:
|
||||
res['lot_id'] = self.subcontract_workorder_id.production_id.move_raw_ids.move_line_ids[0].lot_id.id
|
||||
return res
|
||||
|
||||
|
||||
class ReStockQuant(models.Model):
|
||||
|
||||
Reference in New Issue
Block a user