dengsixing 8 months ago
parent
commit
2b350c70fb

+ 4 - 10
src/main/java/com/fdkankan/scene/listener/RabbitMqListener.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.fdkankan.scene.entity.DownloadTourVideo;
 import com.fdkankan.scene.service.IDownloadTourVideoService;
+import com.fdkankan.scene.service.IReverseSceneService;
 import com.fdkankan.scene.service.ISceneService;
 import com.rabbitmq.client.Channel;
 import java.nio.charset.StandardCharsets;
@@ -37,6 +38,8 @@ public class RabbitMqListener {
     private IDownloadTourVideoService downloadTourVideoService;
     @Autowired
     private ISceneService sceneService;
+    @Autowired
+    IReverseSceneService reverseSceneService;
 
     /**
      * 开启了手动确认模式,如果没有手动确认,消费者不会重试,当服务重启时会再次消费,因为rabbitmq认为你还没有处理完你的业务
@@ -94,11 +97,6 @@ public class RabbitMqListener {
         log.info("结束消费消息,id:{}", messageId);
     }
 
-    /**
-     * 开启了手动确认模式,如果没有手动确认,消费者不会重试,当服务重启时会再次消费,因为rabbitmq认为你还没有处理完你的业务
-     * queuesToDeclare = @Queue("${queue.modeling.modeling-test}"),  如果队列不不存在会自动创建队列
-     * concurrency = "3"    设置消费线程数,每个线程每次只拉取一条消息消费
-     */
     @RabbitListener(
             queuesToDeclare = @Queue("reverse-scene")
     )
@@ -107,11 +105,7 @@ public class RabbitMqListener {
         String msg = new String(message.getBody(), StandardCharsets.UTF_8);
         channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
         log.info("开始消费消息,id:{},queue:{},content:{}", messageId, "reverse-scene", msg);
-
-
-
-
-
+        reverseSceneService.reverseScene(JSON.parseObject(msg));
         log.info("结束消费消息,id:{}", messageId);
     }
 

+ 26 - 3
src/main/java/com/fdkankan/scene/service/impl/ReverseSceneServiceImpl.java

@@ -6,7 +6,7 @@ import cn.hutool.core.util.ZipUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.fdkankan.common.constant.ErrorCode;
+import com.fdkankan.common.constant.*;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
@@ -18,6 +18,7 @@ import com.fdkankan.model.utils.CreateObjUtil;
 import com.fdkankan.scene.entity.*;
 import com.fdkankan.scene.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -29,6 +30,9 @@ import java.util.stream.Collectors;
 @Service
 public class ReverseSceneServiceImpl implements IReverseSceneService {
 
+    @Value("${scene.pro.new.url}")
+    private String sceneProNewUrl;
+
     @Autowired
     private IScenePlusService scenePlusService;
     @Autowired
@@ -74,7 +78,7 @@ public class ReverseSceneServiceImpl implements IReverseSceneService {
         String zipParentDir = FileUtil.getParent(zipPath, 1);
 
         //生成vision.txt
-        this.genVisionTxt(num, zipParentDir);
+        int shootCount = this.genVisionTxt(num, zipParentDir);
 
         //解压
         ZipUtil.unzip(zipPath, CharsetUtil.CHARSET_GBK);
@@ -85,9 +89,27 @@ public class ReverseSceneServiceImpl implements IReverseSceneService {
         //计算全景图
         this.genPano(num, zipParentDir);
 
+        scenePlus.setSceneSource(SceneSource.ZT.code());
+        scenePlus.setPayStatus(PayStatus.PAY.code());
+        scenePlus.setSceneStatus(SceneStatus.NO_DISPLAY.code());
+        scenePlus.setUpdateTime(new Date());
+        scenePlusService.updateById(scenePlus);
+
+        scenePlusExt.setSceneFrom(SceneFrom.MINION.code());
+        scenePlusExt.setSceneKind(SceneKind.FACE.code());
+        scenePlusExt.setSceneResolution(SceneResolution.four_K.code());
+        scenePlusExt.setSceneScheme(SceneScheme.LM.code());
+        scenePlusExt.setAlgorithmTime(new Date());
+        scenePlusExt.setBuildType("V3");
+        scenePlusExt.setModelKind(ModelKind.DAM.code());
+        scenePlusExt.setWebSite(sceneProNewUrl + num);
+        scenePlusExt.setShootCount(shootCount);
+        scenePlusExt.setUpdateTime(new Date());
+        scenePlusExtService.updateById(scenePlusExt);
+
     }
 
-    private void genVisionTxt(String num, String zipParentDir) throws Exception {
+    private int genVisionTxt(String num, String zipParentDir) throws Exception {
         String workJsonPath = zipParentDir + "/work.json";
         JSONObject jsonObject = JSON.parseObject(workJsonPath);
         JSONArray observers = jsonObject.getJSONArray("observers");
@@ -163,6 +185,7 @@ public class ReverseSceneServiceImpl implements IReverseSceneService {
         fileServiceInterface.uploadFile(zipParentDir + "vision.txt", String.format(UploadFilePath.IMG_VIEW_PATH, num) + "vision.txt");
         fileServiceInterface.uploadFile(zipParentDir + "vision.modeldata", String.format(UploadFilePath.IMG_VIEW_PATH, num) + "vision.modeldata");
 
+        return observers.size();
     }
 
     private void genPano(String num, String zipParentDir) throws Exception {