lyhzzz 4 هفته پیش
والد
کامیت
013dc7ed41

+ 2 - 0
README.md

@@ -79,5 +79,7 @@ fusion:
     9. fusion/fusionGuide 入参修改为fusionId ,add入参一致修改
     10.fusion/casePath 入参修改为fusionId  ,add入参一致修改
     11.fusion/caseAnimation 入参修改为fusionId ,add入参一致修改    
+    12.场景列表修改为 /service/manage/scene/list  {"pageNum":1,"pageSize":10,"isObj":"1"} 与管理后台一直
+    
 ~~~~
 

+ 45 - 5
src/main/java/com/fdkankan/fusion/controller/CaseController.java

@@ -5,21 +5,22 @@ import cn.hutool.core.bean.BeanUtil;
 import com.alibaba.fastjson.JSONObject;
 import com.fdkankan.fusion.aop.PushJm;
 import com.fdkankan.fusion.common.ResultCode;
-import com.fdkankan.fusion.entity.TmProject;
+import com.fdkankan.fusion.entity.*;
 import com.fdkankan.fusion.exception.BusinessException;
 import com.fdkankan.fusion.common.ResultData;
-import com.fdkankan.fusion.entity.CaseEntity;
 import com.fdkankan.fusion.request.CaseParam;
 import com.fdkankan.fusion.response.CaseVo;
-import com.fdkankan.fusion.service.ICaseNumService;
-import com.fdkankan.fusion.service.ICaseService;
-import com.fdkankan.fusion.service.ITmProjectService;
+import com.fdkankan.fusion.response.FusionAndSceneVo;
+import com.fdkankan.fusion.service.*;
 import com.fdkankan.fusion.service.impl.CopyCaseService;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 案件管理
@@ -34,6 +35,12 @@ public class CaseController extends BaseController{
     ITmProjectService tmProjectService;
     @Autowired
     CopyCaseService copyCaseService;
+    @Autowired
+    ICaseFusionService caseFusionService;
+    @Autowired
+    ICaseNumService caseNumService;
+    @Autowired
+    IScenePlusService scenePlusService;
 
     @PostMapping("/list")
     public ResultData list(@RequestBody CaseParam param ){
@@ -92,5 +99,38 @@ public class CaseController extends BaseController{
         copyCaseService.copyCase(param.getCaseId());
         return ResultData.ok();
     }
+
+
+
+    @GetMapping("/getFusionAndScene")
+    public ResultData getFusionAndScene(@RequestParam(required = false) Integer caseId){
+        List<FusionAndSceneVo> voList = new ArrayList<>();
+        List<CaseFusion> byCaseId = caseFusionService.getListByCaseId(caseId);
+        for (CaseFusion caseFusion : byCaseId) {
+            FusionAndSceneVo vo = new FusionAndSceneVo();
+            vo.setTitle(caseFusion.getFusionTitle());
+            vo.setFusionId(caseFusion.getFusionId());
+            vo.setType("fusion");
+            voList.add(vo);
+        }
+        List<CaseNumEntity> caseNums = caseNumService.getByCaseId(caseId);
+        List<String> numList = caseNums.stream().map(CaseNumEntity::getNum).collect(Collectors.toList());
+        List<ScenePlus> scenePlusList = scenePlusService.getByNumList(numList);
+        for (ScenePlus scenePlus : scenePlusList) {
+            FusionAndSceneVo vo = new FusionAndSceneVo();
+            vo.setTitle(scenePlus.getTitle());
+            vo.setNum(scenePlus.getNum());
+            vo.setType("scene");
+            voList.add(vo);
+        }
+        return ResultData.ok(voList);
+    }
+
+
+    @PostMapping("/addFusionIds")
+    public ResultData addFusionIds(@RequestBody CaseParam param){
+        caseService.addFusionIds(param);
+        return ResultData.ok();
+    }
 }
 

+ 5 - 0
src/main/java/com/fdkankan/fusion/controller/CaseFusionController.java

@@ -46,6 +46,11 @@ public class CaseFusionController extends BaseController{
         return ResultData.ok(fusionNumService.getListByCaseId(caseId,null));
     }
 
+    @GetMapping("/info")
+    public ResultData info(@RequestParam(required = false) Integer fusionId){
+        return ResultData.ok(caseFusionService.getInfo(fusionId));
+    }
+
     @PostMapping("/add")
     @PushJm(event_content = "添加模型")
     public ResultData add(@RequestBody FusionParam param){

+ 3 - 0
src/main/java/com/fdkankan/fusion/entity/CaseEntity.java

@@ -132,4 +132,7 @@ public class CaseEntity implements Serializable {
 
     @TableField("sys_user_id")
     private Long sysUserId;
+
+    @TableField("platform_id")
+    private Integer platformId;
 }

+ 10 - 0
src/main/java/com/fdkankan/fusion/entity/CaseFusion.java

@@ -43,6 +43,16 @@ public class CaseFusion implements Serializable {
     @TableField("case_id")
     private Integer caseId;
 
+    @TableField("platform_id")
+    private Integer platformId;
+
+    @TableField("sys_user_id")
+    private Integer sysUserId;
+
+    @TableField("lat_and_long")
+    private String latAndLong;
+
+
     @TableField("tb_status")
     @TableLogic
     private Integer tbStatus;

+ 3 - 0
src/main/java/com/fdkankan/fusion/request/CaseParam.java

@@ -5,6 +5,7 @@ import com.fdkankan.fusion.common.RequestBase;
 import lombok.Data;
 import scala.Int;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 
@@ -24,4 +25,6 @@ public class CaseParam extends RequestBase {
 
     private String sceneName;
     private List<Integer> typeList;
+
+    private List<Integer> fusionIds = new ArrayList<>();
 }

+ 10 - 0
src/main/java/com/fdkankan/fusion/response/CaseFusionVo.java

@@ -0,0 +1,10 @@
+package com.fdkankan.fusion.response;
+
+import com.fdkankan.fusion.entity.CaseFusion;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class CaseFusionVo extends CaseFusion {
+}

+ 11 - 0
src/main/java/com/fdkankan/fusion/response/FusionAndSceneVo.java

@@ -0,0 +1,11 @@
+package com.fdkankan.fusion.response;
+
+import lombok.Data;
+
+@Data
+public class FusionAndSceneVo {
+    private String title;
+    private String num;
+    private Integer fusionId;
+    private String type;  //scene 场景, fusion 多元融合
+}

+ 4 - 0
src/main/java/com/fdkankan/fusion/service/ICaseFusionService.java

@@ -16,4 +16,8 @@ import java.util.List;
 public interface ICaseFusionService extends IService<CaseFusion> {
 
     List<CaseFusion> getListByCaseId(Integer caseId);
+
+    void updateCaseId(List<Integer> fusionIds, Integer caseId);
+
+    Object getInfo(Integer fusionId);
 }

+ 1 - 0
src/main/java/com/fdkankan/fusion/service/ICaseService.java

@@ -41,4 +41,5 @@ public interface ICaseService extends IService<CaseEntity> {
 
     CaseVo getInfo(Integer caseId);
 
+    void addFusionIds(CaseParam param);
 }

+ 1 - 0
src/main/java/com/fdkankan/fusion/service/IScenePlusService.java

@@ -26,4 +26,5 @@ public interface IScenePlusService extends IService<ScenePlus> {
 
     List<ScenePlus> getByNumListAndAi(List<String> numList);
 
+    List<ScenePlus> getByNumList(List<String> numList);
 }

+ 24 - 0
src/main/java/com/fdkankan/fusion/service/impl/CaseFusionServiceImpl.java

@@ -1,8 +1,10 @@
 package com.fdkankan.fusion.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.fdkankan.fusion.entity.CaseFusion;
 import com.fdkankan.fusion.mapper.ICaseFusionMapper;
+import com.fdkankan.fusion.response.CaseFusionVo;
 import com.fdkankan.fusion.service.ICaseFusionService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
@@ -26,4 +28,26 @@ public class CaseFusionServiceImpl extends ServiceImpl<ICaseFusionMapper, CaseFu
         wrapper.eq(CaseFusion::getCaseId,caseId);
         return this.list(wrapper);
     }
+
+    @Override
+    public synchronized void updateCaseId(List<Integer> fusionIds, Integer caseId) {
+        LambdaUpdateWrapper<CaseFusion> wrapper = new LambdaUpdateWrapper<>();
+        wrapper.eq(CaseFusion::getCaseId,caseId);
+        wrapper.set(CaseFusion::getCaseId,null);
+        this.update(wrapper);
+
+        if(!fusionIds.isEmpty()){
+            LambdaUpdateWrapper<CaseFusion> wrapper2 = new LambdaUpdateWrapper<>();
+            wrapper2.in(CaseFusion::getFusionId,fusionIds);
+            wrapper2.set(CaseFusion::getCaseId,caseId);
+            this.update(wrapper2);
+        }
+
+    }
+
+    @Override
+    public CaseFusionVo getInfo(Integer fusionId) {
+
+        return null;
+    }
 }

+ 9 - 0
src/main/java/com/fdkankan/fusion/service/impl/CaseServiceImpl.java

@@ -59,6 +59,8 @@ public class CaseServiceImpl extends ServiceImpl<ICaseMapper, CaseEntity> implem
     ITmCameraService tmCameraService;
     @Autowired
     IMapConfigService mapConfigService;
+    @Autowired
+    ICaseFusionService caseFusionService;
 
     @Override
     public PageInfo pageList(CaseParam param) {
@@ -300,4 +302,11 @@ public class CaseServiceImpl extends ServiceImpl<ICaseMapper, CaseEntity> implem
         return caseVo;
     }
 
+    @Override
+    public  void addFusionIds(CaseParam param) {
+        if(param.getCaseId() == null || param.getFusionIds() == null ){
+            throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
+        }
+        caseFusionService.updateCaseId(param.getFusionIds(),param.getCaseId());
+    }
 }

+ 9 - 0
src/main/java/com/fdkankan/fusion/service/impl/ScenePlusServiceImpl.java

@@ -54,4 +54,13 @@ public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlu
         return this.list(wrapper);
     }
 
+    @Override
+    public List<ScenePlus> getByNumList(List<String> numList) {
+        if(numList == null || numList.isEmpty()){
+            return new ArrayList<>();
+        }
+        LambdaQueryWrapper<ScenePlus> wrapper = new LambdaQueryWrapper<>();
+        wrapper.in(ScenePlus::getNum,numList);
+        return this.list(wrapper);
+    }
 }