diff --git a/sf_base/views/fixture_view.xml b/sf_base/views/fixture_view.xml index 0e86738d..07dadd33 100644 --- a/sf_base/views/fixture_view.xml +++ b/sf_base/views/fixture_view.xml @@ -171,7 +171,7 @@ - + @@ -197,7 +197,7 @@ - + @@ -220,7 +220,7 @@ - + @@ -248,7 +248,7 @@ - + @@ -278,7 +278,7 @@ - + @@ -307,7 +307,7 @@ - + @@ -335,7 +335,7 @@ - + diff --git a/sf_manufacturing/models/stock.py b/sf_manufacturing/models/stock.py index 4bf7cc72..c202fc71 100644 --- a/sf_manufacturing/models/stock.py +++ b/sf_manufacturing/models/stock.py @@ -217,6 +217,23 @@ class StockRule(models.Model): ( p.move_dest_ids.procure_method != 'make_to_order' and not p.move_raw_ids and not p.workorder_ids)).action_confirm() + # 处理 根据制造订单生成的采购单坯料入库时到原材料库,手动将原材料位置该为坯料存货区 + for production in productions: + if production.picking_ids: + product_type_id = production.picking_ids[0].move_ids[0].product_id.categ_id + if product_type_id.name == '坯料': + location_id = self.env['stock.location'].search([('name', '=', '坯料存货区')]) + if not location_id: + logging.info(f'没有搜索到【坯料存货区】: {location_id}') + break + for picking_id in production.picking_ids: + if picking_id.picking_type_id.name == '内部调拨': + if picking_id.location_dest_id.product_type != product_type_id: + picking_id.location_dest_id = location_id.id + elif picking_id.picking_type_id.name == '生产发料': + if picking_id.location_id.product_type != product_type_id: + picking_id.location_id = location_id.id + for production in productions: ''' 创建制造订单时生成序列号 diff --git a/sf_sale/views/sale_order_view.xml b/sf_sale/views/sale_order_view.xml index 7bf352eb..00cca206 100644 --- a/sf_sale/views/sale_order_view.xml +++ b/sf_sale/views/sale_order_view.xml @@ -34,15 +34,13 @@