From 7b73755e320f1bec9254b86a0f078c5f7969880d Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期四, 19 十二月 2024 10:06:47 +0800 Subject: [PATCH] 接入海康成绩 --- ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java | 95 +++++++++++++++++++++++++---------------------- 1 files changed, 50 insertions(+), 45 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java index 39f5366..3f09bc6 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java @@ -780,7 +780,7 @@ MongoDatabase database = mongoTemplate.getDb(); MongoCollection<Document> collection = database.getCollection("uy_record_meta_d_sum"); Integer examineTag = monitorQuery.getExamineTag(); - Document matchConditions = new Document("mongoCreateTime", new Document("$gte", startDate).append("$lte", endDate)); + Document matchConditions = new Document("statTime", new Document("$gte", startDate).append("$lte", endDate)); // 鏍规嵁examineTag鐨勫�煎姩鎬佹坊鍔犻澶栫殑鏉′欢 if (examineTag != null && examineTag.equals(1)) { matchConditions.append("provinceTag", true); @@ -790,7 +790,7 @@ // 鏋勫缓鑱氬悎绠¢亾 List<Document> pipeline = Arrays.asList( new Document("$match", matchConditions), - new Document("$group", new Document("_id", "$mongoCreateTime") + new Document("$group", new Document("_id", "$statTime") .append("normalCount", new Document("$sum", new Document("$cond", Arrays.asList( new Document("$eq", Arrays.asList("$recordStatus", 1)), @@ -976,7 +976,6 @@ results.add(homecarVO); } - //TODO锛氬湪绾夸慨鏀癸紝闇�瑕佹妸妫�娴嬫捣搴蜂紭浜戞娴嬬殑缁撴灉瀛樺叆mongo锛宮ongo鏌ョ偣浣嶅湪绾� MongoCollection<Document> onlineCollection = database.getCollection("t_monitor_online"); // 鏋勫缓鍩烘湰鐨�$match鏉′欢 List<Document> onlineMatch = new ArrayList<>(); @@ -1007,30 +1006,33 @@ Map<String, Object> resultMap = new HashMap<>(); //鎸夋椂闂存帓搴� results = results.stream().sorted(Comparator.comparing(BaseHomeVO::getCreateDate)).collect(Collectors.toList()); - int snapCount = 0; - for (HomeCarVO vo : results) { - if (vo.getSnapCount() != null) { - snapCount += vo.getSnapCount(); + //濡傛灉鏄粯璁ゆ垨绱拰鍒欒繘琛岀疮鍜屼互鍙婅幏鍙栧熀鍑嗙嚎 + if(monitorQuery.getCategory() == null || monitorQuery.getCategory().equals(1)) { + int snapCount = 0; + for (HomeCarVO vo : results) { + if (vo.getSnapCount() != null) { + snapCount += vo.getSnapCount(); + } + vo.setSnapCount(snapCount); } - vo.setSnapCount(snapCount); + //浠庡瓧鍏歌幏鍙栧熀鍑嗙嚎 + List<SysDictData> baseLines = dictDataMapper.selectDictDataByType("home_baseLine"); + String condition; + if (examineTag != null && examineTag == 1) { + condition = "car_province_baseLine"; + } else if (examineTag != null && examineTag == 2) { + condition = "car_dept_baseLine"; + } else { + condition = "car_all_baseLine"; + } + + Optional<SysDictData> first = baseLines.stream().filter(sysDictData -> condition.equals(sysDictData.getDictLabel())).findFirst(); + if (first.isPresent()) { + SysDictData sysDictData = first.get(); + resultMap.put("baseLine", Integer.valueOf(sysDictData.getDictValue())); + } } resultMap.put("list", results); - //浠庡瓧鍏歌幏鍙栧熀鍑嗙嚎 - List<SysDictData> baseLines = dictDataMapper.selectDictDataByType("home_baseLine"); - String condition; - if (examineTag != null && examineTag == 1) { - condition = "car_province_baseLine"; - } else if (examineTag != null && examineTag == 2) { - condition = "car_dept_baseLine"; - } else { - condition = "car_all_baseLine"; - } - - Optional<SysDictData> first = baseLines.stream().filter(sysDictData -> condition.equals(sysDictData.getDictLabel())).findFirst(); - if (first.isPresent()) { - SysDictData sysDictData = first.get(); - resultMap.put("baseLine", Integer.valueOf(sysDictData.getDictValue())); - } return resultMap; } @@ -1115,32 +1117,35 @@ HomeFaceVO vo = findOrCreateVO(doc, results, HomeFaceVO.class); vo.setOnline(doc.getInteger("onlineCount")); } + Map<String, Object> resultMap = new HashMap<>(); //鎸夋椂闂存帓搴� results = results.stream().sorted(Comparator.comparing(BaseHomeVO::getCreateDate)).collect(Collectors.toList()); - int snapCount = 0; - for (HomeFaceVO vo : results) { - if (vo.getSnapCount() != null) { - snapCount += vo.getSnapCount(); + //濡傛灉鏄粯璁ゆ垨绱拰鍒欒繘琛岀疮鍜屼互鍙婅幏鍙栧熀鍑嗙嚎 + if(monitorQuery.getCategory() == null || monitorQuery.getCategory().equals(1)) { + int snapCount = 0; + for (HomeFaceVO vo : results) { + if (vo.getSnapCount() != null) { + snapCount += vo.getSnapCount(); + } + vo.setSnapCount(snapCount); } - vo.setSnapCount(snapCount); + //浠庡瓧鍏歌幏鍙栧熀鍑嗙嚎 + List<SysDictData> baseLines = dictDataMapper.selectDictDataByType("home_baseLine"); + String condition; + if (examineTag != null && examineTag == 1) { + condition = "face_province_baseLine"; + } else if (examineTag != null && examineTag == 2) { + condition = "face_dept_baseLine"; + } else { + condition = "face_all_baseLine"; + } + Optional<SysDictData> first = baseLines.stream().filter(sysDictData -> condition.equals(sysDictData.getDictLabel())).findFirst(); + if (first.isPresent()) { + SysDictData sysDictData = first.get(); + resultMap.put("baseLine", Integer.valueOf(sysDictData.getDictValue())); + } } - Map<String, Object> resultMap = new HashMap<>(); resultMap.put("list", results); - //浠庡瓧鍏歌幏鍙栧熀鍑嗙嚎 - List<SysDictData> baseLines = dictDataMapper.selectDictDataByType("home_baseLine"); - String condition; - if (examineTag != null && examineTag == 1) { - condition = "face_province_baseLine"; - } else if (examineTag != null && examineTag == 2) { - condition = "face_dept_baseLine"; - } else { - condition = "face_all_baseLine"; - } - Optional<SysDictData> first = baseLines.stream().filter(sysDictData -> condition.equals(sysDictData.getDictLabel())).findFirst(); - if (first.isPresent()) { - SysDictData sysDictData = first.get(); - resultMap.put("baseLine", Integer.valueOf(sysDictData.getDictValue())); - } return resultMap; } -- Gitblit v1.8.0