diff --git a/sf_mrs_connect/controllers/controllers.py b/sf_mrs_connect/controllers/controllers.py index ddaa6fd5..78a0c05a 100644 --- a/sf_mrs_connect/controllers/controllers.py +++ b/sf_mrs_connect/controllers/controllers.py @@ -24,6 +24,7 @@ class Sf_Mrs_Connect(http.Controller): ret = json.loads(datas) ret = json.loads(ret['result']) logging.info('下发编程单:%s' % ret) + is_delete_file = False # 查询状态为进行中且类型为获取CNC加工程序的工单 cnc_production = request.env['mrp.production'].with_user( request.env.ref("base.user_admin")).search([('name', '=', ret['production_order_no'].split(',')[0])]) @@ -31,6 +32,7 @@ class Sf_Mrs_Connect(http.Controller): request.env.ref("base.user_admin")).search( [('programming_no', '=', cnc_production.programming_no), ('id', '!=', cnc_production.id)]) if cnc_production.workorder_ids.filtered(lambda a: a.routing_type == 'CNC加工').cnc_ids: + is_delete_file = True cnc_production.workorder_ids.filtered( lambda a1: a1.routing_type == 'CNC加工').cnc_ids.sudo().unlink() request.env['sf.cam.work.order.program.knife.plan'].sudo().unlink_cam_plan(cnc_production) @@ -45,6 +47,13 @@ class Sf_Mrs_Connect(http.Controller): # if ret['glb_file']: # cnc_production.glb_file = base64.b64encode(ret['glb_file']) # 拉取所有加工面的程序文件 + if is_delete_file is True: + program_path_tmp_r = os.path.join('/tmp', ret['folder_name'], 'return', 'R') + files_r = os.listdir(program_path_tmp_r) + if files_r: + for file_name in files_r: + file_path = os.path.join(program_path_tmp_r, file_name) + os.remove(file_path) for r in ret['processing_panel']: download_state = request.env['sf.cnc.processing'].with_user( request.env.ref("base.user_admin")).download_file_tmp(