修复create_cam_work_plan方法
This commit is contained in:
@@ -311,41 +311,42 @@ class CAMWorkOrderProgramKnifePlan(models.Model):
|
|||||||
'applicant': None,
|
'applicant': None,
|
||||||
'sf_functional_tool_assembly_id': None})
|
'sf_functional_tool_assembly_id': None})
|
||||||
|
|
||||||
def create_cam_work_plan(self, cnc_processing):
|
def create_cam_work_plan(self, cnc_processing_ids):
|
||||||
"""
|
"""
|
||||||
根据传入的工单信息,查询是否有需要的功能刀具,如果没有则生成CAM工单程序用刀计划
|
根据传入的工单信息,查询是否有需要的功能刀具,如果没有则生成CAM工单程序用刀计划
|
||||||
"""
|
"""
|
||||||
status = False
|
for cnc_processing in cnc_processing_ids:
|
||||||
if cnc_processing.cutting_tool_name:
|
status = False
|
||||||
functional_tools = self.env['sf.real.time.distribution.of.functional.tools'].sudo().search(
|
if cnc_processing.cutting_tool_name:
|
||||||
[('name', '=', cnc_processing.cutting_tool_name)])
|
functional_tools = self.env['sf.real.time.distribution.of.functional.tools'].sudo().search(
|
||||||
if functional_tools:
|
[('name', '=', cnc_processing.cutting_tool_name)])
|
||||||
for functional_tool in functional_tools:
|
if functional_tools:
|
||||||
if functional_tool.on_tool_stock_num == 0:
|
for functional_tool in functional_tools:
|
||||||
if functional_tool.tool_stock_num == 0 and functional_tool.side_shelf_num == 0:
|
if functional_tool.on_tool_stock_num == 0:
|
||||||
status = True
|
if functional_tool.tool_stock_num == 0 and functional_tool.side_shelf_num == 0:
|
||||||
else:
|
status = True
|
||||||
status = True
|
else:
|
||||||
if status:
|
status = True
|
||||||
knife_plan = self.env['sf.cam.work.order.program.knife.plan'].sudo().create({
|
if status:
|
||||||
'name': cnc_processing.workorder_id.production_id.name,
|
knife_plan = self.env['sf.cam.work.order.program.knife.plan'].sudo().create({
|
||||||
'cam_procedure_code': cnc_processing.program_name,
|
'name': cnc_processing.workorder_id.production_id.name,
|
||||||
'filename': cnc_processing.cnc_id.name,
|
'cam_procedure_code': cnc_processing.program_name,
|
||||||
'functional_tool_name': cnc_processing.cutting_tool_name,
|
'filename': cnc_processing.cnc_id.name,
|
||||||
'cam_cutter_spacing_code': cnc_processing.cutting_tool_no,
|
'functional_tool_name': cnc_processing.cutting_tool_name,
|
||||||
'process_type': cnc_processing.processing_type,
|
'cam_cutter_spacing_code': cnc_processing.cutting_tool_no,
|
||||||
'margin_x_y': float(cnc_processing.margin_x_y),
|
'process_type': cnc_processing.processing_type,
|
||||||
'margin_z': float(cnc_processing.margin_z),
|
'margin_x_y': float(cnc_processing.margin_x_y),
|
||||||
'finish_depth': float(cnc_processing.depth_of_processing_z),
|
'margin_z': float(cnc_processing.margin_z),
|
||||||
'extension_length': float(cnc_processing.cutting_tool_extension_length),
|
'finish_depth': float(cnc_processing.depth_of_processing_z),
|
||||||
'shank_model': cnc_processing.cutting_tool_handle_type,
|
'extension_length': float(cnc_processing.cutting_tool_extension_length),
|
||||||
'estimated_processing_time': cnc_processing.estimated_processing_time,
|
'shank_model': cnc_processing.cutting_tool_handle_type,
|
||||||
})
|
'estimated_processing_time': cnc_processing.estimated_processing_time,
|
||||||
logging.info('CAM工单程序用刀计划创建成功!!!')
|
})
|
||||||
# 创建装刀请求
|
logging.info('CAM工单程序用刀计划创建成功!!!')
|
||||||
knife_plan.apply_for_tooling()
|
# 创建装刀请求
|
||||||
else:
|
knife_plan.apply_for_tooling()
|
||||||
logging.info('功能刀具【%s】满足CNC用刀需求!!!' % cnc_processing.cutting_tool_name)
|
else:
|
||||||
|
logging.info('功能刀具【%s】满足CNC用刀需求!!!' % cnc_processing.cutting_tool_name)
|
||||||
|
|
||||||
|
|
||||||
class FunctionalToolAssembly(models.Model):
|
class FunctionalToolAssembly(models.Model):
|
||||||
@@ -543,7 +544,8 @@ class FunctionalToolAssembly(models.Model):
|
|||||||
after_assembly_functional_tool_name = fields.Char(string='组装后功能刀具名称', readonly=True)
|
after_assembly_functional_tool_name = fields.Char(string='组装后功能刀具名称', readonly=True)
|
||||||
after_assembly_functional_tool_type_id = fields.Many2one('sf.functional.cutting.tool.model',
|
after_assembly_functional_tool_type_id = fields.Many2one('sf.functional.cutting.tool.model',
|
||||||
string='组装后功能刀具类型', readonly=True)
|
string='组装后功能刀具类型', readonly=True)
|
||||||
after_assembly_functional_tool_diameter = fields.Float(string='组装后功能刀具直径(mm)', readonly=True, digits=(10, 3))
|
after_assembly_functional_tool_diameter = fields.Float(string='组装后功能刀具直径(mm)', readonly=True,
|
||||||
|
digits=(10, 3))
|
||||||
after_assembly_knife_tip_r_angle = fields.Float(string='组装后刀尖R角(mm)', readonly=True, digits=(10, 3))
|
after_assembly_knife_tip_r_angle = fields.Float(string='组装后刀尖R角(mm)', readonly=True, digits=(10, 3))
|
||||||
after_assembly_new_former = fields.Selection([('0', '新'), ('1', '旧')], string='组装后新/旧', readonly=True)
|
after_assembly_new_former = fields.Selection([('0', '新'), ('1', '旧')], string='组装后新/旧', readonly=True)
|
||||||
cut_time = fields.Integer(string='已切削时间(min)', readonly=True)
|
cut_time = fields.Integer(string='已切削时间(min)', readonly=True)
|
||||||
@@ -557,7 +559,7 @@ class FunctionalToolAssembly(models.Model):
|
|||||||
after_assembly_alarm_value = fields.Integer(string='组装后报警值(min)', readonly=True)
|
after_assembly_alarm_value = fields.Integer(string='组装后报警值(min)', readonly=True)
|
||||||
after_assembly_used_value = fields.Integer(string='组装后已使用值(min)', readonly=True)
|
after_assembly_used_value = fields.Integer(string='组装后已使用值(min)', readonly=True)
|
||||||
after_assembly_tool_loading_length = fields.Float(string='组装后总长度(mm)', readonly=True, digits=(10, 3))
|
after_assembly_tool_loading_length = fields.Float(string='组装后总长度(mm)', readonly=True, digits=(10, 3))
|
||||||
after_assembly_handle_length = fields.Float(string='组装后刀柄长度(mm)',readonly=True, digits=(10, 3))
|
after_assembly_handle_length = fields.Float(string='组装后刀柄长度(mm)', readonly=True, digits=(10, 3))
|
||||||
after_assembly_functional_tool_length = fields.Float(string='组装后伸出长(mm)', readonly=True, digits=(10, 3))
|
after_assembly_functional_tool_length = fields.Float(string='组装后伸出长(mm)', readonly=True, digits=(10, 3))
|
||||||
after_assembly_effective_length = fields.Float(string='组装后有效长(mm)', readonly=True)
|
after_assembly_effective_length = fields.Float(string='组装后有效长(mm)', readonly=True)
|
||||||
L_D_number = fields.Float(string='L/D值(mm)', readonly=True)
|
L_D_number = fields.Float(string='L/D值(mm)', readonly=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user