diff --git a/sf_manufacturing/models/sale_order.py b/sf_manufacturing/models/sale_order.py index 5548ec38..225f6fe5 100644 --- a/sf_manufacturing/models/sale_order.py +++ b/sf_manufacturing/models/sale_order.py @@ -1,5 +1,7 @@ import logging import json +import re + from odoo import models, fields, api, _ from odoo.exceptions import UserError @@ -72,8 +74,13 @@ class SaleOrder(models.Model): 'price': product.list_price, 'embryo_redundancy_id': line.embryo_redundancy_id, } + product_name = '' + match = re.search(r'(S\d{5}-\d)', product.name) + # 如果匹配成功,提取结果 + if match: + product_name = match.group(0) # 获取成品名结尾-n的n - product_seria = int(product.name.split('-')[-1]) + product_seria = int(product_name.split('-')[-1]) # 成品供货方式为采购则不生成bom if line.supply_method != 'purchase': bom_data = self.env['mrp.bom'].with_user(self.env.ref("base.user_admin")).get_bom(product)