表面工艺外协工单流程数量按照制造订单的product_uom_qty设置

This commit is contained in:
胡尧
2025-05-07 13:02:13 +08:00
parent 5aa848de53
commit fffbfc21c2
2 changed files with 6 additions and 5 deletions

View File

@@ -675,6 +675,7 @@ class StockPicking(models.Model):
# 创建 外协出库入单 # 创建 外协出库入单
def create_outcontract_picking(self, workorders, item, sorted_workorders): def create_outcontract_picking(self, workorders, item, sorted_workorders):
production = workorders[0].production_id
for workorder in workorders: for workorder in workorders:
if workorder.move_subcontract_workorder_ids: if workorder.move_subcontract_workorder_ids:
workorder.move_subcontract_workorder_ids.write({'state': 'cancel'}) workorder.move_subcontract_workorder_ids.write({'state': 'cancel'})
@@ -706,7 +707,7 @@ class StockPicking(models.Model):
}) })
moves_in = self.env['stock.move'].sudo().with_context(context).create( moves_in = self.env['stock.move'].sudo().with_context(context).create(
self.env['stock.move']._get_stock_move_values_Res(item, outcontract_picking_type_in, self.env['stock.move']._get_stock_move_values_Res(item, outcontract_picking_type_in,
procurement_group_id.id, move_dest_id)) procurement_group_id.id, move_dest_id, production.product_uom_qty))
picking_in = self.create( picking_in = self.create(
moves_in._get_new_picking_values_Res(item, workorder, 'WH/OCIN/')) moves_in._get_new_picking_values_Res(item, workorder, 'WH/OCIN/'))
# pick_ids.append(picking_in.id) # pick_ids.append(picking_in.id)
@@ -716,7 +717,7 @@ class StockPicking(models.Model):
# self.env.context.get('default_production_id') # self.env.context.get('default_production_id')
moves_out = self.env['stock.move'].sudo().with_context(context).create( moves_out = self.env['stock.move'].sudo().with_context(context).create(
self.env['stock.move']._get_stock_move_values_Res(item, outcontract_picking_type_out, self.env['stock.move']._get_stock_move_values_Res(item, outcontract_picking_type_out,
procurement_group_id.id, moves_in.id)) procurement_group_id.id, moves_in.id, production.product_uom_qty))
workorder.write({'move_subcontract_workorder_ids': [(6, 0, [moves_in.id, moves_out.id])]}) workorder.write({'move_subcontract_workorder_ids': [(6, 0, [moves_in.id, moves_out.id])]})
picking_out = self.create( picking_out = self.create(
moves_out._get_new_picking_values_Res(item, workorder, 'WH/OCOUT/')) moves_out._get_new_picking_values_Res(item, workorder, 'WH/OCOUT/'))
@@ -848,7 +849,7 @@ class ReStockMove(models.Model):
traceback_error = traceback.format_exc() traceback_error = traceback.format_exc()
logging.error("零件图号 零件名称获取失败:%s" % traceback_error) logging.error("零件图号 零件名称获取失败:%s" % traceback_error)
def _get_stock_move_values_Res(self, item, picking_type_id, group_id, move_dest_ids=False): def _get_stock_move_values_Res(self, item, picking_type_id, group_id, move_dest_ids=False, product_uom_qty=1.0):
route_id = self.env.ref('sf_manufacturing.route_surface_technology_outsourcing').id route_id = self.env.ref('sf_manufacturing.route_surface_technology_outsourcing').id
stock_rule = self.env['stock.rule'].sudo().search( stock_rule = self.env['stock.rule'].sudo().search(
[('route_id', '=', route_id), ('picking_type_id', '=', picking_type_id)]) [('route_id', '=', route_id), ('picking_type_id', '=', picking_type_id)])
@@ -857,7 +858,7 @@ class ReStockMove(models.Model):
'company_id': item.company_id.id, 'company_id': item.company_id.id,
'product_id': item.bom_id.bom_line_ids.product_id.id, 'product_id': item.bom_id.bom_line_ids.product_id.id,
'product_uom': item.bom_id.bom_line_ids.product_uom_id.id, 'product_uom': item.bom_id.bom_line_ids.product_uom_id.id,
'product_uom_qty': 1.0, 'product_uom_qty': product_uom_qty,
'location_id': stock_rule.location_src_id.id, 'location_id': stock_rule.location_src_id.id,
'location_dest_id': stock_rule.location_dest_id.id, 'location_dest_id': stock_rule.location_dest_id.id,
'origin': item.name, 'origin': item.name,

View File

@@ -419,7 +419,7 @@ class RePurchaseOrder(models.Model):
('detailed_type', '=', 'service')]) ('detailed_type', '=', 'service')])
server_product_process.append((0, 0, { server_product_process.append((0, 0, {
'product_id': server_template.product_variant_id.id, 'product_id': server_template.product_variant_id.id,
'product_qty': 1, 'product_qty': production.product_uom_qty,
'product_uom': server_template.uom_id.id, 'product_uom': server_template.uom_id.id,
'related_product': production.product_id.id, 'related_product': production.product_id.id,
'manual_part_number': pp.part_number, 'manual_part_number': pp.part_number,