From 6c5d7fa4635b06d30840c39f96bd381b65cb56e7 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 03 九月 2024 19:43:59 +0800 Subject: [PATCH] 数据中心优化 --- ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java | 315 ++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 269 insertions(+), 46 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java index 394332d..15788c4 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java @@ -2,28 +2,24 @@ import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; -import com.github.pagehelper.PageInfo; import com.ycl.platform.domain.entity.ImageResourceSecurityDetail; import com.ycl.platform.domain.query.DataCenterQuery; import com.ycl.platform.domain.result.HK.*; -import com.ycl.platform.domain.result.UY.MonitorQualifyResult; -import com.ycl.platform.domain.result.UY.OneMachineFileResult; -import com.ycl.platform.domain.result.UY.RecordMetaDSumResult; -import com.ycl.platform.domain.result.UY.VideoOnlineResult; +import com.ycl.platform.domain.result.UY.*; import com.ycl.platform.mapper.ImageResourceSecurityDetailMapper; -import com.ycl.platform.mapper.ImageResourceSecurityMapper; import com.ycl.platform.service.DataCenterService; import com.ycl.system.Result; -import com.ycl.system.page.TableDataInfo; import com.ycl.utils.MongoUtil; -import constant.HttpStatus; import lombok.RequiredArgsConstructor; +import org.apache.commons.collections.CollectionUtils; import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Service; +import java.util.Arrays; +import java.util.HashMap; import java.util.List; import java.util.Objects; @@ -38,7 +34,6 @@ public class DataCenterServiceImpl implements DataCenterService { private final MongoTemplate mongoTemplate; - private final ImageResourceSecurityMapper securityMapper; private final ImageResourceSecurityDetailMapper securityDetailMapper; private final static String TIME_FIELD = "mongoCreateTime"; @@ -64,7 +59,22 @@ long total = mongoTemplate.count(query, VideoOnlineResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<VideoOnlineResult> resultList = mongoTemplate.find(query, VideoOnlineResult.class); - return Result.ok().data(resultList).total(total); + + // 缁熻 + Criteria criteriaCount = new Criteria(); + // 鏅�氭煡璇� + if (Objects.nonNull(params.getStartTime()) && Objects.nonNull(params.getEndTime())) { + criteriaCount.andOperator( + Criteria.where(TIME_FIELD).gte(params.getStartTime()).lte(params.getEndTime()) + ); + } + Query countQuery = new Query(); + countQuery.addCriteria(criteriaCount); + long count = mongoTemplate.count(countQuery, VideoOnlineResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(count)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -89,7 +99,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -114,7 +133,11 @@ long total = mongoTemplate.count(query, MonitorQualifyResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<MonitorQualifyResult> resultList = mongoTemplate.find(query, MonitorQualifyResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -139,7 +162,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -164,7 +196,14 @@ long total = mongoTemplate.count(query, RecordMetaDSumResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<RecordMetaDSumResult> resultList = mongoTemplate.find(query, RecordMetaDSumResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("recordStatus").is("1")), RecordMetaDSumResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("recordStatus").is("2")), RecordMetaDSumResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("recordStatus").is("-1")), RecordMetaDSumResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -189,7 +228,14 @@ long total = mongoTemplate.count(query, RecordMetaDSumResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<RecordMetaDSumResult> resultList = mongoTemplate.find(query, RecordMetaDSumResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("recordStatus").is("1")), OneMachineFileResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("recordStatus").is("2")), OneMachineFileResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("recordStatus").is("-1")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -211,10 +257,19 @@ ); } query.addCriteria(criteria); - long total = mongoTemplate.count(query, OneMachineFileResult.class); + long total = mongoTemplate.count(query, RecordMetaDSumResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); - List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + List<RecordMetaDSumResult> resultList = mongoTemplate.find(query, RecordMetaDSumResult.class); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), RecordMetaDSumResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), RecordMetaDSumResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), RecordMetaDSumResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), RecordMetaDSumResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), RecordMetaDSumResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -236,10 +291,19 @@ ); } query.addCriteria(criteria); - long total = mongoTemplate.count(query, OneMachineFileResult.class); + long total = mongoTemplate.count(query, OsdCheckResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); - List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + List<OsdCheckResult> resultList = mongoTemplate.find(query, OsdCheckResult.class); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OsdCheckResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OsdCheckResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OsdCheckResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OsdCheckResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OsdCheckResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -264,7 +328,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -289,7 +362,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -314,7 +396,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -336,10 +427,19 @@ ); } query.addCriteria(criteria); - long total = mongoTemplate.count(query, OneMachineFileResult.class); + long total = mongoTemplate.count(query, VideoOnlineResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); - List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + List<VideoOnlineResult> resultList = mongoTemplate.find(query, VideoOnlineResult.class); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), VideoOnlineResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), VideoOnlineResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), VideoOnlineResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), VideoOnlineResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), VideoOnlineResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } @@ -367,7 +467,15 @@ long total = mongoTemplate.count(query, SnapshotDataMonitorResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<SnapshotDataMonitorResult> resultList = mongoTemplate.find(query, SnapshotDataMonitorResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("1")), SnapshotDataMonitorResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("2")), SnapshotDataMonitorResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("3")), SnapshotDataMonitorResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("4")), SnapshotDataMonitorResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -392,7 +500,15 @@ long total = mongoTemplate.count(query, SnapshotDataMonitorResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<SnapshotDataMonitorResult> resultList = mongoTemplate.find(query, SnapshotDataMonitorResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("1")), SnapshotDataMonitorResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("2")), SnapshotDataMonitorResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("3")), SnapshotDataMonitorResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("4")), SnapshotDataMonitorResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -417,7 +533,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -442,7 +567,15 @@ long total = mongoTemplate.count(query, CrossDetailResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<CrossDetailResult> resultList = mongoTemplate.find(query, CrossDetailResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("1")), CrossDetailResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("2")), CrossDetailResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("3")), CrossDetailResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("4")), CrossDetailResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -467,7 +600,11 @@ long total = mongoTemplate.count(query, DataIntegrityMonitoringResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<DataIntegrityMonitoringResult> resultList = mongoTemplate.find(query, DataIntegrityMonitoringResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -492,7 +629,11 @@ long total = mongoTemplate.count(query, AttrRecognitionMonitorResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<AttrRecognitionMonitorResult> resultList = mongoTemplate.find(query, AttrRecognitionMonitorResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -517,7 +658,14 @@ long total = mongoTemplate.count(query, VehicleDeviceInspectionResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<VehicleDeviceInspectionResult> resultList = mongoTemplate.find(query, VehicleDeviceInspectionResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("1")), VehicleDeviceInspectionResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("2")), VehicleDeviceInspectionResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("4")), VehicleDeviceInspectionResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -542,7 +690,11 @@ long total = mongoTemplate.count(query, SnapshotDelayMonitorResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<SnapshotDelayMonitorResult> resultList = mongoTemplate.find(query, SnapshotDelayMonitorResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -567,7 +719,11 @@ long total = mongoTemplate.count(query, PicAccessResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<PicAccessResult> resultList = mongoTemplate.find(query, PicAccessResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -592,7 +748,11 @@ long total = mongoTemplate.count(query, VehicleDeviceSamplingResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<VehicleDeviceSamplingResult> resultList = mongoTemplate.find(query, VehicleDeviceSamplingResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -617,7 +777,15 @@ long total = mongoTemplate.count(query, SnapshotDataMonitorResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<SnapshotDataMonitorResult> resultList = mongoTemplate.find(query, SnapshotDataMonitorResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("1")), SnapshotDataMonitorResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("2")), SnapshotDataMonitorResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("3")), SnapshotDataMonitorResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("4")), SnapshotDataMonitorResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -642,7 +810,15 @@ long total = mongoTemplate.count(query, SnapshotDataMonitorResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<SnapshotDataMonitorResult> resultList = mongoTemplate.find(query, SnapshotDataMonitorResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("1")), SnapshotDataMonitorResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("2")), SnapshotDataMonitorResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("3")), SnapshotDataMonitorResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("resultType").is("4")), SnapshotDataMonitorResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -667,7 +843,16 @@ long total = mongoTemplate.count(query, OneMachineFileResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<OneMachineFileResult> resultList = mongoTemplate.find(query, OneMachineFileResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long nonNetwork = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("0")), OneMachineFileResult.class); + long network = mongoTemplate.count(new Query().addCriteria(Criteria.where("LWSX").is("1")), OneMachineFileResult.class); + long video = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/1/")), OneMachineFileResult.class); + long car = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/2/")), OneMachineFileResult.class); + long face = mongoTemplate.count(new Query().addCriteria(Criteria.where("SXJGNLX").regex("/3/")), OneMachineFileResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(nonNetwork, network, video, car, face)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -692,7 +877,15 @@ long total = mongoTemplate.count(query, CrossDetailResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<CrossDetailResult> resultList = mongoTemplate.find(query, CrossDetailResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("1")), CrossDetailResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("2")), CrossDetailResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("3")), CrossDetailResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("4")), CrossDetailResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -717,7 +910,15 @@ long total = mongoTemplate.count(query, MonitoringDetailResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<MonitoringDetailResult> resultList = mongoTemplate.find(query, MonitoringDetailResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("1")), MonitoringDetailResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("2")), MonitoringDetailResult.class); + long three = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("3")), MonitoringDetailResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("lalType").is("4")), MonitoringDetailResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, three, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -742,7 +943,14 @@ long total = mongoTemplate.count(query, FaceDeviceInspectionResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<FaceDeviceInspectionResult> resultList = mongoTemplate.find(query, FaceDeviceInspectionResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("1")), FaceDeviceInspectionResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("2")), FaceDeviceInspectionResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("4")), FaceDeviceInspectionResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -767,7 +975,14 @@ long total = mongoTemplate.count(query, FaceDeviceInspectionResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<FaceDeviceInspectionResult> resultList = mongoTemplate.find(query, FaceDeviceInspectionResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + long one = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("1")), FaceDeviceInspectionResult.class); + long two = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("2")), FaceDeviceInspectionResult.class); + long four = mongoTemplate.count(new Query().addCriteria(Criteria.where("snapResult").is("4")), FaceDeviceInspectionResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("count", Arrays.asList(one, two, four)); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -792,7 +1007,11 @@ long total = mongoTemplate.count(query, FaceDeviceSamplingResult.class); query.with(Sort.by(Sort.Order.asc(TIME_FIELD))).skip(params.getSkipNum()).limit(Math.toIntExact(params.getPageSize())); List<FaceDeviceSamplingResult> resultList = mongoTemplate.find(query, FaceDeviceSamplingResult.class); - return Result.ok().data(resultList).total(total); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** * 瑙嗛锛氳棰戝浘鍍忚祫婧愬畨鍏ㄧ鐞� @@ -806,7 +1025,11 @@ Page<ImageResourceSecurityDetail> page = PageHelper.startPage(query.getPageNum(), query.getPageSize()); securityDetailMapper.selectImageResourceSecurityDetailList(imageResourceSecurityDetail); - return Result.ok().data(page.getResult()).total(page.getTotal()); + // 缁熻鏁� + HashMap<String, Object> map = new HashMap<>(); + map.put("count", CollectionUtils.EMPTY_COLLECTION); + map.put("list", page); + return Result.ok().data(map).total(page.getTotal()); } } -- Gitblit v1.8.0