lyhzzz 4 mesi fa
parent
commit
6f607b1d04

+ 3 - 0
src/main/java/com/fdkankan/manage_jp/common/ResultCode.java

@@ -58,6 +58,9 @@ public enum ResultCode  {
     UPLOAD_ERROR3(5035, "文件不存在!"),
 
     REPEAT_ERROR(5036, "重复提交!"),
+
+    SCENE_MOVE_ERROR(5037, "场景类型错误,不能迁移"),
+
     ;
 
     private Integer code;

+ 7 - 0
src/main/java/com/fdkankan/manage_jp/controller/SceneProController.java

@@ -161,6 +161,13 @@ public class SceneProController extends BaseController{
         return Result.success();
     }
 
+
+    @PostMapping("/moveUser")
+    public Result moveUser(@RequestBody SceneParam param){
+        sceneProService.moveUser(param);
+        return Result.success();
+    }
+
     @PostMapping("/updateMapShow")
     public Result updateMapShow(@RequestBody SceneParam param){
         sceneProService.updateMapShow(param);

+ 2 - 7
src/main/java/com/fdkankan/manage_jp/httpClient/service/LaserService.java

@@ -205,19 +205,14 @@ public class LaserService {
         return null;
     }
 
-    public void move(String num, String snCode, String toSnCode, Long userId, String newDataSource) {
+    public void move(String num, String snCode, String toSnCode, Long userId,String userName, String newDataSource) {
         LaserSceneMoveParam param = new LaserSceneMoveParam();
         param.setSceneCode(num);
         //param.setSnCode(snCode);
         param.setToSnCode(toSnCode);
         param.setUserId(userId);
         param.setDataSource(newDataSource+"_laserData/laserData");
-        if(userId != null){
-            User user = userService.getById(userId);
-            if(user != null){
-                param.setPhone(user.getUserName());
-            }
-        }
+        param.setPhone(userName);
         Map<String, Object> map = BeanUtil.beanToMap(param);
         rabbitMqProducer.sendByWorkQueue("laser-migrate-scene",map);
 

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

@@ -45,4 +45,6 @@ public interface ISceneProService extends IService<ScenePro> {
     void updateMapShow(SceneParam param);
 
     void openMapShow(List<String> sceneMapShowList);
+
+    void moveUser(SceneParam param);
 }

+ 37 - 1
src/main/java/com/fdkankan/manage_jp/service/impl/SceneProServiceImpl.java

@@ -508,13 +508,49 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             scenePlusService.updatePayStatus(num,scenePro == null ?"v4":"v3",scenePro == null?scenePlus.getSceneSource():scenePro.getSceneSource(),1,cameraDetail,user);
             scenePlusService.move(num,scenePro == null ?"v4":"v3",cameraDetail,user);
             if(sceneSource == 4 || sceneSource == 5){
-                laserService.move(num, oldCamera.getSnCode(), camera.getSnCode(), user.getId(), dataSource);
+                laserService.move(num, oldCamera.getSnCode(), camera.getSnCode(), user.getId(),user.getUserName(), dataSource);
             }
             sceneMoveLogService.saveLog(scenePro,scenePlus,camera.getSnCode(),oldCamera.getSnCode(),dataSource,dataSource, null);
         }
     }
 
     @Override
+    public void moveUser(SceneParam param) {
+        if(param.getNumList().isEmpty()  || StringUtils.isBlank(param.getUserName())){
+            throw new BusinessException(ResultCode.PARAM_ERROR);
+        }
+
+        for (String num : param.getNumList()) {
+            User user = userService.getByUserName(param.getUserName());
+            if(user == null || user.getCompanyId() == null){
+                throw new BusinessException(ResultCode.USER_NOT_EXIST);
+            }
+            ScenePlus scenePlus = scenePlusService.getByNum(num);
+            ScenePro scenePro = this.getByNum(num);
+            if(scenePlus == null && scenePro == null){
+                throw new BusinessException(ResultCode.SCENE_NOT_EXIT);
+            }
+            Long cameraId = scenePro == null ? scenePlus.getCameraId() : scenePro.getCameraId();
+            if(cameraId != null){
+                throw new BusinessException(ResultCode.SCENE_MOVE_ERROR);
+            }
+            Integer sceneSource = scenePro == null ? scenePlus.getSceneSource() : scenePro.getSceneSource();
+            if(sceneSource != 57){
+                throw new BusinessException(ResultCode.SCENE_MOVE_ERROR);
+            }
+
+            String dataSource = scenePro == null ? null :scenePro.getDataSource();
+            if(scenePlus !=null){
+                ScenePlusExt scenePlusExt = scenePlusExtService.getByPlusId(scenePlus.getId());
+                dataSource = scenePlusExt.getDataSource();
+            }
+            scenePlusService.move(num,scenePro == null ?"v4":"v3",null,user);
+            laserService.move(num, null, null, user.getId(),user.getUserName(), dataSource);
+            sceneMoveLogService.saveLog(scenePro,scenePlus,null,null,dataSource,dataSource, null);
+        }
+    }
+
+    @Override
     public void updateMapShow(SceneParam param) {
         if(StringUtils.isBlank(param.getNum()) || param.getMapShow() == null){
             throw new BusinessException(ResultCode.PARAM_ERROR);

+ 1 - 1
src/main/java/com/fdkankan/manage_jp/service/impl/TmColdStorageServiceImpl.java

@@ -212,7 +212,7 @@ public class TmColdStorageServiceImpl extends ServiceImpl<ITmColdStorageMapper,
             this.removeByIds(tmColdStorages);
             if(sceneSource == 4 || sceneSource == 5){
                 String dataSource = scenePro == null ? scenePlusExtService.getByPlusId(scenePlus.getId()).getDataSource() : scenePro.getDataSource();
-                laserService.move(num, oldCamera.getSnCode(), camera.getSnCode(), user.getId(), dataSource);
+                laserService.move(num, oldCamera.getSnCode(), camera.getSnCode(), user.getId(),user.getUserName(), dataSource);
 
             }
         }