1、获取mrs编程接口优化,重新编程接口优化,创建CAM方法优化,cnc用刀校验逻辑优化

This commit is contained in:
yuxianghui
2024-10-10 17:31:56 +08:00
parent f18c0e3eaf
commit 25a90f3966
4 changed files with 16 additions and 13 deletions

View File

@@ -314,27 +314,28 @@ class CAMWorkOrderProgramKnifePlan(models.Model):
'applicant': None,
'sf_functional_tool_assembly_id': None})
def create_cam_work_plan(self, cnc_processing, missing_tools):
def create_cam_work_plan(self, cnc_ids):
"""
根据传入的工单信息查询是否有需要的功能刀具如果没有则生成CAM工单程序用刀计划
"""
# 获取编程单号
programming_no = cnc_processing.workorder_id.production_id.programming_no
programming_no = cnc_ids[0].workorder_id.production_id.programming_no
logging.info(f'编程单号:{programming_no}')
for missing_tool in missing_tools:
for cnc_processing in cnc_ids:
tool_name = cnc_processing.cutting_tool_name
cam_id = self.env['sf.cam.work.order.program.knife.plan'].sudo().search(
[('programming_no', '=', programming_no),
('functional_tool_name', '=', missing_tool)])
('functional_tool_name', '=', tool_name)])
if cam_id:
logging.info(f'CAM装刀计划{cam_id}')
logging.info(f'编程单号{programming_no}功能刀具名称{tool_name}已存在CAM装刀计划{cam_id}')
else:
knife_plan = self.env['sf.cam.work.order.program.knife.plan'].sudo().create({
'name': cnc_processing.workorder_id.production_id.name,
'programming_no': programming_no,
'cam_procedure_code': cnc_processing.program_name,
'filename': cnc_processing.cnc_id.name,
'functional_tool_name': missing_tool,
'functional_tool_name': tool_name,
'cam_cutter_spacing_code': cnc_processing.cutting_tool_no,
'process_type': cnc_processing.processing_type,
'margin_x_y': float(cnc_processing.margin_x_y),
@@ -344,9 +345,10 @@ class CAMWorkOrderProgramKnifePlan(models.Model):
'shank_model': cnc_processing.cutting_tool_handle_type,
'estimated_processing_time': cnc_processing.estimated_processing_time,
})
logging.info('CAM工单程序用刀计划创建成功!!!')
logging.info(f'创建CAM工单程序用刀计划{knife_plan}')
# 创建装刀请求
knife_plan.apply_for_tooling()
logging.info('CAM工单程序用刀计划创建已完成')
def unlink_cam_plan(self, production):
for item in production: