From 7006d2e6e6c0281e4effc7fc70719af91b0c4982 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 30 九月 2024 12:23:46 +0800
Subject: [PATCH] 工单取图片优化
---
ycl-server/src/main/java/com/ycl/task/UYTask.java | 104 ++++++++++++++++++++++++++++-----------------------
1 files changed, 57 insertions(+), 47 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/task/UYTask.java b/ycl-server/src/main/java/com/ycl/task/UYTask.java
index 39d0d29..5504f50 100644
--- a/ycl-server/src/main/java/com/ycl/task/UYTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/UYTask.java
@@ -7,9 +7,11 @@
import com.ycl.platform.domain.entity.WorkOrder;
import com.ycl.platform.domain.entity.YwPoint;
import com.ycl.platform.domain.param.UY.*;
+import com.ycl.platform.domain.result.SYS.TMonitorResult;
import com.ycl.platform.domain.result.UY.RecordMetaDSumResult;
import com.ycl.platform.domain.result.UY.*;
import com.ycl.platform.domain.vo.OnlineThreadVO;
+import com.ycl.platform.domain.vo.TMonitorVO;
import com.ycl.platform.domain.vo.UpdateOnlineVO;
import com.ycl.platform.mapper.TMonitorMapper;
import com.ycl.platform.service.UYErrorTypeCheckService;
@@ -18,6 +20,7 @@
import com.ycl.system.domain.SysConfig;
import com.ycl.system.mapper.SysConfigMapper;
import com.ycl.thread.OnlineCheckThread;
+import com.ycl.utils.CheckPointUtil;
import com.ycl.utils.DateUtils;
import com.ycl.utils.http.HttpUtils;
import com.ycl.utils.http.SelfHttpUtil;
@@ -55,11 +58,9 @@
private final UYErrorTypeCheckService uyErrorTypeCheckService;
private final YwPointService pointService;
private final TMonitorMapper monitorMapper;
- private final SelfHttpUtil selfHttpUtil;
- private final RedisTemplate redisTemplate;
private final WorkOrderService workOrderService;
private final SysConfigMapper sysConfigMapper;
-
+ private final CheckPointUtil checkPointUtil;
@Value("${youYun.tenantId}")
private String tenantId;
@Value("${youYun.apikey}")
@@ -190,15 +191,15 @@
log.error("璇烽厤缃绾挎鏁帮紝姝ゆ璁剧疆涓洪粯璁ゅ��2");
}
// 鍏堟煡鍑鸿澶嘔P闆嗗悎
- List<TMonitor> monitorList = monitorMapper.getDistinctIP();
- List<Future<OnlineThreadVO>> futureList = new ArrayList<>(48);
- List<OnlineThreadVO> dataList = new ArrayList<>(48);
- for (TMonitor monitor : monitorList) {
- OnlineCheckThread thread = new OnlineCheckThread(monitor, redisTemplate, selfHttpUtil, times);
- Future<OnlineThreadVO> future = executorService.submit(thread);
+ List<TMonitorResult> monitorList = monitorMapper.getDistinctIP();
+ List<Future<TMonitorResult>> futureList = new ArrayList<>(48);
+ List<TMonitorResult> dataList = new ArrayList<>(48);
+ for (TMonitorResult monitor : monitorList) {
+ OnlineCheckThread thread = new OnlineCheckThread(monitor,checkPointUtil,times);
+ Future<TMonitorResult> future = executorService.submit(thread);
futureList.add(future);
}
- for (Future<OnlineThreadVO> future : futureList) {
+ for (Future<TMonitorResult> future : futureList) {
dataList.add(future.get()); // get鏂规硶浼氶樆濉烇紝鐭ラ亾鎷垮埌缁撴灉鎵嶇户缁墽琛宖or
}
@@ -216,16 +217,25 @@
// 宸ュ崟
List<WorkOrder> workOrderList = dataList.stream()
.filter(item -> Objects.nonNull(item.getWorkOrder()))
- .map(OnlineThreadVO::getWorkOrder)
+ .map(TMonitorResult::getWorkOrder)
.collect(Collectors.toList());
if (CollectionUtils.isEmpty(workOrderList)) {
return;
}
workOrderService.innerAddWorkOrder(workOrderList);
+ //瀛樻斁鍒癿ongo
+ if (!CollectionUtils.isEmpty(dataList)) {
+ //濡傛灉瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎
+ Query query = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
+ DeleteResult result = mongoTemplate.remove(query, TMonitorResult.class);
+ //瀛樻斁鍦╩ongo涓�
+ mongoTemplate.insertAll(dataList);
+ log.info("缁撴潫鍚屾鐐逛綅鍦ㄧ嚎鐜囧埌mongo");
+ }
log.info("鐐逛綅鍦ㄧ嚎鐩戞祴瀹屾垚");
}
- //鐐逛綅鍦ㄧ嚎鐜�
+ //锛堝純鐢級鐐逛綅鍦ㄧ嚎鐜�
public void videoOnlineTask() {
//瑙嗛鍥惧儚璐ㄩ噺
log.info("寮�濮嬫墽琛岀偣浣嶅湪绾挎暟鎹悓姝�");
@@ -273,41 +283,41 @@
public void recordMetaDSumTask() {
//褰曞儚鍙敤鐜�
log.info("寮�濮嬫墽琛屽綍鍍忓彲鐢ㄦ暟鎹悓姝�");
-// RecordMetaDSumParam param = new RecordMetaDSumParam();
-// param.setTenantId(tenantId);
-// Calendar instance = Calendar.getInstance();
-// instance.setTime(new Date());
-// instance.add(Calendar.DAY_OF_MONTH, -1);
-// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
-// String yesterday = format.format(instance.getTime());
-// param.setStatTime(yesterday);
-// JSONObject jsonObject = uyClient.recordMetaDSumList(param);
-// if (jsonObject != null) {
-// if (ApiConstants.UYSuccessCodeStr.equals(jsonObject.getString("code"))) {
-// List<RecordMetaDSumResult> records = jsonObject.getList("data", RecordMetaDSumResult.class);
-// if (!CollectionUtils.isEmpty(records)) {
-// //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎
-// Query query = new Query(Criteria
-// .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
-// DeleteResult result = mongoTemplate.remove(query, RecordMetaDSumResult.class);
-// records.stream().forEach(item -> {
-// if (Objects.nonNull(item.getDeviceId())) {
-// item.setNo(item.getDeviceId());
-// }
-// });
-// pointService.setDeviceTagByGB(records);
-// //瀛樻斁鍦╩ongo涓�
-// mongoTemplate.insertAll(records);
-// // 宸ュ崟鐢熸垚
-// uyErrorTypeCheckService.recordMetaDSumCheck(records);
-// }
-// } else {
-// log.error("褰曞儚鍙敤鏁版嵁涓虹┖{}", jsonObject);
-// }
-// }
-// 鏈湴娴嬭瘯
- Query query = new Query(Criteria.where("mongoCreateTime").lt(DateUtils.getDayEnd(new Date())));
- uyErrorTypeCheckService.recordMetaDSumCheck(mongoTemplate.find(query, RecordMetaDSumResult.class));
+ RecordMetaDSumParam param = new RecordMetaDSumParam();
+ param.setTenantId(tenantId);
+ Calendar instance = Calendar.getInstance();
+ instance.setTime(new Date());
+ instance.add(Calendar.DAY_OF_MONTH, -1);
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+ String yesterday = format.format(instance.getTime());
+ param.setStatTime(yesterday);
+ JSONObject jsonObject = uyClient.recordMetaDSumList(param);
+ if (jsonObject != null) {
+ if (ApiConstants.UYSuccessCodeStr.equals(jsonObject.getString("code"))) {
+ List<RecordMetaDSumResult> records = jsonObject.getList("data", RecordMetaDSumResult.class);
+ if (!CollectionUtils.isEmpty(records)) {
+ //濡傛灉浠婂ぉ瀛樺湪涔嬪墠鐨勬暟鎹厛鍒犻櫎
+ Query query = new Query(Criteria
+ .where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
+ DeleteResult result = mongoTemplate.remove(query, RecordMetaDSumResult.class);
+ records.stream().forEach(item -> {
+ if (Objects.nonNull(item.getDeviceId())) {
+ item.setNo(item.getDeviceId());
+ }
+ });
+ pointService.setDeviceTagByGB(records);
+ //瀛樻斁鍦╩ongo涓�
+ mongoTemplate.insertAll(records);
+ // 宸ュ崟鐢熸垚
+ uyErrorTypeCheckService.recordMetaDSumCheck(records);
+ }
+ } else {
+ log.error("褰曞儚鍙敤鏁版嵁涓虹┖{}", jsonObject);
+ }
+ }
+ // 鏈湴娴嬭瘯
+// Query query = new Query(Criteria.where("mongoCreateTime").lt(DateUtils.getDayEnd(new Date())));
+// uyErrorTypeCheckService.recordMetaDSumCheck(mongoTemplate.find(query, RecordMetaDSumResult.class));
log.info("缁撴潫鎵ц褰曞儚鍙敤鏁版嵁鍚屾");
}
--
Gitblit v1.8.0