xiewenjie 3 роки тому
батько
коміт
784e080fd0

+ 16 - 0
sxz-core/src/main/java/com/fdkk/sxz/other/listener/RunBuild.java

@@ -160,6 +160,14 @@ public class RunBuild {
                         RenovationPartsDetailEntity partsDetailServiceById = renovationPartsDetailService.findById(id);
                         checkFlag = checkMviewFile(path, fileId, type);
                         if (checkFlag) {
+                            //obj转换成glb格式
+                            String glbPath = path.replace(".obj", ".glb");
+                            String objPath = path.replace(".obj", ".glb");
+                            RunBuild.log.info("obj转换成glb格式路径-{}", glbPath);
+                            CreateObjUtil.objToGlb(objPath, glbPath);
+                            uploadToOssUtil.uploadTo4dTjw(glbPath, "domain/eHome/furniture/models/" + fileId + ".glb");
+
+                            partsDetailServiceById.setPath(prefix + "domain/eHome/furniture/models/" + fileId + ".glb");
                             partsDetailServiceById.setMviewPath(prefix + "domain/eHome/furniture/temp/" + fileId + ".fdage");
                             partsDetailServiceById.setMviewStatus(2);
                             renovationPartsDetailService.updateById(partsDetailServiceById);
@@ -173,6 +181,14 @@ public class RunBuild {
                         CustomComponentEntity componentServiceById = customComponentService.findById(id);
                         checkFlag = checkMviewFile(path, fileId, type);
                         if (checkFlag) {
+                            //obj转换成glb格式
+                            RunBuild.log.info("配件obj转换成glb格式");
+                            String glbPath = path.replace(".obj", ".glb");
+                            String objPath = path.replace(".obj", ".glb");
+                            RunBuild.log.info("obj转换成glb格式路径-{}", glbPath);
+                            CreateObjUtil.objToGlb(objPath, glbPath);
+                            uploadToOssUtil.uploadTo4dTjw(glbPath, "domain/eHome/furniture/models/" + fileId + ".glb");
+                            componentServiceById.setTemplate(prefix + "domain/eHome/furniture/models/" + fileId + ".glb");
                             componentServiceById.setMviewPath(prefix + "domain/eHome/furniture/models/" + fileId + ".fdage");
                             componentServiceById.setMviewStatus(2);
                             customComponentService.updateById(componentServiceById);

+ 12 - 24
sxz-core/src/main/java/com/fdkk/sxz/webApi/controller/ManagerController.java

@@ -628,20 +628,6 @@ public class ManagerController extends BaseController {
         //先执行python-NewResortForOne脚本,处理obj文件
         CreateObjUtil.objHandle(buildPath + modelUploadEntity.getObjPath());
 
-        ManagerController.log.info("配件obj转换成mview格式");
-        Map<String, String> paramsMap = new HashMap<>();
-        paramsMap.put("uuid", modelUploadEntity.getFileId());
-        paramsMap.put("inObj", buildPath + modelUploadEntity.getObjPath());
-        paramsMap.put("outFilePath", buildPath + modelUploadEntity.getObjPath().replace(".obj", ""));
-        OkHttpUtils.httpPostForm(maxObjUrl + "toToolbag", paramsMap);
-        Thread.sleep(1000);
-
-        //obj转换成glb格式
-        String glbPath = buildPath + "upload/" + modelUploadEntity.getFileId() + "/" + modelUploadEntity.getFileId() + ".glb";
-        ManagerController.log.info("obj转换成glb格式路径-{}", glbPath);
-        CreateObjUtil.objToGlb(buildPath + modelUploadEntity.getObjPath(), glbPath);
-        modelUploadEntity.setObjSize((int) new File(buildPath + modelUploadEntity.getObjPath()).length());
-        modelUploadService.updateById(modelUploadEntity);
 
         //上传obj、mtl、jpg和glb
         String str = FileUtils.readFile(buildPath + "upload/" + modelUploadEntity.getFileId() + "/uploadList.txt");
@@ -662,7 +648,6 @@ public class ManagerController extends BaseController {
 //        uploadToOssUtil.uploadTo4dTjw(buildPath + "upload/" + modelUploadEntity.getFileId() + "/" + modelUploadEntity.getFileId() + ".jpg", "domain/eHome/furniture/simpleObj-Mtl/" +
 //        modelUploadEntity.getFileId() + "/" + modelUploadEntity.getFileId() + ".jpg");
 
-        uploadToOssUtil.uploadTo4dTjw(glbPath, "domain/eHome/furniture/temp/" + modelUploadEntity.getFileId() + ".glb");
 
         //保存模型详情
         RenovationPartsDetailEntity renovationPartsDetailEntity = new RenovationPartsDetailEntity();
@@ -670,17 +655,18 @@ public class ManagerController extends BaseController {
         renovationPartsDetailEntity.setExamine(0);
         renovationPartsDetailEntity.setName(modelUploadEntity.getFileId());
         renovationPartsDetailEntity.setPath(prefix + "domain/eHome/furniture/temp/" + modelUploadEntity.getFileId() + ".glb");
+        String imgPath = buildPath + "upload/" + modelUploadEntity.getFileId() + "/" + modelUploadEntity.getFileId() + "._preview.jpg";
 
         // 加锁,同一个模型只能请求一次3d渲染,防止同一账号在登录多个客户端下同时操作一个模型导致出问题
         Result result;
         synchronized (param.getModelUploadId()) {
-            result = synchronizedupdateByIdModel(param, modelUploadEntity, glbPath, renovationPartsDetailEntity);
+            result = synchronizedupdateByIdModel(param, modelUploadEntity, imgPath, renovationPartsDetailEntity);
         }
         return result;
     }
 
     private Result synchronizedupdateByIdModel(RequestRenovationPartsDetailManager param,
-                                               ModelUploadEntity modelUploadEntity, String glbPath,
+                                               ModelUploadEntity modelUploadEntity, String imgPath,
                                                RenovationPartsDetailEntity renovationPartsDetailEntity) throws Exception {
         if (checkReaptPost(param)) {
             ManagerController.log.info("模型已被提交,模型id-{}", param.getModelUploadId());
@@ -689,13 +675,13 @@ public class ManagerController extends BaseController {
 
 
         //判断缩略图是否存在,在就保存缩略图
-        String imgPath = glbPath.replace(modelUploadEntity.getFileId() + ".glb", modelUploadEntity.getFileId() + "_preview.jpg");
         if (new File(imgPath).exists()) {
             uploadToOssUtil.uploadTo4dTjw(imgPath, "domain/eHome/furniture/temp/" + modelUploadEntity.getFileId() + "_preview.jpg");
             renovationPartsDetailEntity.setImg(prefix + "domain/eHome/furniture/temp/" + modelUploadEntity.getFileId() + "_preview.jpg");
             renovationPartsDetailEntity.setHighImg(prefix + "domain/eHome/furniture/temp/" + modelUploadEntity.getFileId() + "_preview.jpg");
         }
 
+
         //调用obj转换成toolbag文件
         objToToolbagUtil.convertobjTomview(modelUploadEntity.getFileId());
         if (new File(buildPath + "upload/" + modelUploadEntity.getFileId() + "/" + modelUploadEntity.getFileId() + ".4dage").exists()) {
@@ -709,14 +695,16 @@ public class ManagerController extends BaseController {
         if (!saveFlag) {
             return Result.failure(CodeConstant.FAILURE_CODE_4008, CodeConstant.FAILURE_MSG_4008);
         }
-
         String messageStr = renovationPartsDetailEntity.getId() + ":;1:;" + buildPath + modelUploadEntity.getObjPath().replace(
                 ".obj", ".fdage") + ":;" + modelUploadEntity.getFileId();
-        rabbitTemplate.convertAndSend(TopicRabbitConfig.DELAY_EXCHANGE, TopicRabbitConfig.MVIEW, messageStr, message -> {
-            // 设置过期时间
-            message.getMessageProperties().setDelay(900000);
-            return message;
-        });
+        ManagerController.log.info("配件obj转换成mview格式");
+        Map<String, String> paramsMap = new HashMap<>();
+        paramsMap.put("uuid", modelUploadEntity.getFileId());
+        paramsMap.put("inObj", buildPath + modelUploadEntity.getObjPath());
+        paramsMap.put("outFilePath", buildPath + modelUploadEntity.getObjPath().replace(".obj", ""));
+        paramsMap.put("resData", messageStr);
+        OkHttpUtils.httpPostForm(maxObjUrl + "toToolbag", paramsMap);
+        Thread.sleep(1000);
         //保存模型位置信息
         RenovationPartsAttachingEntity renovationPartsAttachingEntity = new RenovationPartsAttachingEntity();
         if ("wall".equals(param.getAttachingType())) {

+ 23 - 0
sxz-core/src/main/java/com/fdkk/sxz/webApi/controller/fbxToObjController.java

@@ -45,4 +45,27 @@ public class fbxToObjController {
         rabbitTemplate.convertAndSend(TopicRabbitConfig.TOPICE, TopicRabbitConfig.MODEL_BIZ, resData.replace("-", ":;"));
         return Result.success("发送队列成功");
     }
+
+    /**
+     * 数据上传
+     *
+     * @return
+     */
+    @ApiOperation("toToolbag队列数据处理任务接收")
+    @RequestMapping(value = "/toToolbag/{resData}", method = RequestMethod.GET)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "resData", value = "版本号", dataType = "String")})
+    @NoAuthentication
+    @AroundLog(name = "toToolbag数据处理任务接收")
+    public Result toToolbag(@PathVariable String resData) {
+        System.out.println(resData);
+        fbxToObjController.log.info("数据处理任务接收:{}", resData);
+        rabbitTemplate.convertAndSend(TopicRabbitConfig.DELAY_EXCHANGE, TopicRabbitConfig.MVIEW,
+                resData.replace("-", ":;"), message -> {
+                    // 设置过期时间
+                    message.getMessageProperties().setDelay(60000);
+                    return message;
+                });
+        return Result.success("发送队列成功");
+    }
 }

+ 4 - 5
sxz-core/src/main/java/com/fdkk/sxz/webApi/service/custom/impl/CustomProductSecondclassifyServiceImpl.java

@@ -20,13 +20,12 @@ import org.springframework.stereotype.Service;
 public class CustomProductSecondclassifyServiceImpl extends BaseServiceImpl<ICustomProductSecondclassifyMapper, CustomProductSecondclassifyEntity> implements ICustomProductSecondclassifyService {
 
 
-
     @Override
     public PageInfo<CustomProductSecondclassifyEntity> listByPage(RequestCustomProductSecondclassify param) {
-        LambdaQueryWrapper<CustomProductSecondclassifyEntity> wrapper =  Wrappers.lambdaQuery();
-        if (ObjectUtil.isNotNull(param.getParentId())){
-            wrapper.eq(CustomProductSecondclassifyEntity::getParentId,param.getParentId());
+        LambdaQueryWrapper<CustomProductSecondclassifyEntity> wrapper = Wrappers.lambdaQuery();
+        if (ObjectUtil.isNotNull(param.getParentId())) {
+            wrapper.eq(CustomProductSecondclassifyEntity::getParentId, param.getParentId());
         }
-        return super.listByPage(param,wrapper);
+        return super.listByPage(param, wrapper);
     }
 }

+ 4 - 17
sxz-core/src/main/java/com/fdkk/sxz/webApi/service/impl/ComponentModelUploadServiceImpl.java

@@ -10,7 +10,6 @@ import com.fdkk.sxz.base.impl.BaseServiceImpl;
 import com.fdkk.sxz.entity.ComponentModelUploadEntity;
 import com.fdkk.sxz.entity.custuom.CustomComponentEntity;
 import com.fdkk.sxz.exception.BusinessException;
-import com.fdkk.sxz.other.mq.TopicRabbitConfig;
 import com.fdkk.sxz.util.CreateObjUtil;
 import com.fdkk.sxz.util.OkHttpUtils;
 import com.fdkk.sxz.util.UploadToOssUtil;
@@ -148,36 +147,24 @@ public class ComponentModelUploadServiceImpl extends BaseServiceImpl<IComponentM
                     customComponentEntity.setThumbnailSrc(prefix + "domain/eHome/furniture/models/" + componentModel.getFileId() + "_preview.jpg");
 
                     ComponentModelUploadServiceImpl.log.info("配件obj转换成mview格式");
+
+                    String messageStr = customComponentEntity.getId() + ":;2:;" + buildPath + componentModel.getObjPath().replace(".obj", ".fdage") + ":;" + componentModel.getFileId();
+
                     Map<String, String> paramsMap = new HashMap<>();
                     paramsMap.put("uuid", componentModel.getFileId());
                     paramsMap.put("inObj", buildPath + componentModel.getObjPath());
                     paramsMap.put("outFilePath", buildPath + componentModel.getObjPath().replace(".obj", ""));
+                    paramsMap.put("resData", messageStr);
                     OkHttpUtils.httpPostForm(maxObjUrl + "toToolbag", paramsMap);
                     Thread.sleep(1000);
 
 
-                    //obj转换成glb格式
-                    ComponentModelUploadServiceImpl.log.info("配件obj转换成glb格式");
-                    String glbPath = buildPath + componentModel.getObjPath().replace(".obj", ".glb");
-                    ComponentModelUploadServiceImpl.log.info("obj转换成glb格式路径-{}", glbPath);
-                    CreateObjUtil.objToGlb(buildPath + componentModel.getObjPath(), glbPath);
-                    uploadToOssUtil.uploadTo4dTjw(buildPath + componentModel.getObjPath().replace(".obj", ".glb"), "domain/eHome/furniture/models/" + componentModel.getFileId() + ".glb");
-                    customComponentEntity.setTemplate(prefix + "domain/eHome/furniture/models/" + componentModel.getFileId() + ".glb");
-                    //obj转换成glb格式
                     ComponentModelUploadServiceImpl.log.info("上传obj到simpleObj-Mtl开始");
                     uploadToOssUtil.uploadTo4dTjw(buildPath + componentModel.getObjPath(),
                             "domain/eHome/furniture/simpleObj-Mtl/" + componentModel.getFileId() + "/" + componentModel.getFileId() + ".obj");
-                    //obj转换成glb格式
                     ComponentModelUploadServiceImpl.log.info("上传obj到simpleObj-Mtl结束");
                     Boolean componentSaveFlag = customComponentService.save(customComponentEntity);
                     if (componentSaveFlag) {
-                        String messageStr = customComponentEntity.getId() + ":;2:;" + buildPath + componentModel.getObjPath().replace(".obj", ".fdage") + ":;" + componentModel.getFileId();
-                        rabbitTemplate.convertAndSend(TopicRabbitConfig.DELAY_EXCHANGE, TopicRabbitConfig.MVIEW,
-                                messageStr, message -> {
-                                    // 设置过期时间
-                                    message.getMessageProperties().setDelay(900000);
-                                    return message;
-                                });
                         componentModel.setPartsDetailId(customComponentEntity.getId());
                         updateById(componentModel);
                     }

+ 6 - 18
sxz-core/src/main/java/com/fdkk/sxz/webApi/service/impl/ModelUploadServiceImpl.java

@@ -15,7 +15,6 @@ import com.fdkk.sxz.entity.ModelUploadEntity;
 import com.fdkk.sxz.entity.custuom.CustomComponentEntity;
 import com.fdkk.sxz.entity.custuom.CustomProductEntity;
 import com.fdkk.sxz.exception.BusinessException;
-import com.fdkk.sxz.other.mq.TopicRabbitConfig;
 import com.fdkk.sxz.util.CreateObjUtil;
 import com.fdkk.sxz.util.OkHttpUtils;
 import com.fdkk.sxz.util.UploadToOssUtil;
@@ -201,19 +200,9 @@ public class ModelUploadServiceImpl extends BaseServiceImpl<IModelUploadMapper,
                                 uploadToOssUtil.uploadTo4dTjw(buildPath + componentModel.getThumPath(), "domain/eHome/furniture/models/" + componentModel.getFileId() + "_preview.jpg");
 
                                 customComponentEntity.setThumbnailSrc(prefix + "domain/eHome/furniture/models/" + componentModel.getFileId() + "_preview.jpg");
-
-                                //obj转换成glb格式
-                                ModelUploadServiceImpl.log.info("配件obj转换成glb格式");
-                                String glbPath = buildPath + componentModel.getObjPath().replace(".obj", ".glb");
-                                ModelUploadServiceImpl.log.info("obj转换成glb格式路径-{}", glbPath);
-                                CreateObjUtil.objToGlb(buildPath + componentModel.getObjPath(), glbPath);
-                                uploadToOssUtil.uploadTo4dTjw(buildPath + componentModel.getObjPath().replace(".obj", ".glb"), "domain/eHome/furniture/models/" + componentModel.getFileId() + ".glb");
-                                customComponentEntity.setTemplate(prefix + "domain/eHome/furniture/models/" + componentModel.getFileId() + ".glb");
-                                //obj转换成glb格式
                                 ModelUploadServiceImpl.log.info("上传obj到simpleObj-Mtl开始");
                                 uploadToOssUtil.uploadTo4dTjw(buildPath + componentModel.getObjPath(),
                                         "domain/eHome/furniture/simpleObj-Mtl/" + componentModel.getFileId() + "/" + componentModel.getFileId() + ".obj");
-                                //obj转换成glb格式
                                 ModelUploadServiceImpl.log.info("上传obj到simpleObj-Mtl结束");
                                 customComponentEntity.setMviewStatus(1);
                                 customComponentEntity.setCustomProductId(entity.getId());
@@ -223,20 +212,19 @@ public class ModelUploadServiceImpl extends BaseServiceImpl<IModelUploadMapper,
                                     componentModelUploadService.updateById(componentModel);
                                     ids.add(customComponentEntity.getId().toString());
 
+
+                                    String messageStr = customComponentEntity.getId() + ":;2:;" + buildPath + componentModel.getObjPath().replace(".obj", ".fdage") + ":;" + componentModel.getFileId();
+
                                     ModelUploadServiceImpl.log.info("配件obj转换成mview格式MQ处理");
                                     Map<String, String> paramsMap = new HashMap<>();
                                     paramsMap.put("uuid", componentModel.getFileId());
                                     paramsMap.put("inObj", buildPath + componentModel.getObjPath());
                                     paramsMap.put("outFilePath", buildPath + componentModel.getObjPath().replace(".obj", ""));
+                                    paramsMap.put("resData", messageStr);
                                     OkHttpUtils.httpPostForm(maxObjUrl + "toToolbag", paramsMap);
+
                                     ModelUploadServiceImpl.log.info("上传开始");
-                                    String messageStr = customComponentEntity.getId() + ":;2:;" + buildPath + componentModel.getObjPath().replace(".obj", ".fdage") + ":;" + componentModel.getFileId();
-                                    rabbitTemplate.convertAndSend(TopicRabbitConfig.DELAY_EXCHANGE, TopicRabbitConfig.MVIEW,
-                                            messageStr, message -> {
-                                                // 设置过期时间
-                                                message.getMessageProperties().setDelay(900000);
-                                                return message;
-                                            });
+
                                 }
                                 List<String> fileList = uploadToOssUtil.fileFolderTo4dTjw("domain/eHome/furniture/ue4data/" + modelUploadEntity.getFileId() + "/" + componentModel.getFileId());
                                 ModelUploadServiceImpl.log.info("上传mtl+jpg 到simpleObj-Mtl开始");