|
@@ -253,15 +253,14 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
|
|
|
if(voList .size() <=0){
|
|
|
return;
|
|
|
}
|
|
|
+ //获取未被封存的场景容量
|
|
|
List<Long> spaceList = voList.stream().filter(entity -> entity.getPayStatus() == 1).map(SimpleSceneVo::getSpace).collect(Collectors.toList());
|
|
|
for (Long aLong : spaceList) {
|
|
|
usedSpace += aLong;
|
|
|
}
|
|
|
- cameraDetailService.updateSpaceByCameraId(cameraId,usedSpace);
|
|
|
//计算时间倒序
|
|
|
List<SimpleSceneVo> sceneVos = voList.stream().sorted(Comparator.comparing(SimpleSceneVo::getCreateTime).reversed()).collect(Collectors.toList());
|
|
|
|
|
|
- log.info("lockOrUnLockBySpace---cameraId:{},totalSpace:{},useSpace{}", cameraId,totalSpace,usedSpace);
|
|
|
if(totalSpace == -1){ // 无限容量 全部解封
|
|
|
List<Long> sceneIds = sceneVos.stream().filter(entity -> entity.getPayStatus() !=1).map(SimpleSceneVo::getId).collect(Collectors.toList());
|
|
|
lockOrUnLockScenes(sceneIds,1);
|
|
@@ -270,19 +269,17 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
|
|
|
List<Long> lockedIds = new ArrayList<>();
|
|
|
if(usedSpace > totalSpace){
|
|
|
sceneVos = sceneVos.stream().filter(entity -> entity.getPayStatus() ==1).collect(Collectors.toList());
|
|
|
- Long space = getSceneLockedIds(lockedIds,sceneVos,usedSpace - totalSpace);
|
|
|
+ Long space = getSceneLockedIds(lockedIds, sceneVos, usedSpace - totalSpace);
|
|
|
+ log.info("lockOrUnLockBySpace---cameraId:{},totalSpace:{},useSpace{},space:{},payStatus:{}", cameraId,totalSpace,usedSpace,space,-2);
|
|
|
lockOrUnLockScenes(lockedIds,-2);
|
|
|
- usedSpace -= space;
|
|
|
}
|
|
|
|
|
|
if(usedSpace < totalSpace){ //使用容量小于总容量,解封
|
|
|
sceneVos = sceneVos.stream().filter(entity -> entity.getPayStatus() !=1).collect(Collectors.toList());
|
|
|
Long space = getSceneUnLockedIds(lockedIds, sceneVos, totalSpace - usedSpace);
|
|
|
- usedSpace += space;
|
|
|
+ log.info("lockOrUnLockBySpace---cameraId:{},totalSpace:{},useSpace{},space:{},payStatus:{}", cameraId,totalSpace,usedSpace,space,1);
|
|
|
lockOrUnLockScenes(lockedIds,1);
|
|
|
}
|
|
|
-
|
|
|
- cameraDetailService.updateSpaceByCameraId(cameraId,usedSpace);
|
|
|
}
|
|
|
|
|
|
private Long getSceneUnLockedIds(List<Long> lockedIds ,List<SimpleSceneVo> list,Long beyondSpace){
|