新增排产的时候, 根据胚料的长宽高比对一下机床的最大加工尺寸.不符合就不要分配给这个加工中心(机床).

This commit is contained in:
jinling.yang
2023-02-16 17:35:08 +08:00
parent fc98ebb8c5
commit d5c2c8de86
34 changed files with 1302 additions and 55 deletions

View File

@@ -24,16 +24,29 @@ class ResMrpRoutingWorkcenter(models.Model):
company_id = fields.Many2one('res.company', compute="get_company_id", related=False)
# 排产的时候, 根据胚料的长宽高比对一下机床的最大加工尺寸.不符合就不要分配给这个加工中心(机床).
# 工单对应的工作中心,根据工序中的工作中心去匹配,
# 如果只配置了一个工作中心,则默认采用该工作中心;
# 如果有多个工作中心,
# 则根据该工作中心的工单个数进行分配(优先分配给工单个数最少的);
def get_workcenter(self, workcenter_ids):
def get_workcenter(self, workcenter_ids, routing_type, product):
if workcenter_ids:
if len(workcenter_ids) == 1:
return workcenter_ids[0]
elif len(workcenter_ids) >= 2:
# workcenter_ids_str = ','.join([str(s) for s in workcenter_ids])
if routing_type == 'CNC加工':
i = 0
# for item in workcenter_ids:
#
# machine_tool = self.env['sf.machine_tool'].search(
# [('x_axis', '>', product.length), ('y_axis', '>', product.width),
# ('z_axis', '>', product.height)])
# if machine_tool:
# for item in machine_tool:
# workcenter_ids = item.
self.env.cr.execute("""
SELECT workcenter_id FROM mrp_workorder where workcenter_id
in %s group by workcenter_id