浏览代码

Merge branch 'lyh-pay-status-mq' into test

lyhzzz 2 年之前
父节点
当前提交
587b6bdcf7

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

@@ -48,4 +48,6 @@ public interface ICameraDetailService extends IService<CameraDetail> {
     List<CameraExcelVo> getListByUserAndTypeEx(Long cameraId);
 
     void updateSpaceByCameraId(Long cameraId, Long cameraDetailSpace);
+
+    Long getTotalSpaceByCameraId(Long cameraId);
 }

+ 15 - 0
src/main/java/com/fdkankan/ucenter/service/impl/CameraDetailServiceImpl.java

@@ -45,6 +45,10 @@ public class CameraDetailServiceImpl extends ServiceImpl<ICameraDetailMapper, Ca
     ISceneProService sceneProService;
     @Autowired
     IScenePlusService scenePlusService;
+    @Autowired
+    IUserIncrementService userIncrementService;
+    @Autowired
+    IIncrementTypeService incrementTypeService;
 
     @Override
     public CameraDetail getByCameraId(Long cameraId) {
@@ -222,4 +226,15 @@ public class CameraDetailServiceImpl extends ServiceImpl<ICameraDetailMapper, Ca
                 .set(CameraDetail::getUsedSpace,cameraDetailSpace);
         this.update(wrapper);
     }
+
+    @Override
+    public Long getTotalSpaceByCameraId(Long cameraId) {
+        UserIncrement userIncrement = userIncrementService.getByCameraId(cameraId);
+        if(userIncrement != null && userIncrement.getIsExpired() == 0){
+            Integer incrementTypeId = userIncrement.getIncrementTypeId();
+            IncrementType incrementType = incrementTypeService.getById(incrementTypeId);
+            return incrementType.getCameraCapacity() * 1024 *1024 *1024L;
+        }
+        return null;
+    }
 }

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

@@ -269,6 +269,15 @@ public class ScenePlusServiceImpl extends ServiceImpl<IScenePlusMapper, ScenePlu
                 this.updateById(scenePlus);
                 cameraDetailService.addUsedSpace(cameraDetail.getId(),plusExt.getSpace());
                 sceneCopyLogService.saveByNum(oldNum,newNum,scenePlus.getUserId());
+
+                Long totalSpace = cameraDetail.getTotalSpace();
+                Long totalSpace1 = cameraDetailService.getTotalSpaceByCameraId(cameraDetail.getCameraId());
+                if(totalSpace1 != null ){
+                    totalSpace = totalSpace1;
+                }
+                if(cameraDetail.getUsedSpace() + plusExt.getSpace()  > totalSpace ){
+                    sceneProService.lockOrUnLockScenes(Arrays.asList(scenePlus.getId()),-2);
+                }
             }catch (Exception e){
                 log.error("复制场景失败-V4-sceneNum:{},error:{}",oldNum,e);
                 scenePlus.setSceneStatus(-1);

+ 10 - 0
src/main/java/com/fdkankan/ucenter/service/impl/SceneProServiceImpl.java

@@ -797,9 +797,19 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
                 }
                 scenePro.setStatus(-2);
                 this.updateById(scenePro);
+
                 cameraDetailService.addUsedSpace(cameraDetail.getId(),scenePro.getSpace());
                 sceneCopyLogService.saveByNum(oldNum,newNum,scenePro.getUserId());
 
+                Long totalSpace = cameraDetail.getTotalSpace();
+                Long totalSpace1 = cameraDetailService.getTotalSpaceByCameraId(cameraDetail.getCameraId());
+                if(totalSpace1 != null ){
+                    totalSpace = totalSpace1;
+                }
+                if(cameraDetail.getUsedSpace() + scenePro.getSpace()  > totalSpace ){
+                    this.lockOrUnLockScenes(Arrays.asList(scenePro.getId()),-2);
+                }
+
             }catch ( Exception e){
                 log.error("复制场景失败-sceneNum:{},error:{}",oldNum,e);
                 scenePro.setStatus(-1);