瀏覽代碼

计算结果处理,增加生成二维码逻辑
tag/list接口,原返回字符串改为返回json对象

dengsixing 3 年之前
父節點
當前提交
03d7aa0393

+ 29 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/listener/BuildSceneResultMQListener.java

@@ -3,13 +3,17 @@ package com.fdkankan.scene.listener;
 import cn.hutool.http.HttpStatus;
 import com.alibaba.fastjson.JSONObject;
 import com.fdkankan.common.constant.BuildStatus;
+import com.fdkankan.common.constant.ConstantFilePath;
 import com.fdkankan.common.constant.ExpiredStatus;
 import com.fdkankan.common.constant.SceneFrom;
 import com.fdkankan.common.constant.SceneResolution;
 import com.fdkankan.common.constant.SceneSource;
 import com.fdkankan.common.constant.SceneStatus;
 import com.fdkankan.common.constant.ServerCode;
+import com.fdkankan.common.constant.UploadFilePath;
 import com.fdkankan.common.response.ResultData;
+import com.fdkankan.common.util.MatrixToImageWriterUtil;
+import com.fdkankan.fyun.oss.UploadToOssUtil;
 import com.fdkankan.mq.message.BuildSceneResultMqMessage;
 import com.fdkankan.platform.api.feign.PlatformGoodsClient;
 import com.fdkankan.platform.api.feign.PlatformUserClient;
@@ -26,6 +30,7 @@ import com.fdkankan.scene.service.ISceneFileBuildService;
 import com.fdkankan.scene.service.ISceneProExtService;
 import com.fdkankan.scene.service.ISceneProService;
 import com.fdkankan.scene.service.ISceneService;
+import java.io.File;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.rocketmq.spring.annotation.MessageModel;
 import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
@@ -61,6 +66,15 @@ public class BuildSceneResultMQListener implements RocketMQListener<String> {
     @Value("${rocketmq.build-scene-result.topicName.topic-modeling-a}")
     private String buildSceneResultTopic;
 
+    @Value("${main.url}")
+    private String mainUrl;
+
+    @Value("${scene.pro.url}")
+    private String sceneProUrl;
+
+    @Value("${scene.pro.new.url}")
+    private String sceneProNewUrl;
+
     @Autowired
     ISceneService sceneService;
     @Autowired
@@ -77,6 +91,8 @@ public class BuildSceneResultMQListener implements RocketMQListener<String> {
     ISceneEditInfoService sceneEditInfoService;
     @Autowired
     ISceneEditControlsService sceneEditControlsService;
+    @Autowired
+    UploadToOssUtil uploadToOssUtil;
 
 
     @Override
@@ -185,7 +201,20 @@ public class BuildSceneResultMQListener implements RocketMQListener<String> {
                     }
                 }
 
+                String sceneUrl = mainUrl + "/" + sceneProNewUrl;
+                String outPathZh = ConstantFilePath.BASE_PATH + File.separator + "sceneQRcode/"+sceneCode+".png";
+                String outPathEn = ConstantFilePath.BASE_PATH + File.separator + "sceneQRcode/"+sceneCode+"_en.png";
+                //生成新的分享的二维码-中文版本
+                MatrixToImageWriterUtil.createQRCode(sceneUrl + sceneCode, outPathZh,null);
+                //生成新的分享的二维码-英文版本
+                MatrixToImageWriterUtil.createQRCode(sceneUrl + sceneCode + "&lang=en", outPathEn, null);
+                //上传二维码
+                uploadToOssUtil.upload(outPathZh, String.format(UploadFilePath.DOWNLOADS_QRCODE, sceneCode) + sceneCode + ".png");
+                uploadToOssUtil.upload(outPathEn, String.format(UploadFilePath.DOWNLOADS_QRCODE, sceneCode) + sceneCode + "_en.png");
+
             }
+
+
         }catch ( Exception e){
             log.error("处理计算结果消息出错:{}",e);
         }

+ 2 - 2
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/impl/SceneProServiceImpl.java

@@ -2257,8 +2257,8 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             return ResultData.ok();
         }
 
-        List<Object> tags = allTagsMap.entrySet().parallelStream().map(entry -> {
-            return entry.getValue();
+        List<JSONObject> tags = allTagsMap.entrySet().parallelStream().map(entry -> {
+            return JSON.parseObject(entry.getValue());
         }).collect(Collectors.toList());
 
         return ResultData.ok(tags);