Browse Source

修复sceneResolution、sceneKind字段值

dengsixing 3 năm trước cách đây
mục cha
commit
8fa4f2ad4a

+ 21 - 0
src/main/java/com/fdkankan/repair/controller/ScenePlusController.java

@@ -0,0 +1,21 @@
+package com.fdkankan.repair.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 场景主表 前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2022-06-29
+ */
+@RestController
+@RequestMapping("/repair/scenePlus")
+public class ScenePlusController {
+
+}
+

+ 2 - 2
src/main/java/com/fdkankan/repair/controller/ScenePlusExtController.java

@@ -11,10 +11,10 @@ import org.springframework.web.bind.annotation.RestController;
  * </p>
  *
  * @author 
- * @since 2022-03-30
+ * @since 2022-06-29
  */
 @RestController
-@RequestMapping("/test/scenePlusExt")
+@RequestMapping("/repair/scenePlusExt")
 public class ScenePlusExtController {
 
 }

+ 66 - 0
src/main/java/com/fdkankan/repair/controller/SceneRepairController.java

@@ -4,9 +4,13 @@ import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fdkankan.common.constant.ConstantFilePath;
+import com.fdkankan.common.constant.SceneKind;
+import com.fdkankan.common.constant.SceneResolution;
 import com.fdkankan.common.constant.UploadFilePath;
+import com.fdkankan.common.response.Result;
 import com.fdkankan.common.response.ResultData;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.common.util.MatrixToImageWriterUtil;
@@ -17,16 +21,21 @@ import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.repair.bean.SceneRepairParamVO;
 import com.fdkankan.repair.bean.SceneUpgradeProgressBean;
+import com.fdkankan.repair.entity.ScenePlus;
+import com.fdkankan.repair.entity.ScenePlusExt;
 import com.fdkankan.repair.entity.ScenePro;
 import com.fdkankan.repair.entity.SceneProExt;
 import com.fdkankan.repair.httpclient.FdkankanMiniClient;
 import com.fdkankan.repair.service.IScenePlusExtService;
+import com.fdkankan.repair.service.IScenePlusService;
 import com.fdkankan.repair.service.ISceneProExtService;
 import com.fdkankan.repair.service.ISceneProService;
 import com.fdkankan.repair.service.ISceneResourceService;
 import com.fdkankan.repair.service.impl.SceneRepairService;
 import java.io.File;
+import java.nio.charset.StandardCharsets;
 import java.util.List;
+import java.util.Objects;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -78,6 +87,10 @@ public class SceneRepairController {
     private String mainUrl;
     @Value("${scene.pro.new.url}")
     private String sceneProNewUrl;
+    @Autowired
+    private IScenePlusService scenePlusService;
+    @Autowired
+    private IScenePlusExtService scenePlusExtService;
 
     /**
      * 最大线程数
@@ -228,6 +241,59 @@ public class SceneRepairController {
         return "ok";
     }
 
+    @GetMapping("/repairResokutionAndKind")
+    public ResultData repairResokutionAndKind(String num) throws Exception{
+
+        //修复t_scene_plus_ext
+        String[] numArr = null;
+        if(StrUtil.isNotEmpty(num)){
+            numArr = num.split(",");
+        }
+
+        List<ScenePlus> scenePlusList = null;
+        if(Objects.isNull(numArr)){
+            scenePlusList = scenePlusService.list();
+        }else{
+            scenePlusList = scenePlusService.list(new LambdaQueryWrapper<ScenePlus>().in(ScenePlus::getNum, numArr));
+        }
+        if(CollUtil.isEmpty(scenePlusList)){
+            return ResultData.ok();
+        }
+        for (ScenePlus scenePlus : scenePlusList) {
+
+            //修复数据库
+            ScenePlusExt scenePlusExt = scenePlusExtService.getOne(
+                new LambdaQueryWrapper<ScenePlusExt>()
+                .eq(ScenePlusExt::getPlusId, scenePlus.getId()));
+            if(SceneResolution.TILES.code().equals(scenePlusExt.getSceneResolution())){
+                scenePlusExt.setSceneKind(SceneKind.FACE.code());
+            }else{
+                scenePlusExt.setSceneKind(SceneKind.TILES.code());
+            }
+
+            if(scenePlus.getSceneSource() == 1){
+                scenePlusExt.setSceneResolution("2k");
+            }else if(scenePlus.getSceneSource() == 2){
+                scenePlusExt.setSceneResolution("1k");
+            }else if(scenePlus.getSceneSource() == 3 || scenePlus.getSceneSource() == 4){
+                scenePlusExt.setSceneResolution("4k");
+            }
+            scenePlusExtService.updateById(scenePlusExt);
+
+            //修复scene.json
+            String sceneJsonPath = String.format(UploadFilePath.DATA_VIEW_PATH, scenePlus.getNum()) + "scene.json";
+            String sceneJsonStr = uploadToOssUtil.getObjectContent(this.bucket, sceneJsonPath);
+            JSONObject sceneJsonObject = JSON.parseObject(sceneJsonStr);
+            sceneJsonObject.put("sceneResolution", scenePlusExt.getSceneResolution());
+            sceneJsonObject.put("sceneKind", scenePlusExt.getSceneKind());
+            uploadToOssUtil.upload(sceneJsonObject.toJSONString().getBytes(StandardCharsets.UTF_8), sceneJsonPath);
+
+            //清除scene.json缓存
+        }
+
+        return ResultData.ok();
+    }
+
 
 
 }

+ 115 - 0
src/main/java/com/fdkankan/repair/entity/ScenePlus.java

@@ -0,0 +1,115 @@
+package com.fdkankan.repair.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 场景主表
+ * </p>
+ *
+ * @author 
+ * @since 2022-06-29
+ */
+@Getter
+@Setter
+@TableName("t_scene_plus")
+public class ScenePlus implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 场景码
+     */
+    @TableField("num")
+    private String num;
+
+    /**
+     * 用户id
+     */
+    @TableField("user_id")
+    private Long userId;
+
+    /**
+     * 相机id
+     */
+    @TableField("camera_id")
+    private Long cameraId;
+
+    /**
+     * 手机id
+     */
+    @TableField("phone_id")
+    private String phoneId;
+
+    /**
+     * 场景名称
+     */
+    @TableField("title")
+    private String title;
+
+    /**
+     * 场景描述
+     */
+    @TableField("description")
+    private String description;
+
+    /**
+     * 场景状态:0-未建好,1--已建好,-1-计算出错,-2--不在官网显示
+     */
+    @TableField("scene_status")
+    private Integer sceneStatus;
+
+    /**
+     * 场景来源:相机拍摄10以内表示,1表示八目,2双目,3转台,4 激光  其他来源10以上,11:一键换装,12:123看房,13文通虚拟场景
+     */
+    @TableField("scene_source")
+    private Integer sceneSource;
+
+    /**
+     * 支付状态:0表示未付款,1表示付款了,-1表示欠费,-2表示容量不足
+     */
+    @TableField("pay_status")
+    private Integer payStatus;
+
+    /**
+     * 场景类型  0-其他,1-文博,2-地产,3-电商,4-餐饮,5-家居,99-一件换装虚拟房源
+     */
+    @TableField("scene_type")
+    private Integer sceneType;
+
+    /**
+     * 是否推荐:0-否,1-是
+     */
+    @TableField("recommend")
+    private Integer recommend;
+
+    /**
+     * 创建时间
+     */
+    @TableField("create_time")
+    private Date createTime;
+
+    /**
+     * 更新时间
+     */
+    @TableField("update_time")
+    private Date updateTime;
+
+    /**
+     * 0-有效,1-删除, 2-禁用
+     */
+    @TableField("tb_status")
+    private Integer tbStatus;
+
+
+}

+ 8 - 2
src/main/java/com/fdkankan/repair/entity/ScenePlusExt.java

@@ -15,7 +15,7 @@ import lombok.Setter;
  * </p>
  *
  * @author 
- * @since 2022-03-30
+ * @since 2022-06-29
  */
 @Getter
 @Setter
@@ -106,7 +106,7 @@ public class ScenePlusExt implements Serializable {
     private String buildType;
 
     /**
-     * 全景图加载方式,tiles/1k:1k瓦片图,tiles/2:2k瓦片图,tiles/4k:4k瓦片图,pan:全景图 ,local:本地切片,cube:立体图
+     * 分辨率(2k,4k)
      */
     @TableField("scene_resolution")
     private String sceneResolution;
@@ -118,6 +118,12 @@ public class ScenePlusExt implements Serializable {
     private String sceneFrom;
 
     /**
+     * 切图方式(tiles:瓦片图,face:切片图,pan:全景图 ,local:本地切片,cube:立体图)
+     */
+    @TableField("scene_kind")
+    private String sceneKind;
+
+    /**
      * 点位视频
      */
     @TableField("videos")

+ 3 - 3
src/main/java/com/fdkankan/repair/generate/AutoGenerate.java

@@ -19,7 +19,7 @@ public class AutoGenerate {
 
         String path =System.getProperty("user.dir");
 
-        generate(path,"test", getTables(new String[]{
+        generate(path,"repair", getTables(new String[]{
                 "t_scene_plus_ext",
         }));
 
@@ -48,8 +48,8 @@ public class AutoGenerate {
 
 
     public static void  generate(String path,String moduleName,  List<String> tables){
-        FastAutoGenerator.create("jdbc:mysql://192.168.0.47:13306/4dkankan-center-scene",
-                "root","4dkk2020cuikuan%")
+        FastAutoGenerator.create("jdbc:mysql://52.59.225.167:13306/4dkankan-center-scene",
+                "root","JK20220120%JIK")
                 .globalConfig(builder -> {
                     builder.author("")               //作者
                             .outputDir(path+"\\src\\main\\java")    //输出路径(写到java目录)

+ 1 - 1
src/main/java/com/fdkankan/repair/mapper/IScenePlusExtMapper.java

@@ -10,7 +10,7 @@ import org.apache.ibatis.annotations.Mapper;
  * </p>
  *
  * @author 
- * @since 2022-03-30
+ * @since 2022-06-29
  */
 @Mapper
 public interface IScenePlusExtMapper extends BaseMapper<ScenePlusExt> {

+ 18 - 0
src/main/java/com/fdkankan/repair/mapper/IScenePlusMapper.java

@@ -0,0 +1,18 @@
+package com.fdkankan.repair.mapper;
+
+import com.fdkankan.repair.entity.ScenePlus;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * 场景主表 Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2022-06-29
+ */
+@Mapper
+public interface IScenePlusMapper extends BaseMapper<ScenePlus> {
+
+}

+ 1 - 1
src/main/java/com/fdkankan/repair/service/IScenePlusExtService.java

@@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * </p>
  *
  * @author 
- * @since 2022-03-30
+ * @since 2022-06-29
  */
 public interface IScenePlusExtService extends IService<ScenePlusExt> {
 

+ 16 - 0
src/main/java/com/fdkankan/repair/service/IScenePlusService.java

@@ -0,0 +1,16 @@
+package com.fdkankan.repair.service;
+
+import com.fdkankan.repair.entity.ScenePlus;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 场景主表 服务类
+ * </p>
+ *
+ * @author 
+ * @since 2022-06-29
+ */
+public interface IScenePlusService extends IService<ScenePlus> {
+
+}

+ 1 - 1
src/main/java/com/fdkankan/repair/service/impl/ScenePlusExtServiceImpl.java

@@ -12,7 +12,7 @@ import org.springframework.stereotype.Service;
  * </p>
  *
  * @author 
- * @since 2022-03-30
+ * @since 2022-06-29
  */
 @Service
 public class ScenePlusExtServiceImpl extends ServiceImpl<IScenePlusExtMapper, ScenePlusExt> implements IScenePlusExtService {

+ 20 - 0
src/main/java/com/fdkankan/repair/service/impl/ScenePlusServiceImpl.java

@@ -0,0 +1,20 @@
+package com.fdkankan.repair.service.impl;
+
+import com.fdkankan.repair.entity.ScenePlus;
+import com.fdkankan.repair.mapper.IScenePlusMapper;
+import com.fdkankan.repair.service.IScenePlusService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 场景主表 服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2022-06-29
+ */
+@Service
+public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlus> implements IScenePlusService {
+
+}

+ 5 - 0
src/main/resources/mapper/repair/ScenePlusExtMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fdkankan.repair.mapper.IScenePlusExtMapper">
+
+</mapper>

+ 5 - 0
src/main/resources/mapper/repair/ScenePlusMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fdkankan.repair.mapper.IScenePlusMapper">
+
+</mapper>