From 26196805b7b61b0caaace961e616ffd10fbbdf92 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 09 八月 2024 14:15:51 +0800
Subject: [PATCH] 阈值生成工单接口重构、点位标签调整
---
ycl-server/src/main/java/com/ycl/task/MonitorTask.java | 41 ++++++++++++++++++++++++++++-------------
1 files changed, 28 insertions(+), 13 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/task/MonitorTask.java b/ycl-server/src/main/java/com/ycl/task/MonitorTask.java
index e53b548..8cc0d10 100644
--- a/ycl-server/src/main/java/com/ycl/task/MonitorTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/MonitorTask.java
@@ -14,6 +14,8 @@
import com.ycl.system.service.ISysDictDataService;
import com.ycl.utils.DateUtils;
import constant.RedisConstant;
+import enumeration.general.AreaDeptEnum;
+import enumeration.general.PointStatus;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
@@ -21,7 +23,6 @@
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
-import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.*;
@@ -44,21 +45,21 @@
private YwPointService ywPointService;
@Autowired
private RedisTemplate redisTemplate;
+
//鍚屾mongodb涓�鏈轰竴妗e埌鏁版嵁搴�
public void synchronize() {
Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
List<OneMachineFileResult> oneMachineFileResults = mongoTemplate.find(query, OneMachineFileResult.class);
//鏁版嵁搴搈onitor琛ㄦ暟鎹�
List<String> serialNumberInBase = monitorService.selectTMonitorList(null).stream().map(TMonitorVO::getSerialNumber).collect(Collectors.toList());
- //鍑嗗鎻掑叆鏁版嵁搴撶殑鏁版嵁
+ //鍑嗗鎻掑叆璁惧琛ㄧ殑鏁版嵁
List<TMonitor> monitorList = new ArrayList<>();
+ //鍑嗗鎻掑叆鐐逛綅琛ㄧ殑鏁版嵁
+ List<YwPoint> ywPointList = new ArrayList<>();
//鏂扮殑鏁版嵁锛屽師鏁版嵁搴撲腑涓嶅瓨鍦ㄧ殑鏁版嵁
Set<TMonitor> newMonitorList = new HashSet<>();
//鐐逛綅鏁版嵁
Map<String, YwPoint> pointMap = ywPointService.list(new QueryWrapper<YwPoint>()).stream().collect(Collectors.toMap(YwPoint::getSerialNumber, Function.identity()));
- //TODO:鎻掑叆鐐逛綅琛�
- //TODO:瑙f瀽鍖哄煙銆佽ˉ鍏卍eptId
- //TODO:瑙f瀽閲嶇偣鐐逛綅
//閲嶇偣鐐逛綅闆嗗悎瀛楀吀(瑙f瀽SXJCJQY瀛楁)
SysDictData sysDictData = new SysDictData();
sysDictData.setDictType("platform_important_site");
@@ -66,15 +67,15 @@
List<String> importantSite = DictDataList.stream().map(SysDictData::getDictValue).collect(Collectors.toList());
for (OneMachineFileResult result : oneMachineFileResults) {
TMonitor monitor = getMonitor(result);
- YwPoint point = getPoint(result,pointMap,importantSite);
+ YwPoint point = getPoint(result, pointMap, importantSite);
monitorList.add(monitor);
//姣斿绛涢�夊嚭鏂扮殑鏁版嵁
- if(!CollectionUtils.isEmpty(serialNumberInBase) && !serialNumberInBase.contains(result.getSBBM())){
+ if (!CollectionUtils.isEmpty(serialNumberInBase) && !serialNumberInBase.contains(result.getSBBM())) {
newMonitorList.add(monitor);
}
}
//鎻掑叆鏁版嵁搴�
- if(!CollectionUtils.isEmpty(monitorList)){
+ if (!CollectionUtils.isEmpty(monitorList)) {
monitorService.deleteTMonitorById(null);
monitorService.saveBatch(monitorList);
}
@@ -84,16 +85,30 @@
}
- private YwPoint getPoint(OneMachineFileResult result, Map<String, YwPoint> pointMap,List<String> importantSite) {
+ private YwPoint getPoint(OneMachineFileResult result, Map<String, YwPoint> pointMap, List<String> importantSite) {
YwPoint ywPoint = new YwPoint();
- if(pointMap.containsKey(result.getSBBM())){
+ if (pointMap.containsKey(result.getSBBM())) {
ywPoint = pointMap.get(result.getSBBM());
+ }else {
+ ywPoint.setPointName(result.getSBMC());
+ ywPoint.setStatus(PointStatus.WAIT.getDesc());
+ ywPoint.setSerialNumber(result.getSBBM());
+ ywPoint.setImportantTag(Boolean.FALSE);
+ ywPoint.setProvinceTag(Boolean.FALSE);
+ ywPoint.setCreateTime(new Date());
+ ywPoint.setUpdateTime(new Date());
}
//姣斿鏄惁鏄噸鐐圭偣浣�
- if(importantSite.contains(result.getSBBM())){
-
+ if (importantSite.contains(result.getSBBM())) {
+ ywPoint.setImportantTag(Boolean.TRUE);
}
-
+ //瑙f瀽deptId
+ //鍖哄煙琛屾斂缂栫爜
+ String areaCode = result.getSBBM().substring(0, 6);
+ Integer deptId = AreaDeptEnum.fromCode(areaCode).getDeptId();
+ if (deptId != null) {
+ ywPoint.setDeptId(Long.valueOf(deptId + ""));
+ }
return ywPoint;
}
--
Gitblit v1.8.0