From a2813f7399cb27e6f66e99b5d9577eb21f4ddac3 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期六, 31 八月 2024 12:24:42 +0800 Subject: [PATCH] 下发页面运维单位工单数查询优化 --- ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java | 368 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 300 insertions(+), 68 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 7e35095..0385f2c 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 @@ -1,21 +1,28 @@ package com.ycl.platform.service.impl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +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.mapper.ImageResourceSecurityDetailMapper; import com.ycl.platform.service.DataCenterService; import com.ycl.system.Result; import com.ycl.utils.MongoUtil; 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; @@ -30,7 +37,7 @@ public class DataCenterServiceImpl implements DataCenterService { private final MongoTemplate mongoTemplate; - + private final ImageResourceSecurityDetailMapper securityDetailMapper; private final static String TIME_FIELD = "mongoCreateTime"; /** @@ -52,10 +59,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(query, VideoOnlineResult.class); - return Result.ok().data(resultList).total(total); + long count = mongoTemplate.count(new Query(), VideoOnlineResult.class); + HashMap<String, Object> map = new HashMap<>(); + map.put("total", count); + map.put("list", resultList); + return Result.ok().data(map).total(total); } /** @@ -77,10 +88,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -102,10 +122,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -127,10 +151,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -152,10 +185,17 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -177,10 +217,17 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -189,7 +236,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoLabelingAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -203,10 +249,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -215,7 +270,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointLabelingAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -229,10 +283,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -241,7 +304,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoCheckTimeAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -255,10 +317,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -267,7 +338,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointCheckTimeAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -281,10 +351,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -293,7 +372,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointOnlineRate(DataCenterQuery params) { Query query = new Query(); @@ -307,10 +385,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -319,7 +406,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointImageOnlineRate(DataCenterQuery params) { Query query = new Query(); @@ -333,10 +419,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } @@ -361,10 +456,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -386,10 +489,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -411,10 +522,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -436,10 +556,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -461,10 +589,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -486,10 +618,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -511,10 +647,17 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -536,10 +679,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -561,10 +708,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -586,10 +737,14 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -611,10 +766,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -623,7 +786,6 @@ * @param params * @return */ - // TODO 鏇存崲鍝嶅簲缁撴灉 @Override public Result facePointOnlineRate(DataCenterQuery params) { Query query = new Query(); @@ -637,10 +799,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -662,10 +832,19 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -687,10 +866,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -712,10 +899,18 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -737,10 +932,17 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -762,10 +964,17 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); } /** @@ -787,9 +996,32 @@ ); } query.addCriteria(criteria); + 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); - long total = mongoTemplate.count(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); + } + /** + * 瑙嗛锛氳棰戝浘鍍忚祫婧愬畨鍏ㄧ鐞� + * + * @param query + * @return + */ + @Override + public Result videoImageResourceSecurity(DataCenterQuery query) { + ImageResourceSecurityDetail imageResourceSecurityDetail = new ImageResourceSecurityDetail(); + Page<ImageResourceSecurityDetail> page = PageHelper.startPage(query.getPageNum(), query.getPageSize()); + securityDetailMapper.selectImageResourceSecurityDetailList(imageResourceSecurityDetail); + + // 缁熻鏁� + 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