From 47806d9e390ee00e1d29ad1da8c1aa908882a758 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 11 八月 2026 14:43:59 +0800
Subject: [PATCH] 用河南鹤壁代码覆盖山西长治

---
 src/main/java/com/ruoyi/project/system/service/impl/SysNoticeServiceImpl.java |   91 +--------------------------------------------
 1 files changed, 3 insertions(+), 88 deletions(-)

diff --git a/src/main/java/com/ruoyi/project/system/service/impl/SysNoticeServiceImpl.java b/src/main/java/com/ruoyi/project/system/service/impl/SysNoticeServiceImpl.java
index d04239f..dcbcded 100644
--- a/src/main/java/com/ruoyi/project/system/service/impl/SysNoticeServiceImpl.java
+++ b/src/main/java/com/ruoyi/project/system/service/impl/SysNoticeServiceImpl.java
@@ -4,8 +4,6 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.collaborativeApproval.mapper.EnterpriseNewsMapper;
-import com.ruoyi.collaborativeApproval.pojo.EnterpriseNews;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.project.system.domain.SysDept;
 import com.ruoyi.project.system.domain.SysNotice;
@@ -20,12 +18,8 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.HashSet;
 import java.util.List;
-import java.util.Set;
 import java.util.stream.Collectors;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
 
 /**
  * 鍏憡 鏈嶅姟灞傚疄鐜�
@@ -36,14 +30,11 @@
 @RequiredArgsConstructor
 public class SysNoticeServiceImpl  extends ServiceImpl<SysNoticeMapper, SysNotice> implements ISysNoticeService {
 
-    private static final Pattern ENTERPRISE_NEWS_ID_PATTERN = Pattern.compile("[?&]id=(\\d+)");
-
     private final SysNoticeMapper noticeMapper;
     private final SysUserMapper userMapper;
     private final SysDeptMapper deptMapper;
     private final SysUserDeptMapper userDeptMapper;
     private final UnipushService unipushService;
-    private final EnterpriseNewsMapper enterpriseNewsMapper;
 
     /**
      * 鏌ヨ鍏憡淇℃伅
@@ -87,24 +78,9 @@
      * @return 缁撴灉
      */
     @Override
-    @Transactional(rollbackFor = Exception.class)
     public int updateNotice(SysNotice notice)
     {
-        if (notice == null || notice.getNoticeId() == null) {
-            return 0;
-        }
-        SysNotice dbNotice = noticeMapper.selectNoticeById(notice.getNoticeId());
-        if (dbNotice == null) {
-            return 0;
-        }
-        boolean needSyncNewsReadCount = isEnterpriseNewsNotice(dbNotice)
-                && notice.getStatus() != null
-                && !notice.getStatus().equals(dbNotice.getStatus());
-        int rows = noticeMapper.updateNotice(notice);
-        if (rows > 0 && needSyncNewsReadCount) {
-            syncEnterpriseNewsReadCount(dbNotice.getJumpPath());
-        }
-        return rows;
+        return noticeMapper.updateNotice(notice);
     }
 
     /**
@@ -141,17 +117,10 @@
     @Override
     public int readAll() {
         Long userId = SecurityUtils.getUserId();
-        List<SysNotice> unreadNotices = noticeMapper.selectList(Wrappers.<SysNotice>lambdaQuery()
-                .eq(SysNotice::getConsigneeId, userId)
-                .eq(SysNotice::getStatus, "0"));
-        int rows = noticeMapper.update(null, Wrappers.<SysNotice>lambdaUpdate()
+        return noticeMapper.update(null, Wrappers.<SysNotice>lambdaUpdate()
                 .eq(SysNotice::getConsigneeId, userId)
                 .eq(SysNotice::getStatus, "0")
                 .set(SysNotice::getStatus, "1"));
-        if (rows > 0) {
-            syncEnterpriseNewsReadCount(unreadNotices);
-        }
-        return rows;
     }
 
     @Override
@@ -251,63 +220,9 @@
             return false;
         }
         sysNotice.setStatus("1");
-        boolean updated = noticeMapper.update(null, Wrappers.<SysNotice>lambdaUpdate()
+        return noticeMapper.update(null, Wrappers.<SysNotice>lambdaUpdate()
                 .eq(SysNotice::getNoticeId, noticeId)
                 .eq(SysNotice::getStatus, "0")
                 .set(SysNotice::getStatus, "1")) > 0;
-        if (updated) {
-            syncEnterpriseNewsReadCount(sysNotice.getJumpPath());
-        }
-        return updated;
-    }
-
-    private boolean isEnterpriseNewsNotice(SysNotice sysNotice) {
-        return sysNotice != null
-                && sysNotice.getJumpPath() != null
-                && sysNotice.getJumpPath().contains("/enterpriseNews?id=");
-    }
-
-    private void syncEnterpriseNewsReadCount(List<SysNotice> notices) {
-        if (notices == null || notices.isEmpty()) {
-            return;
-        }
-        Set<String> jumpPaths = new HashSet<>();
-        for (SysNotice notice : notices) {
-            if (isEnterpriseNewsNotice(notice)) {
-                jumpPaths.add(notice.getJumpPath());
-            }
-        }
-        for (String jumpPath : jumpPaths) {
-            syncEnterpriseNewsReadCount(jumpPath);
-        }
-    }
-
-    private void syncEnterpriseNewsReadCount(String jumpPath) {
-        Long newsId = parseEnterpriseNewsId(jumpPath);
-        if (newsId == null) {
-            return;
-        }
-        long readCount = noticeMapper.selectCount(Wrappers.<SysNotice>lambdaQuery()
-                .eq(SysNotice::getStatus, "1")
-                .eq(SysNotice::getJumpPath, jumpPath));
-        EnterpriseNews enterpriseNews = new EnterpriseNews();
-        enterpriseNews.setId(newsId);
-        enterpriseNews.setReadCount((int) readCount);
-        enterpriseNewsMapper.updateById(enterpriseNews);
-    }
-
-    private Long parseEnterpriseNewsId(String jumpPath) {
-        if (jumpPath == null || !jumpPath.startsWith("/enterpriseNews")) {
-            return null;
-        }
-        Matcher matcher = ENTERPRISE_NEWS_ID_PATTERN.matcher(jumpPath);
-        if (!matcher.find()) {
-            return null;
-        }
-        try {
-            return Long.parseLong(matcher.group(1));
-        } catch (NumberFormatException e) {
-            return null;
-        }
     }
 }

--
Gitblit v1.9.3