From ed527bae283588de0a9848390348e93c3820fef9 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期一, 20 四月 2026 17:07:49 +0800
Subject: [PATCH] feat:通知功能完善

---
 tcm-training-admin-backend/src/main/java/com/tcm/training/admin/system/service/ActivityNoticeAppService.java |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/system/service/ActivityNoticeAppService.java b/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/system/service/ActivityNoticeAppService.java
index 8cbd9c5..3db309a 100644
--- a/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/system/service/ActivityNoticeAppService.java
+++ b/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/system/service/ActivityNoticeAppService.java
@@ -6,8 +6,10 @@
 import com.tcm.training.admin.common.PageResponse;
 import com.tcm.training.admin.system.dto.ActivityNoticeCreateRequest;
 import com.tcm.training.admin.system.entity.ActivityNotice;
+import com.tcm.training.admin.system.event.ActivityNoticeCreatedEvent;
 import com.tcm.training.admin.system.mapper.ActivityNoticeMapper;
 import com.tcm.training.admin.system.vo.ActivityNoticeListItemVO;
+import org.springframework.context.ApplicationEventPublisher;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -18,9 +20,15 @@
 public class ActivityNoticeAppService {
 
     private final ActivityNoticeMapper activityNoticeMapper;
+    private final ActivityNoticeDispatchService activityNoticeDispatchService;
+    private final ApplicationEventPublisher applicationEventPublisher;
 
-    public ActivityNoticeAppService(ActivityNoticeMapper activityNoticeMapper) {
+    public ActivityNoticeAppService(ActivityNoticeMapper activityNoticeMapper,
+                                    ActivityNoticeDispatchService activityNoticeDispatchService,
+                                    ApplicationEventPublisher applicationEventPublisher) {
         this.activityNoticeMapper = activityNoticeMapper;
+        this.activityNoticeDispatchService = activityNoticeDispatchService;
+        this.applicationEventPublisher = applicationEventPublisher;
     }
 
     public PageResponse<ActivityNoticeListItemVO> page(int page, int pageSize, String title) {
@@ -44,12 +52,14 @@
         item.setContentHtml(normalizeContent(request.getContentHtml()));
         item.setDeleted(0);
         activityNoticeMapper.insert(item);
+        applicationEventPublisher.publishEvent(new ActivityNoticeCreatedEvent(item.getId()));
         return toListItem(requireItem(item.getId()));
     }
 
     @Transactional
     public void delete(Long id) {
         requireItem(id);
+        activityNoticeDispatchService.hideDistributedRecords(id);
         activityNoticeMapper.deleteById(id);
     }
 

--
Gitblit v1.7.1