diff --git a/apps/auto_convert3d_new.py b/apps/auto_convert3d_new.py index ecc15b2..0ea8fcb 100644 --- a/apps/auto_convert3d_new.py +++ b/apps/auto_convert3d_new.py @@ -70,6 +70,7 @@ def down_obj_fromoss(pid,order_id): print('找不到obj文件,异常退出') sys.exit(1) + return ossPath # print('下载完成后静默10秒,等待文件写入完成') # time.sleep(10) @@ -110,9 +111,12 @@ def team_check(r): orderId = str(orderId) print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()), f'pid:{pid} repair_id:{repair_id} 生成团队审核模型 start model:IndependentRepairTeamcheckGLBQueue', ) - down_obj_fromoss(pid,orderId) + ossPath = down_obj_fromoss(pid,orderId) + if ossPath == "": + print("ossPath is null") + return obj_filename = f'{pid}.obj' - glb_filename = f'{pid}.glb' + glb_filename = f'{orderId}.glb' print('开始转换obj文件为glb文件...') os.system(f'gltfpack -c -i {os.path.join(workdir, "print", pid, obj_filename)} -o {os.path.join(workdir, "print", pid, glb_filename)} -vt 16 -vc 16') @@ -131,21 +135,10 @@ def team_check(r): - #os.system(f'FBX2glTF -i {os.path.join(workdir, "print", pid, obj_filename)} -o {os.path.join(workdir, "print", pid, glb_filename)}') - #如果压缩后的glb文件小于2M,文件贴图异常,需要重新生成,直到成功 - # while os.path.getsize(os.path.join(workdir, "print", pid, glb_filename)) < 2 * 1024 * 1024: - # print(f'{pid}glb文件大小:{os.path.getsize(os.path.join(workdir, "print", pid, glb_filename))}') - # print(f'{time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())} 压缩后的glb文件小于2M,文件贴图异常,重新生成glb文件') - # # 将有异常的pid相关文件全部移动到异常文件夹,然后重新下载重新生成 - # if not os.path.exists(os.path.join(workdir, 'print', 'error', pid)): - # os.makedirs(os.path.join(workdir, 'print', 'error', pid)) - # for file in os.listdir(os.path.join(workdir, 'print', pid)): - # shutil.move(os.path.join(workdir, 'print', pid, file), os.path.join(workdir, 'print', 'error', pid, file)) - # down_obj_fromoss(pid) - # os.system(f'gltfpack -c -i {os.path.join(workdir, "print", pid, obj_filename)} -o {os.path.join(workdir, "print", pid, glb_filename)}') + print('上传glb文件到oss...') - oss_client.put_object_from_file(f'glbs/print/{glb_filename}', os.path.join(workdir, "print", pid, glb_filename)) + oss_client.put_object_from_file(f'glbs/print/{ossPath}/{glb_filename}', os.path.join(workdir, "print", pid, glb_filename)) print(f'{update_repair_status_url}?id={repair_id}') res = requests.get(f'{update_repair_status_url}?id={repair_id}')