1、优化CNC加工流程
This commit is contained in:
@@ -965,7 +965,6 @@ class CNCprocessing(models.Model):
|
|||||||
def cnc_processing_create(self, cnc_workorder, ret, program_path, program_path_tmp):
|
def cnc_processing_create(self, cnc_workorder, ret, program_path, program_path_tmp):
|
||||||
cnc_processing = None
|
cnc_processing = None
|
||||||
for obj in ret['programming_list']:
|
for obj in ret['programming_list']:
|
||||||
# 暂时不注释,批次插入不需要单个workorder
|
|
||||||
workorder = self.env['mrp.workorder'].search(
|
workorder = self.env['mrp.workorder'].search(
|
||||||
[('production_id.name', '=', cnc_workorder.name),
|
[('production_id.name', '=', cnc_workorder.name),
|
||||||
('processing_panel', '=', obj['processing_panel']),
|
('processing_panel', '=', obj['processing_panel']),
|
||||||
@@ -974,7 +973,7 @@ class CNCprocessing(models.Model):
|
|||||||
if obj['program_name'] in program_path:
|
if obj['program_name'] in program_path:
|
||||||
logging.info('obj:%s' % obj['program_name'])
|
logging.info('obj:%s' % obj['program_name'])
|
||||||
cnc_processing = self.env['sf.cnc.processing'].create({
|
cnc_processing = self.env['sf.cnc.processing'].create({
|
||||||
# 'workorder_id': workorder.id,
|
'workorder_id': workorder.id,
|
||||||
'sequence_number': obj['sequence_number'],
|
'sequence_number': obj['sequence_number'],
|
||||||
'program_name': obj['program_name'],
|
'program_name': obj['program_name'],
|
||||||
'cutting_tool_name': obj['cutting_tool_name'],
|
'cutting_tool_name': obj['cutting_tool_name'],
|
||||||
@@ -990,6 +989,7 @@ class CNCprocessing(models.Model):
|
|||||||
'program_path': program_path.replace('/tmp', '/home/ftp/ftp_root/NC')
|
'program_path': program_path.replace('/tmp', '/home/ftp/ftp_root/NC')
|
||||||
})
|
})
|
||||||
cnc_processing.get_cnc_processing_file(program_path_tmp, cnc_processing, program_path)
|
cnc_processing.get_cnc_processing_file(program_path_tmp, cnc_processing, program_path)
|
||||||
|
cnc_workorder.write({'programming_state': '已编程', 'work_state': '已编程'})
|
||||||
return cnc_processing
|
return cnc_processing
|
||||||
|
|
||||||
def _json_cnc_processing(self, obj):
|
def _json_cnc_processing(self, obj):
|
||||||
|
|||||||
@@ -27,11 +27,11 @@ class Sf_Mrs_Connect(http.Controller):
|
|||||||
# 查询状态为进行中且类型为获取CNC加工程序的工单
|
# 查询状态为进行中且类型为获取CNC加工程序的工单
|
||||||
cnc_production = request.env['mrp.production'].with_user(
|
cnc_production = request.env['mrp.production'].with_user(
|
||||||
request.env.ref("base.user_admin")).search([('name', '=', ret['production_order_no'].split(',')[0])])
|
request.env.ref("base.user_admin")).search([('name', '=', ret['production_order_no'].split(',')[0])])
|
||||||
# cnc_program = request.env['mrp.production'].with_user(
|
|
||||||
# request.env.ref("base.user_admin")).search(
|
|
||||||
# [('programming_no', '=', cnc_production.programming_no), ('id', '!=', cnc_production.id)])
|
|
||||||
cnc_program = request.env['mrp.production'].with_user(
|
cnc_program = request.env['mrp.production'].with_user(
|
||||||
request.env.ref("base.user_admin")).search([('programming_no', '=', cnc_production.programming_no)])
|
request.env.ref("base.user_admin")).search(
|
||||||
|
[('programming_no', '=', cnc_production.programming_no), ('id', '!=', cnc_production.id)])
|
||||||
|
# cnc_program = request.env['mrp.production'].with_user(
|
||||||
|
# request.env.ref("base.user_admin")).search([('programming_no', '=', cnc_production.programming_no)])
|
||||||
logging.info('制造订单号:%s' % cnc_production.name)
|
logging.info('制造订单号:%s' % cnc_production.name)
|
||||||
if cnc_production:
|
if cnc_production:
|
||||||
# if ret['glb_file']:
|
# if ret['glb_file']:
|
||||||
@@ -60,16 +60,14 @@ class Sf_Mrs_Connect(http.Controller):
|
|||||||
cnc_processing = request.env['sf.cnc.processing'].with_user(
|
cnc_processing = request.env['sf.cnc.processing'].with_user(
|
||||||
request.env.ref("base.user_admin")).cnc_processing_create(cnc_production, ret, program_path,
|
request.env.ref("base.user_admin")).cnc_processing_create(cnc_production, ret, program_path,
|
||||||
program_path_tmp)
|
program_path_tmp)
|
||||||
|
logging.info('cnc_processing111:%s' % cnc_processing)
|
||||||
if cnc_processing:
|
if cnc_processing:
|
||||||
cnc_processing_arr.append(cnc_processing._json_cnc_processing(cnc_processing))
|
cnc_processing_arr.append(cnc_processing._json_cnc_processing(cnc_processing))
|
||||||
if cnc_program and cnc_processing_arr:
|
if cnc_program and cnc_processing_arr:
|
||||||
logging.info('cnc_processing_arr:%s' % cnc_processing_arr)
|
logging.info('cnc_processing_arr:%s' % cnc_processing_arr)
|
||||||
cnc_program.write({'programming_state': '已编程', 'work_state': '已编程'})
|
cnc_program.write({'programming_state': '已编程', 'work_state': '已编程'})
|
||||||
# cnc_program.workorder_ids.filtered(lambda b: b.routing_type == 'CNC加工').write(
|
cnc_program.workorder_ids.filtered(lambda b: b.routing_type == 'CNC加工').write(
|
||||||
# {'cnc_ids': cnc_processing_arr})
|
{'cnc_ids': cnc_processing_arr})
|
||||||
for cnc_item in cnc_program.workorder_ids.filtered(lambda b: b.routing_type == 'CNC加工'):
|
|
||||||
logging.info('cnc_item:%s' % cnc_item.production_id.name)
|
|
||||||
cnc_item.write({'cnc_ids': cnc_processing_arr})
|
|
||||||
cnc_program_ids = [item.id for item in cnc_program]
|
cnc_program_ids = [item.id for item in cnc_program]
|
||||||
workpiece_delivery = request.env['sf.workpiece.delivery'].sudo().search(
|
workpiece_delivery = request.env['sf.workpiece.delivery'].sudo().search(
|
||||||
[('production_id', 'in', cnc_program_ids)])
|
[('production_id', 'in', cnc_program_ids)])
|
||||||
|
|||||||
@@ -32,8 +32,9 @@ class CNCprocessing(models.Model):
|
|||||||
@api.model_create_multi
|
@api.model_create_multi
|
||||||
def create(self, vals):
|
def create(self, vals):
|
||||||
obj = super(CNCprocessing, self).create(vals)
|
obj = super(CNCprocessing, self).create(vals)
|
||||||
|
for item in obj:
|
||||||
# 调用CAM工单程序用刀计划创建方法
|
# 调用CAM工单程序用刀计划创建方法
|
||||||
self.env['sf.cam.work.order.program.knife.plan'].create_cam_work_plan(obj)
|
self.env['sf.cam.work.order.program.knife.plan'].create_cam_work_plan(item)
|
||||||
logging.info('成功调用CAM工单程序用刀计划创建方法!!!')
|
logging.info('成功调用CAM工单程序用刀计划创建方法!!!')
|
||||||
return obj
|
return obj
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user