From 16335c0ebdbb00381a7c008ccaa387ceadcfd45b Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期一, 14 九月 2026 17:37:01 +0800
Subject: [PATCH] 【景宁】景宁 定时发送异常信息-景宁
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 42 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 42 insertions(+), 0 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
index 2f047a7..55c1971 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -9,6 +9,7 @@
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.core.service.IDingTalkService;
import com.ruoyi.common.dx.MessageSend;
import com.ruoyi.common.enums.MsgLSEnum;
import com.ruoyi.common.enums.ServiceFromEnum;
@@ -104,6 +105,9 @@
@Autowired
private ISysConfigService configService;
+
+ @Autowired
+ private IDingTalkService dingTalkService;
@Value("${localIP}")
@@ -270,6 +274,44 @@
}
}
+ /**
+ * 瀹氭椂鍙戦�佸紓甯镐俊鎭�-鏅畞
+ */
+ public void sendExceptInfo() throws Exception {
+ //1.鑾峰彇鍙戦�佷汉宸ュ彿
+ ServiceSubtaskDetailTraceVO subtaskDetailTraceVO = new ServiceSubtaskDetailTraceVO();
+ subtaskDetailTraceVO.setHandleFlag("0");
+ List<ServiceSubtaskDetailTrace> serviceSubtaskDetailTraces =
+ serviceSubtaskDetailTraceService.selectServiceSubtaskDetailTtraceList(subtaskDetailTraceVO);
+ // 鎶� dutyDeptPersonCode 鏁寸悊鍒� list 涓紙濡傛灉澶氫釜浜虹敤閫楀彿鍒嗗壊锛屽垯灞曞紑骞跺幓閲嶏級
+ List<String> dutyDeptPersonCodeList = serviceSubtaskDetailTraces.stream()
+ .map(ServiceSubtaskDetailTrace::getDutyDeptPersonCode)
+ .filter(StringUtils::isNotBlank)
+ .flatMap(code -> Arrays.stream(code.split(",")))
+ .map(String::trim)
+ .filter(StringUtils::isNotBlank).distinct() // 鍘婚噸
+ .collect(Collectors.toList());
+ // 鑾峰彇鈥滃紓甯稿唴瀹规彁閱�"
+ SysConfig sysConfig = sysConfigMapper.checkConfigKeyUnique("send.except.content");
+ String exceptContent = sysConfig.getConfigValue();
+
+ // 鑾峰彇鈥滃唴瀹规彁閱掓祴璇曚汉宸ュ彿鈥�
+ String testPerson = sysConfigMapper.checkConfigKeyUnique("send.test.person").getConfigValue();
+ if (StringUtils.isNotBlank(testPerson)) {
+ String[] split = testPerson.split(",");
+ if (CollectionUtils.isEmpty(dutyDeptPersonCodeList)) dutyDeptPersonCodeList = Arrays.asList(split);
+ else dutyDeptPersonCodeList.addAll(Arrays.asList(split));
+ }
+
+ if (CollectionUtils.isNotEmpty(dutyDeptPersonCodeList)) {
+ for (String dutyDeptPersonCode : dutyDeptPersonCodeList) {
+ log.info("銆恠endExceptInfo銆戝彂閫佷汉宸ュ彿锛歿}", dutyDeptPersonCode);
+ String dutyDeptPerson = dingTalkService.getDingTalkUserByMobile(dutyDeptPersonCode);
+ dingTalkService.sendDingTalkText(exceptContent, dutyDeptPerson);
+ }
+ }
+ }
+
/**
* 瀹氭椂澶勭悊澶栭摼鐨勬暟鎹�
--
Gitblit v1.9.3