From 4371080df058a549cdaf31dddeca6c5fee58e23b Mon Sep 17 00:00:00 2001
From: Houjie <714924425@qq.com>
Date: 星期二, 10 六月 2025 15:31:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java | 26 ++++++++++++++++++++++++--
1 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java
index 7e75089..0b4395b 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java
@@ -7,7 +7,9 @@
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.base.Joiner;
import lombok.extern.slf4j.Slf4j;
@@ -18,6 +20,7 @@
import org.jeecg.common.api.dto.message.*;
import org.jeecg.common.aspect.UrlMatchEnum;
import org.jeecg.common.constant.*;
+import org.jeecg.common.constant.enums.MessageSplitTypeEnum;
import org.jeecg.common.constant.enums.MessageTypeEnum;
import org.jeecg.common.desensitization.util.SensitiveInfoUtil;
import org.jeecg.common.exception.JeecgBootException;
@@ -59,6 +62,7 @@
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
import java.util.*;
+import java.util.stream.Collectors;
/**
* @Description: 搴曞眰鍏遍�氫笟鍔PI锛屾彁渚涘叾浠栫嫭绔嬫ā鍧楄皟鐢�
@@ -134,6 +138,8 @@
@Autowired
private IQuartzJobService quartzJobService;
+ @Autowired
+ private ISysDictItemService sysDictItemService;
@Override
//@SensitiveDecode
@@ -355,6 +361,22 @@
@Override
public void sendSysAnnouncement(MessageDTO message) {
+
+ if (StringUtils.isNotBlank(message.getMessageType())) {
+ //鑾峰彇娑堟伅绫诲瀷瀵瑰簲瑙掕壊鐢ㄦ埛
+ MessageSplitTypeEnum messageSplitTypeEnum = MessageSplitTypeEnum.valueOfType(message.getMessageType());
+ SysDict sysDict = sysDictService.getOne(new LambdaQueryWrapper<SysDict>().eq(SysDict::getDictCode, messageSplitTypeEnum.getDictCode()));
+ List<SysDictItem> sysDictItemList = sysDictItemService.list(new QueryWrapper<SysDictItem>().eq("dict_id",sysDict.getId()));
+ if (CollectionUtils.isNotEmpty(sysDictItemList)) {
+ List<SysUser> sysUserList = sysUserService.getUserByRoleCodeList(sysDictItemList.stream().map(SysDictItem::getItemValue).collect(Collectors.toList()));
+ if (CollectionUtils.isNotEmpty(sysUserList)) {
+ Set<String> userIdList = new HashSet<>(Arrays.asList(message.getToUser().split(StringPool.COMMA)));
+ userIdList.addAll(sysUserList.stream().map(SysUser::getUsername).collect(Collectors.toList()));
+ message.setToUser(StringUtils.join(userIdList, StringPool.COMMA));
+ }
+ }
+ }
+
this.sendSysAnnouncement(message.getFromUser(), message.getToUser(), message.getTitle(), message.getContent(), message.getCategory());
try {
// 鍚屾鍙戦�佺涓夋柟APP娑堟伅
@@ -1461,7 +1483,7 @@
}
@Override
- public void sendAnnouncement(String fromUser, String toUser, String title, String msgContent) {
+ public void sendAnnouncement(String fromUser, String toUser, String title, String msgContent, String category) {
SysAnnouncement announcement = new SysAnnouncement();
announcement.setTitile(title);
announcement.setMsgContent(msgContent);
@@ -1470,7 +1492,7 @@
announcement.setMsgType(CommonConstant.MSG_TYPE_UESR);
announcement.setSendStatus(CommonConstant.HAS_SEND);
announcement.setSendTime(new Date());
- announcement.setMsgCategory(CommonConstant.MSG_CATEGORY_2);
+ announcement.setMsgCategory(org.apache.commons.lang3.StringUtils.isNotBlank(category) ? category : CommonConstant.MSG_CATEGORY_2);
announcement.setDelFlag(String.valueOf(CommonConstant.DEL_FLAG_0));
sysAnnouncementMapper.insert(announcement);
// 2.鎻掑叆鐢ㄦ埛閫氬憡闃呰鏍囪琛ㄨ褰�
--
Gitblit v1.9.3