hyingbo
2025-06-04 4601316438d6cce2c8bbd6bd4a20de2378da6b21
我的消息添加状态筛选
已添加1个文件
已修改13个文件
119 ■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/EquipmentWarrantyEndDateAlertJob.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/TechnologyStatusAlart.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcMessageApprovalController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/AnnouncementSendModel.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/vo/OptionsVo.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/EquipmentWarrantyEndDateAlertJob.java
@@ -44,7 +44,7 @@
        messageDTO.setTitle(title);
        messageDTO.setContent(msg);
        messageDTO.setMessageType(MessageSplitTypeEnum.untilMaintenancePeriod.getType());
        messageDTO.setCategory("系统消息");
        messageDTO.setCategory(MessageSplitTypeEnum.untilMaintenancePeriod.getNote());
        messageDTO.setFromUser("到期提醒小助手-小醒");
        messageDTO.setToUser("admin");
        if(equipmentList.size()!=0){
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/TechnologyStatusAlart.java
@@ -65,7 +65,7 @@
            messageDTO.setTitle(title);
            messageDTO.setMessageType(MessageSplitTypeEnum.untilMaintenancePeriod.getType());
            messageDTO.setContent(msg);
            messageDTO.setCategory("技术状态鉴定消息");
            messageDTO.setCategory(MessageSplitTypeEnum.untilMaintenancePeriod.getNote());
            messageDTO.setFromUser("admin");
            messageDTO.setToUser(sysUser.getUsername());
            if(needAlerts.size()!=0){
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/ThirdMaintenaceAlart.java
@@ -69,7 +69,7 @@
            messageDTO.setTitle(title);
            messageDTO.setMessageType(MessageSplitTypeEnum.untilMaintenancePeriod.getType());
            messageDTO.setContent(msg);
            messageDTO.setCategory("三保消息");
            messageDTO.setCategory(MessageSplitTypeEnum.untilMaintenancePeriod.getNote());
            messageDTO.setFromUser("admin");
            messageDTO.setToUser(sysUser.getUsername());
            if(needAlerts.size()!=0){
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcMessageApprovalController.java
@@ -181,7 +181,7 @@
            MessageDTO messageDTO = new MessageDTO();
            messageDTO.setTitle("设备状态长时间未变化原因上报确认!");
            messageDTO.setMessageType(MessageSplitTypeEnum.statusPermanentlyNoChange.getType());
            messageDTO.setCategory("消息");
            messageDTO.setCategory(MessageSplitTypeEnum.statusPermanentlyNoChange.getNote());
            LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
            messageDTO.setFromUser(user.getUsername());
            LoginUser userById = sysBaseApi.getUserById(approverId);
@@ -205,7 +205,7 @@
            //上报原因发送消息给确认人
            MessageDTO messageDTO = new MessageDTO();
            messageDTO.setTitle("设备状态消息!");
            messageDTO.setCategory("消息");
            messageDTO.setCategory(MessageSplitTypeEnum.statusPermanentlyNoChange.getNote());
            messageDTO.setFromUser("admin");
            messageDTO.setMessageType(MessageSplitTypeEnum.statusPermanentlyNoChange.getType());
            messageDTO.setToUser(mdcMessageApproval.getUpdateBy());
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java
@@ -135,7 +135,7 @@
                            // ä¸ŠæŠ¥
                            MessageDTO messageDTO = new MessageDTO();
                            messageDTO.setTitle("【设备异常提醒】" + productionName + "车间设备编号为 [" + mdcEquipment.getEquipmentId() + "] çš„设备利用率低于正常值!");
                            messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
                            messageDTO.setCategory(MessageSplitTypeEnum.deviceRunError.getNote());
                            messageDTO.setMessageType(MessageSplitTypeEnum.deviceRunError.getType());
                            messageDTO.setFromUser("admin");
                            messageDTO.setToUser("admin");
@@ -176,7 +176,7 @@
                            for (SysUser sysUser : adminList) {
                                MessageDTO messageDTO = new MessageDTO();
                                messageDTO.setTitle("【设备异常提醒】" + productionName + "车间设备编号为 [" + mdcEquipment.getEquipmentId() + "] çš„设备状态长期无变化!");
                                messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
                                messageDTO.setCategory(MessageSplitTypeEnum.deviceRunError.getNote());
                                messageDTO.setMessageType(MessageSplitTypeEnum.deviceRunError.getType());
                                messageDTO.setFromUser("admin");
                                messageDTO.setToUser(sysUser.getUsername());
@@ -186,7 +186,7 @@
                        } else {
                            MessageDTO messageDTO = new MessageDTO();
                            messageDTO.setTitle("【设备异常提醒】" + productionName + "车间设备编号为 [" + mdcEquipment.getEquipmentId() + "] çš„设备状态长期无变化!");
                            messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
                            messageDTO.setCategory(MessageSplitTypeEnum.deviceRunError.getNote());
                            messageDTO.setMessageType(MessageSplitTypeEnum.deviceRunError.getType());
                            messageDTO.setFromUser("admin");
                            messageDTO.setToUser("admin");
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java
@@ -92,7 +92,7 @@
                if (mdcEquipmentDto != null && StringUtils.isNotBlank(mdcEquipmentDto.getSpindlespeed()) && StringUtils.isNotBlank(mdcEquipmentDto.getActualspindlespeed())) {
                    MessageDTO messageDTO = new MessageDTO();
                    messageDTO.setTitle("【设备异常提醒】" + productionName + "车间设备 [" + mdcEquipment.getEquipmentId() + "] è¿è¡Œè½¬é€Ÿï¼");
                    messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
                    messageDTO.setCategory(MessageSplitTypeEnum.deviceRunError.getNote());
                    messageDTO.setMessageType(MessageSplitTypeEnum.deviceRunError.getType());
                    messageDTO.setFromUser("admin");
                    messageDTO.setToUser("admin");
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java
@@ -798,7 +798,7 @@
                        Integer min = mdcEquipmentThreshold.getMinThreshold();
                        MessageDTO messageDTO = new MessageDTO();
                        messageDTO.setTitle("【设备异常提醒】" + productionName + "车间设备编号为 [" + mdcEquipment.getEquipmentId() + "] çš„设备" + mdcEquipmentThreshold.getChineseName() + "报警!");
                        messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
                        messageDTO.setCategory(MessageSplitTypeEnum.deviceRunError.getNote());
                        messageDTO.setMessageType(MessageSplitTypeEnum.deviceRunError.getType());
                        messageDTO.setFromUser("admin");
                        messageDTO.setToUser("admin");
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysAnnouncementSendController.java
@@ -8,8 +8,11 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.compress.utils.Lists;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.constant.DataBaseConstant;
import org.jeecg.common.constant.WebsocketConst;
@@ -20,6 +23,7 @@
import org.jeecg.modules.system.entity.*;
import org.jeecg.modules.system.model.AnnouncementSendModel;
import org.jeecg.modules.system.service.*;
import org.jeecg.modules.system.vo.OptionsVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
@@ -244,6 +248,18 @@
    }
    /**
     * @功能:获取消息类型下拉
     * @return
     */
    @AutoLog(value = "获取消息类型下拉")
    @ApiOperation(value = "获取消息类型下拉", notes = "获取消息类型下拉")
    @GetMapping(value = "/getMessageType")
    public Result<List<OptionsVo>> getMessageType() {
        List<OptionsVo> result = sysAnnouncementSendService.getMessageType();
        return Result.OK(result);
    }
    /**
     * @功能:一键已读
     * @return
     */
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysAnnouncementSendMapper.java
@@ -53,4 +53,7 @@
     * æ ¹æ®æ¶ˆæ¯å†…容查询消息通知
     */
    SysAnnouncement findLastMessage(@Param("messageContent") String messageContent);
    List<String> getMessageType();
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml
@@ -60,9 +60,13 @@
        <if test="announcementSendModel.bizSource !=null and announcementSendModel.bizSource =='isNoBpm'">
            and (sa.bus_type != 'bpm' or sa.bus_type is null)
        </if>
        <if test="announcementSendModel.msgCategory !=null and announcementSendModel.msgCategory != ''">
            and sa.msg_category = #{announcementSendModel.msgCategory}
        </if>
        <if test="announcementSendModel.msgCategoryList.size != 0">
            and sa.msg_category in (
            <foreach item="msgCategory" collection="announcementSendModel.msgCategoryList" separator=",">
                #{msgCategory}
            </foreach>
            )
        </if>
       order by sas.read_flag,sa.send_time desc
    </select>
@@ -128,5 +132,11 @@
    <select id="findLastMessage" resultType="org.jeecg.modules.system.entity.SysAnnouncement">
        SELECT TOP 1 * FROM sys_announcement WHERE msg_content = #{messageContent} ORDER BY create_time DESC;
    </select>
    <select id="getMessageType" resultType="java.lang.String">
        SELECT DISTINCT
            msg_category
        FROM
            sys_announcement
    </select>
</mapper>
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/AnnouncementSendModel.java
@@ -7,6 +7,7 @@
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.List;
/**
 * @Description: ç”¨æˆ·é€šå‘Šé˜…读标记表
@@ -47,6 +48,10 @@
     * æ¶ˆæ¯ç±»åž‹1:通知公告2:系统消息
     */
    private java.lang.String msgCategory;
    /**
     * æ¶ˆæ¯ç±»åž‹1:通知公告2:系统消息
     */
    private List<String> msgCategoryList;
    /**
     * ä¸šåŠ¡id
     */
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysAnnouncementSendService.java
@@ -8,6 +8,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.system.vo.OptionsVo;
/**
 * @Description: ç”¨æˆ·é€šå‘Šé˜…读标记表
@@ -41,4 +42,5 @@
    List<SysAnnouncementSend> getPrimaryInfo(String userId,List<String> msgCategoryList);
    List<OptionsVo> getMessageType();
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysAnnouncementSendServiceImpl.java
@@ -1,13 +1,18 @@
package org.jeecg.modules.system.service.impl;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import org.apache.commons.compress.utils.Lists;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.modules.system.entity.SysAnnouncementSend;
import org.jeecg.modules.system.mapper.SysAnnouncementSendMapper;
import org.jeecg.modules.system.model.AnnouncementSendModel;
import org.jeecg.modules.system.service.ISysAnnouncementSendService;
import org.jeecg.modules.system.vo.OptionsVo;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -33,6 +38,16 @@
    @Override
    public Page<AnnouncementSendModel> getMyAnnouncementSendPage(Page<AnnouncementSendModel> page,
            AnnouncementSendModel announcementSendModel) {
        List<String> msgCategory = Lists.newArrayList();
        if ("系统消息".equals(announcementSendModel.getMsgCategory())) {
            msgCategory.addAll(Arrays.asList("系统消息", "2"));
        }else if ("通知公告".equals(announcementSendModel.getMsgCategory())) {
            msgCategory.addAll(Arrays.asList("通知公告", "1"));
        }else if (StringUtils.isNotBlank(announcementSendModel.getMsgCategory())){
            msgCategory.addAll(Arrays.asList(announcementSendModel.getMsgCategory()));
        }
        announcementSendModel.setMsgCategoryList(msgCategory);
         return page.setRecords(sysAnnouncementSendMapper.getMyAnnouncementSendList(page, announcementSendModel));
    }
@@ -46,4 +61,28 @@
        return baseMapper.getPrimaryInfo(userId,msgCategoryList);
    }
    @Override
    public List<OptionsVo> getMessageType() {
        Set<OptionsVo> result = new HashSet<>();
        List<String> messageTypeList = this.baseMapper.getMessageType();
        if (messageTypeList != null && !messageTypeList.isEmpty()) {
            for (String messageType : messageTypeList) {
                OptionsVo optionsVo = new OptionsVo();
                String label = messageType;
                String value = messageType;
                if (CommonConstant.MSG_CATEGORY_2.equals(messageType)) {
                    label = "系统消息";
                    value = "系统消息";
                } else if (CommonConstant.MSG_CATEGORY_1.equals(messageType)) {
                    label = "通知公告";
                    value = "通知公告";
                }
                optionsVo.setLabel(label);
                optionsVo.setValue(value);
                result.add(optionsVo);
            }
        }
        return new ArrayList<>(result);
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/vo/OptionsVo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
package org.jeecg.modules.system.vo;
import lombok.Data;
/**
 * @author: LiuS
 * @create: 2023-09-18 10:35
 */
@Data
public class OptionsVo {
    private String value;
    private String label;
}