去掉客户部分字段必填校验和返工报废代码

This commit is contained in:
jinling.yang
2024-06-17 09:52:18 +08:00
parent 6a7fa89b67
commit 2862c5a888
6 changed files with 44 additions and 100 deletions

View File

@@ -293,7 +293,7 @@ class MrpProduction(models.Model):
# 则根据设备找到工作中心;否则采用前面描述的工作中心分配机制;
# 其他规则限制: 默认只分配给工作中心状态为非故障的工作中心;
def _create_workorder3(self, is_fetchcnc=False, scrap_production=False):
def _create_workorder3(self):
# 根据product_id对self进行分组
grouped_product_ids = {k: list(g) for k, g in groupby(self, key=lambda x: x.product_id.id)}
# 初始化一个字典来存储每个product_id对应的生产订单名称列表
@@ -336,12 +336,9 @@ class MrpProduction(models.Model):
production_programming = self.search(
[('product_id.id', '=', production.product_id.id), ('origin', '=', production.origin)],
limit=1, order='id asc')
if not production_programming.programming_no or (is_fetchcnc is True and scrap_production):
# 制造订单报废/返工也需重新编程
if (is_fetchcnc is True and scrap_production is False) or (
is_fetchcnc is False and scrap_production is False):
production.fetchCNC(', '.join(product_id_to_production_names[production.product_id.id]),
scrap_production)
if not production_programming.programming_no:
production.fetchCNC(', '.join(product_id_to_production_names[production.product_id.id]),
scrap_production)
else:
production.write({'programming_no': production_programming.programming_no,
'programming_state': '编程中'})
@@ -409,12 +406,6 @@ class MrpProduction(models.Model):
workorders_values.append(
self.env['mrp.workorder'].json_workorder_str('', production, route))
production.workorder_ids = workorders_values
if production_programming.programming_state == '已编程':
logging.info("production_programming: %s" % production_programming.name)
production.workorder_ids.filtered(lambda t: t.routing_type == 'CNC加工').write({
'cnc_ids': production_programming.workorder_ids.filtered(
lambda
t1: t1.routing_type == 'CNC加工').cnc_ids})
for workorder in production.workorder_ids:
workorder.duration_expected = workorder._get_duration_expected()
@@ -557,8 +548,8 @@ class MrpProduction(models.Model):
# work.button_finish()
# 创建工单并进行排序
def _create_workorder(self, is_fetchcnc=False, scrap_production=False):
self._create_workorder3(is_fetchcnc=is_fetchcnc, scrap_production=scrap_production)
def _create_workorder(self):
self._create_workorder3()
self._reset_work_order_sequence()
return True