From c10b1e130ccbc94e6481a43e8e2d35cfc8fcf83b Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期五, 26 十二月 2025 18:05:06 +0800
Subject: [PATCH] feat:显示问题
---
ruoyi-system/src/main/java/com/ruoyi/system/listener/TaskMessageListener.java | 43 +++++++++++++++++++++++++++++++++----------
1 files changed, 33 insertions(+), 10 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/listener/TaskMessageListener.java b/ruoyi-system/src/main/java/com/ruoyi/system/listener/TaskMessageListener.java
index 588e0e7..d343005 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/listener/TaskMessageListener.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/listener/TaskMessageListener.java
@@ -65,6 +65,9 @@
@Autowired
private ISysTaskAssigneeService taskAssigneeService;
+ @Autowired
+ private ITaskStatusPushService taskStatusPushService;
+
@Async
@EventListener
public void handleTaskDispatchEvent(TaskDispatchSyncEvent event) {
@@ -418,6 +421,8 @@
return content.toString();
}
+ @Autowired
+ private ITaskStatusSyncService taskStatusSyncService;
/**
* 鐩戝惉浠诲姟鐘舵�佸彉鏇翠簨浠�
*
@@ -426,26 +431,44 @@
@Async
@EventListener
public void handleTaskStatusChangedEvent(TaskStatusChangedEvent event) {
+
+ sendTaskStatusToLocal(event);
+ sendTaskStatusToLegacy(event.getTaskId());
+
+ }
+
+ private void sendTaskStatusToLegacy(Long taskId) {
+ try{
+ log.info("浠诲姟鐘舵�佸悓姝ュ埌鏃х郴缁熷紑濮� taskId:{}",taskId);
+ taskStatusPushService.pushTaskStatusToLegacy(taskId);
+ }catch (Exception e){
+ log.error("浠诲姟鐘舵�佸悓姝ュ埌鏃х郴缁熷紓甯� taskId:{}",taskId, e);
+ }
+ }
+
+
+
+ private void sendTaskStatusToLocal(TaskStatusChangedEvent event) {
try {
- log.info("鏀跺埌浠诲姟鐘舵�佸彉鏇翠簨浠讹紝浠诲姟ID锛歿}锛屾棫鐘舵�侊細{}锛屾柊鐘舵�侊細{}",
+ log.info("鏀跺埌浠诲姟鐘舵�佸彉鏇翠簨浠讹紝浠诲姟ID锛歿}锛屾棫鐘舵�侊細{}锛屾柊鐘舵�侊細{}",
event.getTaskId(), event.getOldStatus(), event.getNewStatus());
-
+ //鍙戣捣鐘舵�佸悓姝�
// 鏋勫缓鐘舵�佸彉鏇村唴瀹�
String statusContent = getStatusChangeContent(event.getNewStatus(), event.getNewStatusDesc());
-
+
// 鏀堕泦鎵�鏈夐渶瑕侀�氱煡鐨勭敤鎴稩D锛堟墽琛屼汉+鍒涘缓浜猴紝鍘婚噸锛�
java.util.Set<Long> receiverIds = new java.util.HashSet<>();
-
+
// 娣诲姞鎵ц浜�
if (event.getAssigneeIds() != null) {
receiverIds.addAll(event.getAssigneeIds());
}
-
+
// 娣诲姞鍒涘缓浜猴紙濡傛灉涓嶆槸鎵ц浜猴級
if (event.getCreatorId() != null) {
receiverIds.add(event.getCreatorId());
}
-
+
// 缁欐瘡涓敤鎴峰彂閫佹秷鎭�
for (Long receiverId : receiverIds) {
SysUser user = sysUserMapper.selectUserById(receiverId);
@@ -453,7 +476,7 @@
log.warn("鎵句笉鍒扮敤鎴蜂俊鎭紝鐢ㄦ埛ID锛歿}", receiverId);
continue;
}
-
+
// 鍒涘缓娑堟伅
SysMessage message = new SysMessage();
message.setMessageType("STATUS");
@@ -468,13 +491,13 @@
message.setIsRead("0");
message.setCreateTime(DateUtils.getNowDate());
message.setDelFlag("0");
-
+
// 淇濆瓨娑堟伅
sysMessageMapper.insertSysMessage(message);
- log.info("浠诲姟鐘舵�佸彉鏇存秷鎭凡淇濆瓨锛屾秷鎭疘D锛歿}锛屾柊鐘舵�侊細{}锛屾帴鏀朵汉锛歿}",
+ log.info("浠诲姟鐘舵�佸彉鏇存秷鎭凡淇濆瓨锛屾秷鎭疘D锛歿}锛屾柊鐘舵�侊細{}锛屾帴鏀朵汉锛歿}",
message.getMessageId(), event.getNewStatus(), user.getNickName());
}
-
+
} catch (Exception e) {
log.error("澶勭悊浠诲姟鐘舵�佸彉鏇翠簨浠跺け璐�", e);
}
--
Gitblit v1.9.1