lyhzzz 1 week ago
parent
commit
fd03e6033d

+ 15 - 9
src/main/java/com/fdkankan/manage/service/impl/SceneProServiceImpl.java

@@ -374,14 +374,21 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         if(cameraDetail == null){
             throw new BusinessException(ResultCode.CAMERA_SN_NOT_EXIST);
         }
+        HashSet<Long> cameraIds = new HashSet<>();
         if(StringUtils.isNotBlank(param.getNum())){
-           moveScene(param.getNum(),camera,cameraDetail);
-           return 1;
+            moveScene(param.getNum(),camera,cameraDetail,cameraIds);
+            for (Long cameraId : cameraIds) {
+                this.lockOrUnLockBySpace(cameraId);
+            }
+            return 1;
         }
         Integer successNum = param.getNumList().size();
         for (String num : param.getNumList()) {
             try {
-                moveScene(num,camera,cameraDetail);
+                moveScene(num,camera,cameraDetail,cameraIds);
+                for (Long cameraId : cameraIds) {
+                    this.lockOrUnLockBySpace(cameraId);
+                }
             }catch (Exception e){
                 successNum --;
                 log.info("move-scene-error:num:{},errorNum:{},error:{}",num,successNum,e.getMessage());
@@ -390,7 +397,7 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         return successNum;
     }
 
-    private void moveScene(String num,Camera camera,CameraDetail cameraDetail){
+    private void moveScene(String num,Camera camera,CameraDetail cameraDetail,  HashSet<Long> cameraIds){
         ScenePro scenePro = this.getByNum(num);
         ScenePlus scenePlus = scenePlusService.getByNum(num);
         if((scenePro == null || scenePro.getCameraId() == null ) && (scenePlus== null || scenePlus.getCameraId() == null)){
@@ -472,17 +479,16 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
         cameraDetailService.updateUseSpace(cameraDetail.getCameraId(),cameraDetail.getUnit().equals("SP")?+1L: +space);
 
         if(!"aws".equals(CacheUtil.uploadType) && oldCameraDetail.getType() != 11 && oldCameraDetail.getType() != 10 && subSpace >0){           //有剩余容量解封容量内场景
-            this.lockOrUnLockBySpace(oldCameraDetail.getCameraId());
+            cameraIds.add(oldCameraDetail.getCameraId());
         }
         if(!"aws".equals(CacheUtil.uploadType) && cameraDetail.getType() != 11 && cameraDetail.getType() != 10){           //有剩余容量解封容量内场景
-            this.lockOrUnLockBySpace(cameraDetail.getCameraId());
+            cameraIds.add(cameraDetail.getCameraId());
         }
-
         if("aws".equals(CacheUtil.uploadType) && subSpace >0){           //有剩余容量解封容量内场景
-            this.lockOrUnLockBySpace(oldCameraDetail.getCameraId());
+            cameraIds.add(oldCameraDetail.getCameraId());
         }
         if("aws".equals(CacheUtil.uploadType)){           //有剩余容量解封容量内场景
-            this.lockOrUnLockBySpace(cameraDetail.getCameraId());
+            cameraIds.add(cameraDetail.getCameraId());
         }
         sceneMoveLogService.saveLog(scenePro,scenePlus,camera.getSnCode(),oldCamera.getSnCode(),dataSource,dataSource, null);
         laserService.moveWenBao(num,oldCamera.getSnCode(),camera.getSnCode(),cameraDetail.getUserId(),dataSource);

+ 9 - 0
src/main/java/com/fdkankan/manage/task/TaskService.java

@@ -102,4 +102,13 @@ public class TaskService {
     }
 
 
+    @Scheduled(cron = "0 */10 * * * ?")
+    public void sendMqUcenterScenePayStatus() {
+        try {
+
+        }catch (Exception e){
+            log.info("定时任务checkAccount出错:",e);
+        }
+
+    }
 }