Переглянути джерело

Merge remote-tracking branch 'origin/test'

lyhzzz 5 місяців тому
батько
коміт
56c3f2da0a
35 змінених файлів з 403 додано та 274 видалено
  1. 8 0
      README.md
  2. 16 2
      src/main/java/com/fdkankan/ucenter/common/BaseController.java
  3. 3 3
      src/main/java/com/fdkankan/ucenter/common/constants/ConstantFilePath.java
  4. 20 37
      src/main/java/com/fdkankan/ucenter/common/constants/ResultCode.java
  5. 48 0
      src/main/java/com/fdkankan/ucenter/common/constants/ResultCodeMsg.java
  6. 1 1
      src/main/java/com/fdkankan/ucenter/controller/DeviceSceneController.java
  7. 72 8
      src/main/java/com/fdkankan/ucenter/controller/SceneController.java
  8. 2 4
      src/main/java/com/fdkankan/ucenter/controller/fire/FdUserSceneController.java
  9. 28 0
      src/main/java/com/fdkankan/ucenter/exception/BusinessException.java
  10. 20 0
      src/main/java/com/fdkankan/ucenter/httpClient/address/FdkkAddressSource.java
  11. 21 0
      src/main/java/com/fdkankan/ucenter/httpClient/client/FdKKClient.java
  12. 21 0
      src/main/java/com/fdkankan/ucenter/httpClient/param/UploadEditSceneParam.java
  13. 7 20
      src/main/java/com/fdkankan/ucenter/httpClient/service/LaserService.java
  14. 8 0
      src/main/java/com/fdkankan/ucenter/mapper/IScenePlusMapper.java
  15. 1 10
      src/main/java/com/fdkankan/ucenter/pay/strategy/impl/DownloadOrderImpl.java
  16. 6 0
      src/main/java/com/fdkankan/ucenter/service/IScenePlusService.java
  17. 2 2
      src/main/java/com/fdkankan/ucenter/service/ISceneProService.java
  18. 2 1
      src/main/java/com/fdkankan/ucenter/service/impl/AppSceneService.java
  19. 0 5
      src/main/java/com/fdkankan/ucenter/service/impl/CameraServiceImpl.java
  20. 31 61
      src/main/java/com/fdkankan/ucenter/service/impl/DownService.java
  21. 0 6
      src/main/java/com/fdkankan/ucenter/service/impl/IncrementAutoOrderServiceImpl.java
  22. 2 10
      src/main/java/com/fdkankan/ucenter/service/impl/IncrementOrderServiceImpl.java
  23. 4 14
      src/main/java/com/fdkankan/ucenter/service/impl/InnerServiceImpl.java
  24. 2 3
      src/main/java/com/fdkankan/ucenter/service/impl/MailTemplateServiceImpl.java
  25. 2 8
      src/main/java/com/fdkankan/ucenter/service/impl/Scene3dNumServiceImpl.java
  26. 5 7
      src/main/java/com/fdkankan/ucenter/service/impl/SceneCommonService.java
  27. 21 15
      src/main/java/com/fdkankan/ucenter/service/impl/ScenePlusServiceImpl.java
  28. 20 46
      src/main/java/com/fdkankan/ucenter/service/impl/SceneProServiceImpl.java
  29. 0 4
      src/main/java/com/fdkankan/ucenter/service/impl/TakeLookService.java
  30. 0 3
      src/main/java/com/fdkankan/ucenter/service/impl/UcenterSystemServiceImpl.java
  31. 1 0
      src/main/java/com/fdkankan/ucenter/vo/request/SceneParam.java
  32. 2 1
      src/main/java/com/fdkankan/ucenter/vo/response/SceneNumVo.java
  33. 1 0
      src/main/java/com/fdkankan/ucenter/vo/response/SceneVo.java
  34. 23 0
      src/main/resources/mapper/ucenter/ScenePlusMapper.xml
  35. 3 3
      src/main/resources/mapper/ucenter/SceneProMapper.xml

+ 8 - 0
README.md

@@ -26,3 +26,11 @@
 ~~~~
 添加系统设置接口
 ~~~~
+
+###**1.10.8**
+~~~~
+添加上传e57场景接口
+    1.ucenter/user/scene/uploadE57  从日本同步
+    2.newList sceneSouce 为57,表示为e57mesh场景
+    3.findSceneNumber 接口添加key e57 e57_OBJ
+~~~~

+ 16 - 2
src/main/java/com/fdkankan/ucenter/common/BaseController.java

@@ -2,12 +2,13 @@ package com.fdkankan.ucenter.common;
 
 import cn.hutool.core.map.TolerantMap;
 import com.fdkankan.common.constant.ErrorCode;
-import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.DateEditor;
 import com.fdkankan.common.util.JwtUtil;
 import com.fdkankan.ucenter.common.constants.NacosProperty;
+import com.fdkankan.ucenter.common.constants.ResultCode;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.entity.User;
+import com.fdkankan.ucenter.exception.BusinessException;
 import com.fdkankan.ucenter.service.IUserService;
 import com.fdkankan.ucenter.util.DateUserUtil;
 import lombok.extern.slf4j.Slf4j;
@@ -97,7 +98,7 @@ public class BaseController {
     protected String getToken(){
         String token = request.getHeader("token");
         if(StringUtils.isEmpty(token)){
-            throw new BusinessException(ErrorCode.FAILURE_CODE_3004);
+            throw new BusinessException(ResultCode.USER_NOT_LOGIN);
         }
         return token;
     }
@@ -113,6 +114,19 @@ public class BaseController {
         }
         return user.getId();
     }
+    protected User getUser(){
+        String username = JwtUtil.getUsername(getToken());
+        if(org.apache.commons.lang3.StringUtils.isBlank(username)){
+            throw new BusinessException(ResultCode.USER_NOT_LOGIN);
+        }
+        User user = userService.getByUserName(username);
+        if(user == null){
+            throw new BusinessException(ResultCode.USER_NOT_LOGIN);
+        }
+        return user;
+    }
+
+
     protected String getLang(){
         return StringUtils.isEmpty(request.getHeader("lang")) ? "en":request.getHeader("lang");
     }

+ 3 - 3
src/main/java/com/fdkankan/ucenter/common/constants/ConstantFilePath.java

@@ -38,8 +38,8 @@ public class ConstantFilePath {
 
     public static final String PASSWORD_REGEX = "^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])[\\da-zA-Z`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]{8,16}$";
 
-    public static void main(String[] args) {
-        System.out.println("Aa123456".matches(ConstantRegex.PASSWORD_REGEX));
-    }
+
+    public static final String MANAGE_PATH = "/mnt/4Dkankan/ucenter/";
+
 
 }

+ 20 - 37
src/main/java/com/fdkankan/ucenter/common/constants/ResultCode.java

@@ -1,50 +1,33 @@
 package com.fdkankan.ucenter.common.constants;
 
-import com.fdkankan.common.constant.CameraConstant;
 
-public class ResultCode {
-    public static final int FAILURE_CODE_400001 = 400001;
-    public static final String FAILURE_MSG_400001 = "场景码池为空";
-    public static final int FAILURE_CODE_400002 = 400002;
-    public static final String FAILURE_MSG_400002 = "场景码不存在";
-    public static final int FAILURE_CODE_400003 = 400003;
-    public static final String FAILURE_MSG_400003 = "获取深时下载状态失败";
-    public static final int FAILURE_CODE_400004 = 400004;
-    public static final String FAILURE_MSG_400004 = "获取深时下载链接失败";
-    public static final int FAILURE_CODE_400005 = 400005;
-    public static final String FAILURE_MSG_400005 = "获取邮件模板错误";
-    public static final int FAILURE_CODE_400006  = 400006 ;
-    public static final String FAILURE_MSG_400006  = "复制失败,场景资源文件不对" ;
-    public static final int FAILURE_CODE_400007  = 400007 ;
-    public static final String FAILURE_MSG_400007  = "该会员正在订阅中" ;
+public enum ResultCode {
 
-    public static final int FAILURE_CODE_400008  = 400008 ;
-    public static final String FAILURE_MSG_400008  = "带看失败" ;
 
-    public static final int FAILURE_CODE_400009  = 400009 ;
-    public static final String FAILURE_MSG_400009  = "计算中场景无法带看" ;
+    UPLOAD_ERROR2(500001, "上传失败。文件格式不对"),
+    UPLOAD_ERROR(500002, "上传失败。"),
 
-    public static final int FAILURE_CODE_400010  = 400010 ;
-    public static final String FAILURE_MSG_400010  = "场景用户为空" ;
+    USER_NOT_LOGIN(3004, "用户未登录"),
 
-    public static final int FAILURE_CODE_400011  = 400011 ;
-    public static final String FAILURE_MSG_400011  = "场景不存在e57文件" ;
 
-    public static final int FAILURE_CODE_400012  = 400012 ;
-    public static final String FAILURE_MSG_400012  = "用户权限不足" ;
+    ;
+    private Integer code;
+    private String message;
 
-    public static final int FAILURE_CODE_400013  = 400013 ;
-    public static final String FAILURE_MSG_400013  = "原始数据已冻结" ;
+   private ResultCode(Integer code, String message) {
+        this.code = code;
+        this.message = message;
+    }
 
-    public static final int FAILURE_CODE_400014  = 400014 ;
-    public static final String FAILURE_MSG_400014  = "原始数据不存在" ;
+    public Integer code() {
+        return this.code;
+    }
 
-    public static final int FAILURE_CODE_400015  = 400015 ;
-    public static final String FAILURE_MSG_400015 = "场景计算中" ;
+    public String message() {
+        return this.message;
+    }
 
-    public static final int FAILURE_CODE_400016  = 400016 ;
-    public static final String FAILURE_MSG_400016 = "生成失败" ;
-
-    public static final int FAILURE_CODE_400017  = 400017 ;
-    public static final String FAILURE_MSG_400017 = "相机不存在" ;
+    public String formatMessage(Object... args) {
+        return String.format(this.message, args);
+    }
 }

+ 48 - 0
src/main/java/com/fdkankan/ucenter/common/constants/ResultCodeMsg.java

@@ -0,0 +1,48 @@
+package com.fdkankan.ucenter.common.constants;
+
+public class ResultCodeMsg {
+    public static final int FAILURE_CODE_400001 = 400001;
+    public static final String FAILURE_MSG_400001 = "场景码池为空";
+    public static final int FAILURE_CODE_400002 = 400002;
+    public static final String FAILURE_MSG_400002 = "场景码不存在";
+    public static final int FAILURE_CODE_400003 = 400003;
+    public static final String FAILURE_MSG_400003 = "获取深时下载状态失败";
+    public static final int FAILURE_CODE_400004 = 400004;
+    public static final String FAILURE_MSG_400004 = "获取深时下载链接失败";
+    public static final int FAILURE_CODE_400005 = 400005;
+    public static final String FAILURE_MSG_400005 = "获取邮件模板错误";
+    public static final int FAILURE_CODE_400006  = 400006 ;
+    public static final String FAILURE_MSG_400006  = "复制失败,场景资源文件不对" ;
+    public static final int FAILURE_CODE_400007  = 400007 ;
+    public static final String FAILURE_MSG_400007  = "该会员正在订阅中" ;
+
+    public static final int FAILURE_CODE_400008  = 400008 ;
+    public static final String FAILURE_MSG_400008  = "带看失败" ;
+
+    public static final int FAILURE_CODE_400009  = 400009 ;
+    public static final String FAILURE_MSG_400009  = "计算中场景无法带看" ;
+
+    public static final int FAILURE_CODE_400010  = 400010 ;
+    public static final String FAILURE_MSG_400010  = "场景用户为空" ;
+
+    public static final int FAILURE_CODE_400011  = 400011 ;
+    public static final String FAILURE_MSG_400011  = "场景不存在e57文件" ;
+
+    public static final int FAILURE_CODE_400012  = 400012 ;
+    public static final String FAILURE_MSG_400012  = "用户权限不足" ;
+
+    public static final int FAILURE_CODE_400013  = 400013 ;
+    public static final String FAILURE_MSG_400013  = "原始数据已冻结" ;
+
+    public static final int FAILURE_CODE_400014  = 400014 ;
+    public static final String FAILURE_MSG_400014  = "原始数据不存在" ;
+
+    public static final int FAILURE_CODE_400015  = 400015 ;
+    public static final String FAILURE_MSG_400015 = "场景计算中" ;
+
+    public static final int FAILURE_CODE_400016  = 400016 ;
+    public static final String FAILURE_MSG_400016 = "生成失败" ;
+
+    public static final int FAILURE_CODE_400017  = 400017 ;
+    public static final String FAILURE_MSG_400017 = "相机不存在" ;
+}

+ 1 - 1
src/main/java/com/fdkankan/ucenter/controller/DeviceSceneController.java

@@ -55,7 +55,7 @@ public class DeviceSceneController extends BaseController {
     @RequestMapping(value = "/delete", method = RequestMethod.POST)
     public Result deleteScene(@RequestBody AppSceneParam param) throws Exception {
         param.setCameraType(null);
-        sceneProService.delete(param.getSceneNum(),getUserId());
+        sceneProService.delete(param.getSceneNum(),getUserId(),null);
         return Result.success();
     }
 

+ 72 - 8
src/main/java/com/fdkankan/ucenter/controller/SceneController.java

@@ -1,28 +1,35 @@
 package com.fdkankan.ucenter.controller;
 
 
+import cn.hutool.core.io.FileUtil;
 import com.alibaba.fastjson.JSONObject;
-import com.dtflys.forest.annotation.Get;
-import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.JwtUtil;
+import com.fdkankan.fyun.face.FYunFileServiceInterface;
 import com.fdkankan.ucenter.common.BaseController;
 import com.fdkankan.ucenter.common.DownloadStatusEnum;
 import com.fdkankan.ucenter.common.Result;
+import com.fdkankan.ucenter.common.constants.ConstantFilePath;
 import com.fdkankan.ucenter.common.constants.ResultCode;
-import com.fdkankan.ucenter.constant.LoginConstant;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.entity.ScenePlus;
 import com.fdkankan.ucenter.entity.User;
+import com.fdkankan.ucenter.exception.BusinessException;
+import com.fdkankan.ucenter.httpClient.client.FdKKClient;
 import com.fdkankan.ucenter.httpClient.param.FdRoomVo;
+import com.fdkankan.ucenter.httpClient.param.UploadEditSceneParam;
 import com.fdkankan.ucenter.service.*;
 import com.fdkankan.ucenter.service.impl.TakeLookService;
 import com.fdkankan.ucenter.vo.request.RequestScene;
 import com.fdkankan.ucenter.vo.request.SceneParam;
 import com.fdkankan.ucenter.vo.response.DownloadProcessVo;
-import org.apache.commons.lang3.StringUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.codec.language.Nysiis;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
-import java.util.List;
+import java.io.File;
+import java.util.UUID;
 
 /**
  * <p>
@@ -34,6 +41,7 @@ import java.util.List;
  */
 @RestController
 @RequestMapping("/ucenter/user/scene")
+@Slf4j
 public class SceneController extends BaseController {
 
     @Autowired
@@ -109,7 +117,7 @@ public class SceneController extends BaseController {
     }
     @PostMapping("/delete")
     public Result delete(@RequestBody SceneParam param) throws Exception {
-        sceneProService.delete(param.getSceneNum(),getUserId());
+        sceneProService.delete(param.getSceneNum(),getUserId(),param.getPlatform());
         return Result.success();
     }
 
@@ -223,10 +231,10 @@ public class SceneController extends BaseController {
     public Result getTakeLookRoomId(@RequestParam(value = "num") String num){
         ScenePlus scenePlus = scenePlusService.getByNum(num);
         if(scenePlus  == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400002,ResultCode.FAILURE_MSG_400002);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400002, ResultCodeMsg.FAILURE_MSG_400002);
         }
         if(scenePlus.getSceneStatus() != -2){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400009,ResultCode.FAILURE_MSG_400009);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400009, ResultCodeMsg.FAILURE_MSG_400009);
         }
         FdRoomVo fdRoomVo = takeLookService.getRoomIdByNum(num, scenePlus.getTitle(), getToken());
         takeLookService.openRoom(fdRoomVo.getRoomId(),getToken());
@@ -238,5 +246,61 @@ public class SceneController extends BaseController {
         sceneProService.removePortrait(num);
         return Result.success();
     }
+
+    @Autowired
+    FYunFileServiceInterface fYunFileServiceInterface;
+    @Autowired
+    FdKKClient fdKKClient;
+    @PostMapping("/uploadE57")
+    public Result uploadE57(@RequestParam("file") MultipartFile file,
+                            @RequestParam(value = "isObj",required = false)Integer isObj,
+                            @RequestParam(value = "title",required = false)String title) {
+        String originalFilename = file.getOriginalFilename();
+        String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));
+        if(!suffix.equals(".e57")){
+            throw new BusinessException(ResultCode.UPLOAD_ERROR2);
+        }
+        File targetFile = null;
+        try {
+            String newFileName = UUID.randomUUID().toString().replace("-","");
+            String filePath = ConstantFilePath.MANAGE_PATH + "e57" + File.separator + newFileName +suffix;
+            targetFile = new File(filePath);
+            if(!targetFile.getParentFile().exists()){
+                targetFile.getParentFile().mkdirs();
+            }
+            file.transferTo(targetFile);
+
+            fYunFileServiceInterface.uploadFile(filePath,filePath.replace(ConstantFilePath.MANAGE_PATH,"ucenter/"));
+
+
+            UploadEditSceneParam editSceneParam = new UploadEditSceneParam();
+            editSceneParam.setTitle(title);
+            editSceneParam.setUserId(getUser().getId());
+            editSceneParam.setPath(filePath.replace(ConstantFilePath.MANAGE_PATH,"ucenter/"));
+            editSceneParam.setIsObj(isObj);
+            editSceneParam.setOtherType("E57_V4");
+
+            JSONObject jsonObject = fdKKClient.reverseScene(editSceneParam);
+            Integer code = jsonObject.getInteger("code");
+            if(code != 0){
+                log.info("调用失败-toFdCreateScene:{}",jsonObject);
+                throw new BusinessException(ResultCode.UPLOAD_ERROR);
+            }
+        }catch (Exception e){
+            log.info("调用失败-toFdCreateScene:",e);
+            throw new BusinessException(ResultCode.UPLOAD_ERROR);
+        }finally {
+            if(targetFile != null){
+                try {
+                    FileUtil.del(targetFile);
+                }catch (Exception e){
+                    log.info("删除文件失败:{}",targetFile.getPath());
+                }
+            }
+        }
+
+
+        return Result.success();
+    }
 }
 

+ 2 - 4
src/main/java/com/fdkankan/ucenter/controller/fire/FdUserSceneController.java

@@ -6,19 +6,17 @@ import com.fdkankan.common.util.JwtUtil;
 import com.fdkankan.ucenter.common.BaseController;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.common.ResultData;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.entity.ScenePlus;
 import com.fdkankan.ucenter.entity.ScenePro;
 import com.fdkankan.ucenter.entity.User;
 import com.fdkankan.ucenter.service.IScenePlusService;
 import com.fdkankan.ucenter.service.ISceneProService;
-import com.fdkankan.ucenter.service.ISceneService;
 import com.fdkankan.ucenter.service.IUserService;
 import com.fdkankan.ucenter.service.impl.LoginService;
 import com.fdkankan.ucenter.vo.ResponseScene;
 import lombok.extern.log4j.Log4j2;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
@@ -77,7 +75,7 @@ public class FdUserSceneController extends BaseController {
             }
         }
         if(userId == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400010,ResultCode.FAILURE_MSG_400010);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400010, ResultCodeMsg.FAILURE_MSG_400010);
         }
         User user = userService.getById(userId);
         if(user == null){

+ 28 - 0
src/main/java/com/fdkankan/ucenter/exception/BusinessException.java

@@ -0,0 +1,28 @@
+package com.fdkankan.ucenter.exception;
+
+import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
+import lombok.Data;
+
+/**
+ * 自定义业务异常类
+ */
+@Data
+public class BusinessException extends RuntimeException {
+    private int code;
+    private String message;
+
+    public BusinessException(Integer code, String msg){
+        this.code = code;
+        this.message = msg;
+    }
+    public BusinessException(String msg){
+        this.code = -1;
+        this.message = msg;
+    }
+
+    public BusinessException(ResultCode errorCode) {
+        this.code = errorCode.code();
+        this.message = errorCode.message();
+    }
+}

+ 20 - 0
src/main/java/com/fdkankan/ucenter/httpClient/address/FdkkAddressSource.java

@@ -0,0 +1,20 @@
+package com.fdkankan.ucenter.httpClient.address;
+
+import com.dtflys.forest.callback.AddressSource;
+import com.dtflys.forest.http.ForestAddress;
+import com.dtflys.forest.http.ForestRequest;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+@Component
+public class FdkkAddressSource implements AddressSource {
+
+    @Value("${4dkk.v4fdService.basePath}")
+    private String basePath;
+
+
+    @Override
+    public ForestAddress getAddress(ForestRequest forestRequest) {
+        return new ForestAddress("","",null,basePath);
+    }
+}

+ 21 - 0
src/main/java/com/fdkankan/ucenter/httpClient/client/FdKKClient.java

@@ -0,0 +1,21 @@
+package com.fdkankan.ucenter.httpClient.client;
+
+import com.alibaba.fastjson.JSONObject;
+import com.dtflys.forest.annotation.*;
+import com.fdkankan.ucenter.httpClient.address.FdkkAddressSource;
+import com.fdkankan.ucenter.httpClient.param.UploadEditSceneParam;
+
+import java.util.HashMap;
+
+/**
+ * 获取,调用4dkk服务
+ */
+@Address(source = FdkkAddressSource.class)
+public interface FdKKClient {
+
+
+
+
+    @Post("/api/scene/file/reverseScene")
+    JSONObject reverseScene( @JSONBody UploadEditSceneParam param);
+}

+ 21 - 0
src/main/java/com/fdkankan/ucenter/httpClient/param/UploadEditSceneParam.java

@@ -0,0 +1,21 @@
+package com.fdkankan.ucenter.httpClient.param;
+
+import lombok.Data;
+
+@Data
+public class UploadEditSceneParam {
+    /**
+     * {
+     *     "title":"测试AZ-1","userId":968,"otherType":"AZ","path":"reverseScene/original_auto3d-light-local-oZE6pxg53dYmDb02.zip"
+     * }
+     */
+
+    private String title;
+    private Long userId;
+    private String otherType;
+    private String path;
+    private String bucket;
+    private String fyunType;
+    private Integer sourceId;
+    private Integer isObj;
+}

+ 7 - 20
src/main/java/com/fdkankan/ucenter/httpClient/service/LaserService.java

@@ -1,20 +1,13 @@
 package com.fdkankan.ucenter.httpClient.service;
 
-import cn.hutool.core.io.FileUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.alibaba.nacos.common.http.client.NacosAsyncRestTemplate;
-import com.fdkankan.common.constant.PayStatus;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
 import com.fdkankan.rabbitmq.util.RabbitMqProducer;
-import com.fdkankan.ucenter.common.CameraTypeEnum;
 import com.fdkankan.ucenter.common.Result;
-import com.fdkankan.ucenter.common.constants.NacosProperty;
-import com.fdkankan.ucenter.common.constants.ResultCode;
-import com.fdkankan.ucenter.common.utils.ShellUtil;
-import com.fdkankan.ucenter.constant.LoginConstant;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.entity.Camera;
 import com.fdkankan.ucenter.entity.CameraDetail;
 import com.fdkankan.ucenter.entity.CameraType;
@@ -32,18 +25,12 @@ import com.fdkankan.ucenter.vo.SceneBySnCodeVo;
 import com.fdkankan.ucenter.vo.response.SceneNumVo;
 import com.google.common.collect.Lists;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
 import java.io.File;
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -388,13 +375,13 @@ public class LaserService {
                 return null;
             }
             if(responseEntity.getCode() == 407){
-                throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
             }
             vo = JSONObject.parseObject(JSONObject.toJSONString(responseEntity.getData()), SSDownSceneVo.class);
             return vo;
 
         }catch (BusinessException e){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
         }catch (Exception e){
             log.error("downE57Status-根据场景码获取激光转台下载状态失败!",e);
         }
@@ -412,12 +399,12 @@ public class LaserService {
                 return null;
             }
             if(responseEntity.getCode() == 407){
-                throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
             }
             vo = JSONObject.parseObject(JSONObject.toJSONString(responseEntity.getData()), SSDownSceneVo.class);
             return vo ;
         }catch (BusinessException e){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
         }catch (Exception e){
             log.error("downE57-根据场景码获取激光转台下载状态失败!",e);
         }
@@ -432,12 +419,12 @@ public class LaserService {
                 return null;
             }
             if(responseEntity.getCode() == 407){
-                throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
             }
             vo = JSONObject.parseObject(JSONObject.toJSONString(responseEntity.getData()), SceneStatusInfoDTO.class);
             return vo ;
         }catch (BusinessException e){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
         }catch (Exception e){
             log.error("LaserSceneInfo-根据场景码获取激光转台下载状态失败!",e);
         }

+ 8 - 0
src/main/java/com/fdkankan/ucenter/mapper/IScenePlusMapper.java

@@ -5,9 +5,12 @@ import com.fdkankan.ucenter.entity.ScenePlus;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.fdkankan.ucenter.vo.request.AppSceneParam;
 import com.fdkankan.ucenter.vo.response.AppSceneVo;
+import com.fdkankan.ucenter.vo.response.SceneNumVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  * 场景主表 Mapper 接口
@@ -24,4 +27,9 @@ public interface IScenePlusMapper extends BaseMapper<ScenePlus> {
     Long getCountByUserId(@Param("userId") Long userId, @Param("cameraType") Integer cameraType);
 
     Long getSpaceSumByCameraId(@Param("cameraId") Long cameraId);
+
+    List<SceneNumVo> getGroupBySceneSouceV4(@Param("userId")Long userId);
+    List<SceneNumVo> getGroupBySceneSouceV3(@Param("userId")Long userId);
+
+    List<ScenePlus> getCountByUserIdAndSceneSource(@Param("userId")Long userId,@Param("sceneSourceList") List<Integer> sceneSourceList, @Param("isObj")Integer isObj);
 }

+ 1 - 10
src/main/java/com/fdkankan/ucenter/pay/strategy/impl/DownloadOrderImpl.java

@@ -40,16 +40,7 @@ public class DownloadOrderImpl implements OrderStrategy {
         //更新用户下载次数
         LambdaUpdateWrapper<User> wrapper = new LambdaUpdateWrapper<>();
         wrapper.eq(User::getId,downloadOrder.getUserId());
-        if(StringUtils.isNotBlank(downloadOrder.getSceneNum())){
-            CameraType cameraType = cameraTypeService.getByNum(downloadOrder.getSceneNum());
-            if(!"aws".equals(NacosProperty.uploadType) && cameraType!= null && cameraType.getIsLaser() == 1){    //深时场景
-                wrapper.setSql("ss_download_num_total = ss_download_num_total + " + downloadOrder.getCount());
-            }else {
-                wrapper.setSql("download_num_total = download_num_total + " + downloadOrder.getCount());
-            }
-        }else {
-            wrapper.setSql("download_num_total = download_num_total + " + downloadOrder.getCount());
-        }
+        wrapper.setSql("download_num_total = download_num_total + " + downloadOrder.getCount());
         userService.update(wrapper);
     }
 

+ 6 - 0
src/main/java/com/fdkankan/ucenter/service/IScenePlusService.java

@@ -8,6 +8,7 @@ import com.fdkankan.ucenter.entity.ScenePlus;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.fdkankan.ucenter.vo.ResponseScene;
 import com.fdkankan.ucenter.vo.request.RequestScene;
+import com.fdkankan.ucenter.vo.response.SceneNumVo;
 import org.springframework.web.bind.annotation.RequestParam;
 
 import java.io.IOException;
@@ -53,4 +54,9 @@ public interface IScenePlusService extends IService<ScenePlus> {
 
 
     Long getSpaceSumByCameraId(Long cameraId);
+
+    List<SceneNumVo> getGroupBySceneSouceV4(Long userId);
+    List<SceneNumVo> getGroupBySceneSouceV3(Long userId);
+
+    List<ScenePlus> getCountByUserIdAndSceneSource(Long userId, List<Integer> sceneSourceList, Integer isObj);
 }

+ 2 - 2
src/main/java/com/fdkankan/ucenter/service/ISceneProService.java

@@ -61,11 +61,11 @@ public interface ISceneProService extends IService<ScenePro> {
     Long copyV3Scene(ScenePro scenePro, String newNum, CameraDetail cameraDetail, CameraType cameraType) throws Exception;
 
 
-    void delete(String sceneNum,Long userId);
+    void delete(String sceneNum,Long userId,String platform);
 
     ScenePro getByUnicode(String unicode);
 
-    void deleteByList(List<ScenePro> proList, List<ScenePlus> plusList,Long userId);
+    void deleteByList(List<ScenePro> proList, List<ScenePlus> plusList,Long userId,String platform);
 
     SceneInfoVo getInfo(String num);
 

+ 2 - 1
src/main/java/com/fdkankan/ucenter/service/impl/AppSceneService.java

@@ -19,6 +19,7 @@ import com.fdkankan.ucenter.service.*;
 import com.fdkankan.ucenter.vo.request.AppSceneParam;
 import com.fdkankan.ucenter.vo.response.AppSceneVo;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.codec.language.Nysiis;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -319,7 +320,7 @@ public class AppSceneService {
             plusList.add(scenePlus);
             sceneSource = scenePlus.getSceneSource();
         }
-        sceneProService.deleteByList(proList,plusList,userId);
+        sceneProService.deleteByList(proList,plusList,userId, null);
 
         if(sceneSource != null && (sceneSource == 4 || sceneSource == 5)){
             laserService.delete(sceneNum);

+ 0 - 5
src/main/java/com/fdkankan/ucenter/service/impl/CameraServiceImpl.java

@@ -1,19 +1,15 @@
 package com.fdkankan.ucenter.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fdkankan.common.constant.AppConstant;
 import com.fdkankan.common.exception.BusinessException;
-import com.fdkankan.ucenter.common.CameraTypeEnum;
 import com.fdkankan.ucenter.common.PageInfo;
 import com.fdkankan.common.util.DateUtil;
 import com.fdkankan.common.util.FileSizeUtil;
 import com.fdkankan.ucenter.common.constants.NacosProperty;
-import com.fdkankan.ucenter.common.constants.ResultCode;
 import com.fdkankan.ucenter.constant.CameraConstant;
 import com.fdkankan.ucenter.constant.LoginConstant;
-import com.fdkankan.ucenter.constant.OrderConstant;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.httpClient.service.LaserService;
 import com.fdkankan.ucenter.mapper.ICameraMapper;
@@ -33,7 +29,6 @@ import org.springframework.stereotype.Service;
 
 import java.util.*;
 import java.util.stream.Collectors;
-import java.util.stream.Stream;
 
 /**
  * <p>

+ 31 - 61
src/main/java/com/fdkankan/ucenter/service/impl/DownService.java

@@ -2,16 +2,14 @@ package com.fdkankan.ucenter.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.fdkankan.common.constant.ErrorCode;
 import com.fdkankan.common.constant.SceneConstant;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
 import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.ucenter.common.DownloadStatusEnum;
-import com.fdkankan.ucenter.common.constants.NacosProperty;
 import com.fdkankan.ucenter.common.RedisKeyUtil;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.constant.CameraConstant;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.entity.*;
@@ -23,7 +21,6 @@ import com.fdkankan.ucenter.vo.response.DownVo;
 import com.fdkankan.ucenter.vo.response.DownloadProcessVo;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
-import org.apache.ibatis.annotations.Case;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -67,12 +64,9 @@ public class DownService implements IDownService {
         if(scenePro == null && plus == null){
             throw new BusinessException(SceneConstant.FAILURE_CODE_5005, SceneConstant.FAILURE_MSG_5005);
         }
-        Long cameraId = scenePro !=null ? scenePro.getCameraId() : plus.getCameraId();
-        CameraType cameraType = cameraTypeService.getByCameraId(cameraId);
         isObj = isObj == null ?0 :isObj;
-
-        log.info("checkDownLoad--cameraType:{},isObj:{}",cameraType,isObj);
-        if(cameraType != null && cameraType.getIsLaser() == 1 && isObj !=1){ //深时场景
+        log.info("checkDownLoad--,isObj:{}",isObj);
+        if(isObj !=1){ //深时场景
             return SSCheckDownload(sceneNum);
         }
         SceneDownloadLog sceneDownloadLog;
@@ -145,10 +139,8 @@ public class DownService implements IDownService {
         if(scenePro == null && plus == null){
             throw new BusinessException(SceneConstant.FAILURE_CODE_5005, SceneConstant.FAILURE_MSG_5005);
         }
-        Long cameraId = scenePro !=null ? scenePro.getCameraId() : plus.getCameraId();
-        CameraType cameraType = cameraTypeService.getByCameraId(cameraId);
-        isObj = isObj == null ?0 :isObj;
 
+        isObj = isObj == null ?0 :isObj;
         DownVo downVo = new DownVo();
         User user = userService.getByUserName(userName);
         if(user == null){
@@ -157,21 +149,14 @@ public class DownService implements IDownService {
         }
         Integer downLoadTotal = 0;
         Integer downLoadNum = 0;
-        if(!"aws".equals(NacosProperty.uploadType) && cameraType != null && cameraType.getIsLaser() == 1){
-            downLoadTotal = user.getSsDownloadNumTotal();
-            downLoadNum = user.getSsDownloadNum();
-
-        }else {
-            downLoadTotal = user.getDownloadNumTotal();
-            downLoadNum = user.getDownloadNum();
-        }
+        downLoadTotal = user.getDownloadNumTotal();
+        downLoadNum = user.getDownloadNum();
         if(downLoadTotal <= downLoadNum ){
             downVo.setDownloadStatus(-1);
             return downVo;
         }
-
-        log.info("down--cameraType:{},isObj:{}",cameraType,isObj);
-        if(cameraType != null && cameraType.getIsLaser() == 1 && isObj !=1){ //深时场景
+        log.info("down-:isObj:{}",isObj);
+        if(isObj !=1){ //深时场景
             return SSDownload(sceneNum,user);
         }
 
@@ -197,11 +182,7 @@ public class DownService implements IDownService {
         //修改用户的下载次数
         LambdaUpdateWrapper<User> wrapper = new LambdaUpdateWrapper<>();
         wrapper.eq(User::getId,user.getId());
-        if(!"aws".equals(NacosProperty.uploadType) && cameraType != null && cameraType.getIsLaser() == 1 ){    //深时场景
-            wrapper.setSql("ss_download_num = ss_download_num + " + 1);
-        }else {
-            wrapper.setSql("download_num = download_num + " + 1);
-        }
+        wrapper.setSql("download_num = download_num + " + 1);
         userService.update(wrapper);
         SceneDownloadLog sceneDownloadLogEntity = new SceneDownloadLog();
         sceneDownloadLogEntity.setUserId(user.getId());
@@ -225,13 +206,10 @@ public class DownService implements IDownService {
         if(scenePro == null && plus == null){
             throw new BusinessException(SceneConstant.FAILURE_CODE_5005, SceneConstant.FAILURE_MSG_5005);
         }
-        Long cameraId = scenePro !=null ? scenePro.getCameraId() : plus.getCameraId();
-        CameraType cameraType = cameraTypeService.getByCameraId(cameraId);
-
-        isObj = isObj == null ?0 :isObj;
 
-        log.info("downloadProcess--cameraType:{},isObj:{}",cameraType,isObj);
-        if(cameraType != null && cameraType.getIsLaser() == 1 && isObj !=1){ //深时场景
+        isObj = isObj == null ? 0 :isObj;
+        log.info("downloadProcess--,isObj:{}",isObj);
+        if( isObj !=1){ //深时场景
             return SSDownloadProcess(sceneNum);
         }
         String redisKey = RedisKey.PREFIX_DOWNLOAD_PROGRESS;
@@ -263,11 +241,7 @@ public class DownService implements IDownService {
                     sceneDownloadLog.setStatus(-1);
                     LambdaUpdateWrapper<User> wrapper = new LambdaUpdateWrapper<>();
                     wrapper.eq(User::getId,userId);
-                    if(!"aws".equals(NacosProperty.uploadType) && cameraType != null && cameraType.getIsLaser() == 1 ){    //深时场景
-                        wrapper.setSql("ss_download_num = ss_download_num - " + 1);
-                    }else {
-                        wrapper.setSql("download_num = download_num - " + 1);
-                    }
+                    wrapper.setSql("download_num = download_num - " + 1);
                     userService.update(wrapper);
                     break;
             }
@@ -285,7 +259,7 @@ public class DownService implements IDownService {
         DownVo downVo = new DownVo();
         SSDownSceneVo vo = laserService.downOfflineSceneStatus(sceneNum);
         if(vo == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         downVo.setDownloadStatus(0);
         if(vo.getStatus() == 1){
@@ -309,15 +283,11 @@ public class DownService implements IDownService {
         //status :0:正在生成 1,初次生成  2,已经生成直接下载 3,重新生成
         SSDownSceneVo vo = laserService.downOfflineScene(sceneNum);
         if(vo == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         LambdaUpdateWrapper<User> wrapper = new LambdaUpdateWrapper<>();
         wrapper.eq(User::getId,user.getId());
-        if(!"aws".equals(NacosProperty.uploadType) ){    //深时场景
-            wrapper.setSql("ss_download_num = ss_download_num + " + 1);
-        }else {
-            wrapper.setSql("download_num = download_num + " + 1);
-        }
+        wrapper.setSql("download_num = download_num + " + 1);
         userService.update(wrapper);
 
         SceneDownloadLog sceneDownloadLogEntity = new SceneDownloadLog();
@@ -337,7 +307,7 @@ public class DownService implements IDownService {
         DownloadProcessVo downVo = new DownloadProcessVo();
         SSDownSceneVo vo = laserService.downOfflineSceneStatus(sceneNum);
         if(vo == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         downVo.setStatus(1003);
 
@@ -380,7 +350,7 @@ public class DownService implements IDownService {
         DownVo downVo = new DownVo();
         SSDownSceneVo vo = laserService.downE57Status(num);
         if(vo == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         downVo.setDownloadStatus(0);
         if(vo.getStatus() == 1){
@@ -394,7 +364,7 @@ public class DownService implements IDownService {
             downVo.setDownloadStatus(1);
         }
         if(vo.getStatus() == -1){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400016,ResultCode.FAILURE_MSG_400016);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400016, ResultCodeMsg.FAILURE_MSG_400016);
         }
         return downVo;
     }
@@ -406,39 +376,39 @@ public class DownService implements IDownService {
         }
         ScenePlus scenePlus = scenePlusService.getByNum(num);
         if(scenePlus == null ){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400002,ResultCode.FAILURE_MSG_400002);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400002, ResultCodeMsg.FAILURE_MSG_400002);
         }
         if(scenePlus.getSceneSource() != 4 && scenePlus.getSceneSource() != 5){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400011,ResultCode.FAILURE_MSG_400011);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400011, ResultCodeMsg.FAILURE_MSG_400011);
         }
         if(scenePlus.getUserId()!= null && !scenePlus.getUserId().equals(user.getId())){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400012,ResultCode.FAILURE_MSG_400012);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400012, ResultCodeMsg.FAILURE_MSG_400012);
         }
         if(scenePlus.getCameraId() == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400010,ResultCode.FAILURE_MSG_400010);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400010, ResultCodeMsg.FAILURE_MSG_400010);
         }
         CameraDetail cameraDetail = cameraDetailService.getByCameraId(scenePlus.getCameraId());
         if(cameraDetail == null){
             throw new BusinessException(CameraConstant.FAILURE_CODE_6029,CameraConstant.FAILURE_MSG_6029);
         }
         if(!cameraDetail.getUserId().equals(user.getId())){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400012,ResultCode.FAILURE_MSG_400012);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400012, ResultCodeMsg.FAILURE_MSG_400012);
         }
         SceneColdStorage sceneColdStorage = sceneColdStorageService.getByNum(num);
         if(sceneColdStorage != null && sceneColdStorage.getState() == 1){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400013,ResultCode.FAILURE_MSG_400013);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400013, ResultCodeMsg.FAILURE_MSG_400013);
         }
         ScenePlusExt scenePlusExt = scenePlusExtService.getByPlusId(scenePlus.getId());
         String dataSource = scenePlusExt.getDataSource();
         if(!fYunFileServiceInterface.fileExist(dataSource.replace("/mnt/data","home")+"/data.fdage")){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400014,ResultCode.FAILURE_MSG_400014);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400014, ResultCodeMsg.FAILURE_MSG_400014);
         }
         SceneStatusInfoDTO dto = laserService.laserSceneInfo(num);
         if(dto == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         if(dto.getStatus()!=2 ){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400015,ResultCode.FAILURE_MSG_400015);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400015, ResultCodeMsg.FAILURE_MSG_400015);
 
         }
 
@@ -451,7 +421,7 @@ public class DownService implements IDownService {
         //status :0:正在生成 1,初次生成  2,已经生成直接下载 3,重新生成
         SSDownSceneVo vo = laserService.downE57(num);
         if(vo == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         downVo.setDownloadStatus(1);
         return downVo;
@@ -466,10 +436,10 @@ public class DownService implements IDownService {
         DownloadProcessVo downVo = new DownloadProcessVo();
         SSDownSceneVo vo = laserService.downE57Status(num);
         if(vo == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400003,ResultCode.FAILURE_MSG_400003);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400003, ResultCodeMsg.FAILURE_MSG_400003);
         }
         if(vo.getStatus() ==-1){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400016,ResultCode.FAILURE_MSG_400016);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400016, ResultCodeMsg.FAILURE_MSG_400016);
         }
         downVo.setStatus(1003);
         if(vo.getStatus() == 0 || vo.getStatus() == 2 || vo.getStatus() == 3){    //下载中

+ 0 - 6
src/main/java/com/fdkankan/ucenter/service/impl/IncrementAutoOrderServiceImpl.java

@@ -1,17 +1,11 @@
 package com.fdkankan.ucenter.service.impl;
-import java.util.Date;
 import java.util.List;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.fdkankan.common.constant.ErrorCode;
-import com.fdkankan.common.exception.BusinessException;
-import com.fdkankan.ucenter.common.constants.ResultCode;
 import com.fdkankan.ucenter.entity.IncrementAutoOrder;
-import com.fdkankan.ucenter.entity.IncrementOrder;
 import com.fdkankan.ucenter.entity.User;
 import com.fdkankan.ucenter.entity.UserIncrement;
-import com.fdkankan.ucenter.httpClient.vo.PayOrderVo;
 import com.fdkankan.ucenter.mapper.IIncrementAutoOrderMapper;
 import com.fdkankan.ucenter.pay.paypal.sdk.AutoPaypalVo;
 import com.fdkankan.ucenter.pay.strategy.impl.IncrementOrderImpl;

+ 2 - 10
src/main/java/com/fdkankan/ucenter/service/impl/IncrementOrderServiceImpl.java

@@ -1,7 +1,5 @@
 package com.fdkankan.ucenter.service.impl;
 
-import cn.hutool.core.bean.BeanUtil;
-import com.amazonaws.services.simpleworkflow.flow.annotations.NoWait;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -10,13 +8,11 @@ import com.fdkankan.common.constant.ErrorCode;
 import com.fdkankan.common.constant.SceneConstant;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.ucenter.common.PageInfo;
-import com.fdkankan.common.util.NumberUtils;
 import com.fdkankan.ucenter.common.SkuEnum;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.constant.OrderConstant;
 import com.fdkankan.ucenter.entity.*;
-import com.fdkankan.ucenter.httpClient.client.PayClient;
 import com.fdkankan.ucenter.httpClient.param.PayAutoPayVo;
 import com.fdkankan.ucenter.httpClient.param.PayGoods;
 import com.fdkankan.ucenter.httpClient.service.PayService;
@@ -32,11 +28,9 @@ import com.fdkankan.ucenter.vo.request.OrderParam;
 import com.fdkankan.ucenter.vo.response.GoodsSkuVo;
 import com.fdkankan.ucenter.vo.response.IncrementOrderVo;
 import org.apache.commons.lang3.StringUtils;
-import org.aspectj.weaver.patterns.HasMemberTypePattern;
 import org.joda.time.DateTime;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
@@ -44,8 +38,6 @@ import java.math.RoundingMode;
 import java.util.*;
 import java.util.stream.Collectors;
 
-import static com.fdkankan.ucenter.util.DateUserUtil.getDateTime;
-
 /**
  * <p>
  * 增值权益订单表 服务实现类
@@ -179,7 +171,7 @@ public class IncrementOrderServiceImpl extends ServiceImpl<IIncrementOrderMapper
         if(param.getIncrementId() != null){
             IncrementAutoOrder autoOrder2 =  incrementAutoOrderService.getByIncrementId(param.getIncrementId());
             if(autoOrder2 != null){
-                throw new BusinessException(ResultCode.FAILURE_CODE_400007,ResultCode.FAILURE_MSG_400007);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400007, ResultCodeMsg.FAILURE_MSG_400007);
             }
         }
 

+ 4 - 14
src/main/java/com/fdkankan/ucenter/service/impl/InnerServiceImpl.java

@@ -1,25 +1,17 @@
 package com.fdkankan.ucenter.service.impl;
 
-import cn.hutool.core.util.HexUtil;
-import cn.hutool.core.util.StrUtil;
-import cn.hutool.crypto.SecureUtil;
-import cn.hutool.crypto.SmUtil;
-import cn.hutool.crypto.asymmetric.KeyType;
-import cn.hutool.crypto.asymmetric.SM2;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fdkankan.common.constant.ErrorCode;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.JwtUtil;
-import com.fdkankan.common.util.SecurityUtil;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
 import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.common.constants.ConstantFilePath;
-import com.fdkankan.ucenter.common.constants.ResultCode;
-import com.fdkankan.ucenter.constant.LoginConstant;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.service.*;
 import com.fdkankan.ucenter.vo.RelicsSceneInitQueueDTO;
@@ -36,8 +28,6 @@ import java.io.File;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
-import java.security.KeyPair;
-import java.security.PrivateKey;
 import java.util.Date;
 import java.util.Objects;
 import java.util.stream.Collectors;
@@ -221,7 +211,7 @@ public class InnerServiceImpl implements IInnerService {
                 return vo;
             }
         }
-        throw new BusinessException(ResultCode.FAILURE_CODE_400002,ResultCode.FAILURE_MSG_400002);
+        throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400002, ResultCodeMsg.FAILURE_MSG_400002);
     }
 
 
@@ -277,11 +267,11 @@ public class InnerServiceImpl implements IInnerService {
     public Object getSceneBySnCode(SceneParam param) {
         Camera camera = cameraService.getBySnCode(param.getSnCode());
         if(camera == null ){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400017,ResultCode.FAILURE_MSG_400017);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400017, ResultCodeMsg.FAILURE_MSG_400017);
         }
         CameraDetail cameraDetail = cameraDetailService.getByCameraId(camera.getId());
         if(cameraDetail == null ){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400017,ResultCode.FAILURE_MSG_400017);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400017, ResultCodeMsg.FAILURE_MSG_400017);
         }
         LambdaQueryWrapper<ScenePlus> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(ScenePlus::getCameraId,camera.getId());

+ 2 - 3
src/main/java/com/fdkankan/ucenter/service/impl/MailTemplateServiceImpl.java

@@ -2,9 +2,8 @@ package com.fdkankan.ucenter.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fdkankan.common.exception.BusinessException;
-import com.fdkankan.common.util.SecurityUtil;
 import com.fdkankan.ucenter.common.constants.NacosProperty;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.mapper.IMailTemplateMapper;
 import com.fdkankan.ucenter.mq.vo.LaserSendMail;
@@ -38,7 +37,7 @@ public class MailTemplateServiceImpl extends ServiceImpl<IMailTemplateMapper, Ma
     @Override
     public Boolean sendMail(String email , MailTemplate mailTemplate, String file) {
         if(mailTemplate == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400005,ResultCode.FAILURE_MSG_400005);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400005, ResultCodeMsg.FAILURE_MSG_400005);
         }
         return SendMailUtils.sendMail(mailTemplate.getSendMail(), mailTemplate.getSendPassword(), mailTemplate.getSendHost(),
                 email, mailTemplate.getSubject(), mailTemplate.getMsg(), file);

+ 2 - 8
src/main/java/com/fdkankan/ucenter/service/impl/Scene3dNumServiceImpl.java

@@ -1,11 +1,9 @@
 package com.fdkankan.ucenter.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fdkankan.common.exception.BusinessException;
-import com.fdkankan.common.util.RandomUtil;
 import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.ucenter.common.RedisKeyUtil;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.entity.CameraType;
 import com.fdkankan.ucenter.entity.Scene3dNum;
 import com.fdkankan.ucenter.mapper.IScene3dNumMapper;
@@ -15,12 +13,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
 import org.springframework.util.StringUtils;
 
-import java.util.*;
-import java.util.stream.Collectors;
-
 /**
  * <p>
  * 场景编码表 服务实现类
@@ -42,7 +36,7 @@ public class Scene3dNumServiceImpl extends ServiceImpl<IScene3dNumMapper, Scene3
     public String generateSceneNum(Integer cameraType) {
         String sceneNum = redisUtil.lLeftPop(RedisKeyUtil.SCENE_UNUSED_NUMS);
         if(StringUtils.isEmpty(sceneNum)){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400001,ResultCode.FAILURE_MSG_400001);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400001, ResultCodeMsg.FAILURE_MSG_400001);
         }
         if(cameraType != null){
             CameraType cameraTypeEntity = cameraTypeService.getByCameraType(cameraType);

+ 5 - 7
src/main/java/com/fdkankan/ucenter/service/impl/SceneCommonService.java

@@ -10,8 +10,7 @@ import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.common.util.SnowflakeIdGenerator;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
-import com.fdkankan.ucenter.common.RedisKeyUtil;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.service.*;
 import com.fdkankan.ucenter.util.SceneResourcePath;
@@ -26,7 +25,6 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
-import java.util.function.ObjDoubleConsumer;
 
 @Service
 @Slf4j
@@ -55,10 +53,10 @@ public class SceneCommonService {
 
         String newDataSource = null;
         if(StringUtils.isBlank(oldDataSource)){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400006,ResultCode.FAILURE_MSG_400006);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400006, ResultCodeMsg.FAILURE_MSG_400006);
         }
         if(!oldDataSource.contains("/")){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400006,ResultCode.FAILURE_MSG_400006);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400006, ResultCodeMsg.FAILURE_MSG_400006);
         }
 
         String time = com.fdkankan.common.util.DateUtil.date2String(new Date(), com.fdkankan.common.util.DateUtil.YYYYMMDDHHMMSSSSS_DATA_FORMAT);
@@ -70,13 +68,13 @@ public class SceneCommonService {
 
             String snCodeTime = split[5];
             if(!snCodeTime.contains("_") || snCodeTime.split("_").length <= 1){
-                throw new BusinessException(ResultCode.FAILURE_CODE_400006,ResultCode.FAILURE_MSG_400006);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400006, ResultCodeMsg.FAILURE_MSG_400006);
             }
             newDataSource = newDataSource.replace(snCodeTime.split("_")[1],time);
             //this.copyFdage(oldDataSource,newDataSource,time);
         }
         if(newDataSource == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400006,ResultCode.FAILURE_MSG_400006);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400006, ResultCodeMsg.FAILURE_MSG_400006);
         }
         return newDataSource;
     }

+ 21 - 15
src/main/java/com/fdkankan/ucenter/service/impl/ScenePlusServiceImpl.java

@@ -1,10 +1,8 @@
 package com.fdkankan.ucenter.service.impl;
 
-import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.thread.ThreadUtil;
 import cn.hutool.core.util.StrUtil;
-import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -13,21 +11,15 @@ import com.fdkankan.common.constant.CommonStatus;
 import com.fdkankan.common.constant.ErrorCode;
 import com.fdkankan.common.constant.SceneVersionType;
 import com.fdkankan.common.exception.BusinessException;
-import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
-import com.fdkankan.image.MatrixToImageWriterUtil;
 import com.fdkankan.model.utils.CreateObjUtil;
-import com.fdkankan.ucenter.common.OssPath;
 import com.fdkankan.ucenter.common.PageInfo;
 import com.fdkankan.ucenter.common.RedisKeyUtil;
 import com.fdkankan.ucenter.common.Result;
 import com.fdkankan.ucenter.common.constants.ConstantFilePath;
-import com.fdkankan.ucenter.common.constants.NacosProperty;
-import com.fdkankan.ucenter.common.constants.ResultCode;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.common.constants.UploadFilePath;
-import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.redis.util.RedisUtil;
-import com.fdkankan.ucenter.bean.SceneJsonBean;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.httpClient.service.LaserService;
 import com.fdkankan.ucenter.mapper.IScenePlusMapper;
@@ -42,17 +34,14 @@ import java.util.stream.Collectors;
 
 import com.fdkankan.ucenter.util.RoamingPointUtil;
 import com.fdkankan.ucenter.util.SceneResourcePath;
-import com.fdkankan.ucenter.vo.ResponseScene;
-import com.fdkankan.ucenter.vo.SceneEditControlsVO;
 import com.fdkankan.ucenter.vo.request.RequestScene;
+import com.fdkankan.ucenter.vo.response.SceneNumVo;
 import com.fdkankan.ucenter.vo.response.SceneVo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
-
 /**
  * <p>
  * 场景主表 服务实现类
@@ -182,7 +171,7 @@ public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlu
 
         ScenePlusExt plusExt = scenePlusExtService.getByPlusId(plusId);
         if(plusExt == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400002,ResultCode.FAILURE_MSG_400002);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400002, ResultCodeMsg.FAILURE_MSG_400002);
         }
         scenePlus.setNum(newNum);
         scenePlus.setTitle(scenePlus.getTitle() +"(copy)");
@@ -302,7 +291,7 @@ public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlu
                 log.error("复制场景失败-V4-sceneNum:{},error:{}",oldNum,e);
                 scenePlus.setSceneStatus(-1);
                 this.updateById(scenePlus);
-                throw new BusinessException(ResultCode.FAILURE_CODE_400006,ResultCode.FAILURE_MSG_400006);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400006, ResultCodeMsg.FAILURE_MSG_400006);
             }
         }, executor).whenComplete((reslut, e) -> {
             log.info("copy-success-");
@@ -424,4 +413,21 @@ public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlu
     public Long getSpaceSumByCameraId(Long cameraId) {
         return this.getBaseMapper().getSpaceSumByCameraId(cameraId);
     }
+
+    @Override
+    public List<SceneNumVo> getGroupBySceneSouceV4(Long userId) {
+        return this.getBaseMapper().getGroupBySceneSouceV4(userId);
+
+    }
+
+    @Override
+    public List<SceneNumVo> getGroupBySceneSouceV3(Long userId) {
+        return this.getBaseMapper().getGroupBySceneSouceV3(userId);
+
+    }
+
+    @Override
+    public List<ScenePlus> getCountByUserIdAndSceneSource(Long userId, List<Integer> sceneSourceList, Integer isObj) {
+        return this.getBaseMapper().getCountByUserIdAndSceneSource(userId,sceneSourceList,isObj);
+    }
 }

+ 20 - 46
src/main/java/com/fdkankan/ucenter/service/impl/SceneProServiceImpl.java

@@ -1,6 +1,5 @@
 package com.fdkankan.ucenter.service.impl;
 
-import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.thread.ThreadUtil;
@@ -15,25 +14,18 @@ import com.fdkankan.common.constant.SceneKind;
 import com.fdkankan.common.constant.SceneVersionType;
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.common.util.*;
-import com.fdkankan.model.constants.UploadFilePath;
 import com.fdkankan.rabbitmq.bean.BuildSceneCallMessage;
 import com.fdkankan.rabbitmq.util.RabbitMqProducer;
 import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.ucenter.common.OssPath;
 import com.fdkankan.ucenter.common.PageInfo;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
-import com.fdkankan.image.MatrixToImageWriterUtil;
-import com.fdkankan.ucenter.common.RedisKeyUtil;
-import com.fdkankan.ucenter.common.constants.ConstantFilePath;
 import com.fdkankan.redis.util.RedisUtil;
-import com.fdkankan.ucenter.common.constants.NacosProperty;
-import com.fdkankan.ucenter.common.constants.ResultCode;
-import com.fdkankan.ucenter.common.utils.ShellUtil;
+import com.fdkankan.ucenter.common.constants.ResultCodeMsg;
 import com.fdkankan.ucenter.constant.CameraConstant;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.entity.*;
 import com.fdkankan.ucenter.httpClient.service.LaserService;
-import com.fdkankan.ucenter.httpClient.service.PayService;
 import com.fdkankan.ucenter.mapper.ISceneProMapper;
 import com.fdkankan.ucenter.mapper.ISceneUpgradeMapper;
 import com.fdkankan.ucenter.service.*;
@@ -45,14 +37,11 @@ import com.fdkankan.ucenter.vo.request.SceneParam;
 import com.fdkankan.ucenter.vo.response.*;
 
 import java.io.File;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
 import java.util.*;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutorService;
-import java.util.concurrent.locks.Condition;
 import java.util.stream.Collectors;
-import javax.annotation.Resource;
+
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.joda.time.DateTime;
@@ -152,6 +141,9 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
 
         SceneNumVo sceneNumVoSG = fdkkLaserService.getLaserSceneNumByUser(token,5);
         SceneNumVo sceneNumVoSGObj = getSceneNumVoByObjType(Arrays.asList(5), user.getId());
+
+        SceneNumVo sceneNumVoE57 = fdkkLaserService.getLaserSceneNumByUser(token,57);
+        SceneNumVo sceneNumVoE57Obj = getSceneNumVoByObjType(Arrays.asList(57), user.getId());
         HashMap<String, SceneNumVo> hashMap = new HashMap<>();
         hashMap.put("kk",sceneNumVoKk);
         hashMap.put("kJ",sceneNumVoKj);
@@ -159,9 +151,12 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         hashMap.put("SS_OBJ",sceneNumVoSSObj);
         hashMap.put("SG",sceneNumVoSG);
         hashMap.put("SG_OBJ",sceneNumVoSGObj);
+        hashMap.put("e57",sceneNumVoE57);
+        hashMap.put("e57_OBJ",sceneNumVoE57Obj);
         return hashMap;
     }
 
+
     private SceneNumVo getSceneNumVoByType(List<Integer> sceneSourceList, Long userId){
         SceneNumVo sceneNumVo = new SceneNumVo();
         LambdaQueryWrapper<ScenePro> queryWrapper = new LambdaQueryWrapper<>();
@@ -184,32 +179,11 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         queryWrapper.eq(ScenePro::getIsUpgrade, 0);
         queryWrapper.eq(ScenePro::getIsObj,1);
         Integer sceneNum = Math.toIntExact(this.count(queryWrapper));
+        List<ScenePlus> scenePlusList = scenePlusService.getCountByUserIdAndSceneSource(userId,sceneSourceList,1);
 
-        LambdaQueryWrapper<ScenePlusExt> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(ScenePlusExt::getIsObj,1);
-        List<ScenePlusExt> list = scenePlusExtService.list(wrapper);
-        List<Long> plusIds = list.stream().map(ScenePlusExt::getPlusId).collect(Collectors.toList());
-        long plusCount = 0L;
-        long cooperNum = 0L;
-        if(plusIds.size() >0){
-            LambdaQueryWrapper<ScenePlus> plusWr = new LambdaQueryWrapper<>();
-            plusWr.in(ScenePlus::getId,plusIds);
-            plusWr.in(ScenePlus::getSceneSource,sceneSourceList);
-            List<ScenePlus> plusList = scenePlusService.list(plusWr);
-            if(plusList.size() >0){
-                List<ScenePlus> userList = plusList.stream().filter(entity -> userId.equals(entity.getUserId())).collect(Collectors.toList());
-                plusCount = userList.size();
-
-                List<String> numList = plusList.stream().map(ScenePlus::getNum).collect(Collectors.toList());
-                HashMap<String, User> cooNumList = sceneCooperationService.getByNumList(numList);
-                for (String num : cooNumList.keySet()) {
-                    if(userId.equals(cooNumList.get(num).getId())){
-                        cooperNum ++;
-                    }
-                }
-            }
+        long plusCount = scenePlusList.size();
+        Long cooperNum = sceneCooperationService.getCooperationSceneNum(userId, sceneSourceList);
 
-        }
         sceneNumVo.setCooperationSceneNum(cooperNum);
         sceneNumVo.setSceneNum(sceneNum + plusCount);
         sceneNumVo.setTotalNum(sceneNumVo.getSceneNum() + sceneNumVo.getCooperationSceneNum());
@@ -481,7 +455,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             plusWr.in(ScenePlus::getId,sceneIds);
             List<ScenePlus> plusList = scenePlusService.list(plusWr);
 
-            this.deleteByList(proList,plusList,userId);
+            this.deleteByList(proList,plusList,userId,null);
         }
 
     }
@@ -572,7 +546,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
                     if (vo.getStatus().equals(500)) {      //500状态为数据库中手动修改值,当场景本身异常,算法,算不了
                         vo.setStatus(-1);
                     }
-                    if (vo.getStatus().equals(-1)) {       //计算失败,钉钉通知之后,判定是否重算,还是修改为 500
+                    if (vo.getSceneSource() != null && vo.getSceneSource() != 57 && vo.getStatus().equals(-1)) {       //计算失败,钉钉通知之后,判定是否重算,还是修改为 500
                         vo.setStatus(0);
                     }
                 }).collect(Collectors.toList());
@@ -855,7 +829,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
                 log.error("复制场景失败-sceneNum:{},error:{}",oldNum,e);
                 scenePro.setStatus(-1);
                 this.updateById(scenePro);
-                throw new BusinessException(ResultCode.FAILURE_CODE_400006,ResultCode.FAILURE_MSG_400006);
+                throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400006, ResultCodeMsg.FAILURE_MSG_400006);
             }
         }, executor).whenComplete((reslut, e) -> {
             log.info("copy-success-");
@@ -882,7 +856,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
 
 
     @Override
-    public void delete(String sceneNum,Long userId) {
+    public void delete(String sceneNum,Long userId,String platform) {
         if(StringUtils.isEmpty(sceneNum)){
             throw  new BusinessException(LoginConstant.FAILURE_CODE_3001,LoginConstant.FAILURE_MSG_3001);
         }
@@ -890,17 +864,17 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         List<String> numList = Arrays.asList(nums);
         List<ScenePro> proList = this.getListByNums(numList);
         List<ScenePlus> plusList = scenePlusService.getListByNums(numList);
-        this.deleteByList(proList,plusList,userId);
+        this.deleteByList(proList,plusList,userId,platform);
     }
 
     @Override
-    public void deleteByList(List<ScenePro> proList,List<ScenePlus> plusList,Long userId) {
+    public void deleteByList(List<ScenePro> proList,List<ScenePlus> plusList,Long userId,String platform) {
         HashMap<Long ,Long >cameraMap = new HashMap<>();
         if(proList.size() >0){
             for (ScenePro scenePro : proList) {
                 cameraMap.merge(scenePro.getCameraId(), scenePro.getSpace(), Long::sum);
                 sceneDelLogService.saveLog(scenePro.getNum(),userId);
-                if(scenePro.getSceneSource() == 4 || scenePro.getSceneSource() == 5){
+                if(StringUtils.isBlank(platform)  && (scenePro.getSceneSource() == 4 || scenePro.getSceneSource() == 5 || scenePro.getSceneSource() == 57)){
                     laserService.delete(scenePro.getNum());
                 }
             }
@@ -919,7 +893,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
 
                 }
                 sceneDelLogService.saveLog(scenePlus.getNum(),userId);
-                if(scenePlus.getSceneSource() == 4 || scenePlus.getSceneSource() == 5){
+                if(StringUtils.isBlank(platform) && ( scenePlus.getSceneSource() == 4 || scenePlus.getSceneSource() == 5|| scenePlus.getSceneSource() == 57)){
                     laserService.delete(scenePlus.getNum());
                 }
             }
@@ -1343,7 +1317,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
     public void removePortrait(String num) {
         ScenePlus scenePlus = scenePlusService.getByNum(num);
         if(scenePlus == null){
-            throw new BusinessException(ResultCode.FAILURE_CODE_400002,ResultCode.FAILURE_MSG_400002);
+            throw new BusinessException(ResultCodeMsg.FAILURE_CODE_400002, ResultCodeMsg.FAILURE_MSG_400002);
         }
         HashMap<String,String> map = new HashMap<>();
         map.put("num",num);

+ 0 - 4
src/main/java/com/fdkankan/ucenter/service/impl/TakeLookService.java

@@ -2,17 +2,13 @@ package com.fdkankan.ucenter.service.impl;
 
 import com.fdkankan.common.exception.BusinessException;
 import com.fdkankan.ucenter.common.ResultData;
-import com.fdkankan.ucenter.common.constants.ResultCode;
 import com.fdkankan.ucenter.httpClient.client.TakeLookClient;
 import com.fdkankan.ucenter.httpClient.param.FdRoomAddParam;
 import com.fdkankan.ucenter.httpClient.param.FdRoomVo;
-import com.fdkankan.ucenter.util.DateUserUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Date;
 import java.util.List;
 
 @Service

+ 0 - 3
src/main/java/com/fdkankan/ucenter/service/impl/UcenterSystemServiceImpl.java

@@ -1,13 +1,10 @@
 package com.fdkankan.ucenter.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.fdkankan.common.exception.BusinessException;
-import com.fdkankan.ucenter.common.constants.ResultCode;
 import com.fdkankan.ucenter.entity.UcenterSystem;
 import com.fdkankan.ucenter.mapper.IUcenterSystemMapper;
 import com.fdkankan.ucenter.service.IUcenterSystemService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
 /**

+ 1 - 0
src/main/java/com/fdkankan/ucenter/vo/request/SceneParam.java

@@ -37,4 +37,5 @@ public class SceneParam extends RequestBase {
     private String searchKey;
     private Integer cameraId;
     private Integer location;
+    private String platform;
 }

+ 2 - 1
src/main/java/com/fdkankan/ucenter/vo/response/SceneNumVo.java

@@ -9,5 +9,6 @@ public class SceneNumVo implements Serializable {
     private Long cooperationSceneNum = 0L;    //协作场景数量
     private Long sceneNum = 0L;               //场景数量
     private Long totalNum = 0L;
-   // private Integer type;                   //场景类型 0看看,1看见,2深时
+    private Integer type;                   //场景类型 0看看,1看见,2深时
+    private Integer isObj;
 }

+ 1 - 0
src/main/java/com/fdkankan/ucenter/vo/response/SceneVo.java

@@ -53,6 +53,7 @@ public class SceneVo {
     private String roamingPointUrl;
     private String updateTime;
     private Integer removePortrait;
+    private Integer sceneSource;
 
     public String getCreateTime() {
         return DateUserUtil.getDayTime(createTime);

+ 23 - 0
src/main/resources/mapper/ucenter/ScenePlusMapper.xml

@@ -100,4 +100,27 @@
     <select id="getSpaceSumByCameraId" resultType="java.lang.Long">
         select  sum(space) from  t_scene_plus p left join t_scene_plus_ext e on p.id = e.plus_id where p.rec_status = 'A' and p.scene_status = -2 and p.camera_id = #{cameraId}
     </select>
+
+    <select id="getGroupBySceneSouceV4" resultType="com.fdkankan.ucenter.vo.response.SceneNumVo">
+        SELECT scene_source as type,count(1) as sceneNum,s.is_obj from t_scene_pro s
+        WHERE s.rec_status = 'A' and s.is_upgrade = 0
+        GROUP BY scene_source,is_obj
+    </select>
+
+    <select id="getGroupBySceneSouceV3" resultType="com.fdkankan.ucenter.vo.response.SceneNumVo">
+        SELECT scene_source as type,count(1) as sceneNum,e.is_obj from t_scene_plus s LEFT JOIN t_scene_plus_ext e on s.id = e.plus_id
+        WHERE s.rec_status = 'A' and s.user_id = #{userId}
+        GROUP BY scene_source,is_obj
+    </select>
+    <select id="getCountByUserIdAndSceneSource" resultType="com.fdkankan.ucenter.entity.ScenePlus">
+        select s.* from t_scene_plus s LEFT JOIN t_scene_plus_ext e on s.id = e.plus_id
+        WHERE s.rec_status = 'A' and s.user_id = #{userId}
+        and s.scene_source in
+        <foreach collection="sceneSourceList" item="sceneSource" open="(" separator="," close=")">
+            #{sceneSource}
+        </foreach>
+        <if test="isObj != null and isObj==1 ">
+            and e.is_obj = 1
+        </if>
+    </select>
 </mapper>

+ 3 - 3
src/main/resources/mapper/ucenter/SceneProMapper.xml

@@ -25,7 +25,7 @@
         <include refid="HasFolder"></include>
         SELECT * FROM (
         SELECT  p.id ,null as name ,0 as isFolder,null as type,null as parentId ,p.create_time,num,scene_name,scene_dec,
-        p.status,pay_status,thumb,web_site,0 as is_upgrade,sn_code,view_count,p.build_type, null as removePortrait
+        p.status,pay_status,thumb,web_site,0 as is_upgrade,sn_code,view_count,p.build_type, null as removePortrait,p.scene_source
         FROM t_scene_pro p
         <include refid="sceneJoinCamera"></include>
         WHERE is_upgrade = 0 and  p.rec_status = 'A'
@@ -40,7 +40,7 @@
         </if>
         UNION ALL
         SELECT  p.id as id ,null as name ,0 as isFolder,null as type,null as parentId,e.algorithm_time as createTime ,num,title as scene_name,description as scene_dec,
-        scene_status as status,pay_status,thumb,web_site,1 as is_upgrade,sn_code,view_count,e.build_type,p.remove_portrait as removePortrait
+        scene_status as status,pay_status,thumb,web_site,1 as is_upgrade,sn_code,view_count,e.build_type,p.remove_portrait as removePortrait,p.scene_source
         FROM t_scene_plus p
         LEFT JOIN t_scene_plus_ext e on p.id = e.plus_id
         <include refid="sceneJoinCamera"></include>
@@ -69,7 +69,7 @@
             SELECT id,name,1 as isFolder,type,parent_id as parentId,create_time,null as num,null as scene_name,null as
             scene_dec,
             null as status,null as pay_status,null as thumb,null as web_site,null as is_upgrade,null as sn_code,null as
-            view_count, null build_type,null as removePortrait
+            view_count, null build_type,null as removePortrait,null as scene_source
             FROM t_folder WHERE rec_status = 'A' and user_id =#{param.userId}
             <if test="param.folderType!=null and param.folderType == 0">
                 and (type = #{param.folderType} or type = 3)