From 7b520eb8bee476d92a5af734f12965072bd2f08a Mon Sep 17 00:00:00 2001 From: lld <15027638633@163.com> Date: Sat, 4 Apr 2026 00:58:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E6=97=B6=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- agri-admin/src/main/resources/application.yml | 4 +-- .../controller/SysMessageController.java | 19 +++++++++++++ .../system/service/impl/AgriServiceImpl.java | 27 +++++++++---------- .../mapper/system/SysMessageMapper.xml | 2 +- 4 files changed, 35 insertions(+), 17 deletions(-) diff --git a/agri-admin/src/main/resources/application.yml b/agri-admin/src/main/resources/application.yml index 73d6138..e37908d 100644 --- a/agri-admin/src/main/resources/application.yml +++ b/agri-admin/src/main/resources/application.yml @@ -6,8 +6,8 @@ agri: version: 3.9.0 # 版权年份 copyrightYear: 2025 - # 文件路径 示例( Windows配置D:/agri/uploadPath,Linux配置 /home/agri/uploadPath) - profile: D:/agri/uploadPath + # 文件路径 示例( Windows配置D:/agri/uploadPath,Linux配置 /opt/agri/uploadPath) + profile: /opt/agri/uploadPath # 获取ip地址开关 addressEnabled: true # 验证码类型 math 数字计算 char 字符验证 diff --git a/agri-system/src/main/java/com/agri/system/controller/SysMessageController.java b/agri-system/src/main/java/com/agri/system/controller/SysMessageController.java index 0379f5b..f82b9b7 100644 --- a/agri-system/src/main/java/com/agri/system/controller/SysMessageController.java +++ b/agri-system/src/main/java/com/agri/system/controller/SysMessageController.java @@ -1,9 +1,11 @@ package com.agri.system.controller; +import java.time.LocalDate; import java.util.List; import java.util.Queue; import javax.servlet.http.HttpServletResponse; +import com.agri.common.utils.DateUtils; import com.agri.common.utils.SecurityUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.apache.commons.lang3.StringUtils; @@ -136,6 +138,7 @@ public class SysMessageController extends BaseController sysMessageService.lambdaUpdate() .eq(SysMessage::getReceiver, SecurityUtils.getUserId()) .eq(SysMessage::getReadStatus, 0) + .eq(sysMessage.getId()!=null, SysMessage::getId, sysMessage.getId()) .eq(StringUtils.isNotBlank(sysMessage.getMsgType()), SysMessage::getMsgType, sysMessage.getMsgType()) .set(SysMessage::getReadStatus, 1) @@ -161,4 +164,20 @@ public class SysMessageController extends BaseController List list = sysMessageService.getMsgOverview(sysMessage); return success(list); } + + @PreAuthorize("@ss.hasPermi('warn:message:list')") + @GetMapping("/unReadCount") + public AjaxResult unReadCount() + { + + LocalDate localDate = LocalDate.now().minusDays(7); + LocalDate localDate1 = LocalDate.now().plusDays(1); + Long count = sysMessageService.lambdaQuery() + .eq(SysMessage::getReceiver, SecurityUtils.getUserId()) + .eq(SysMessage::getReadStatus, 0) + .geSql(SysMessage::getCreateTime, "DATE_SUB(CURDATE(), INTERVAL 7 DAY)") + .leSql(SysMessage::getCreateTime, "DATE_ADD(CURDATE(), INTERVAL 1 DAY)") + .count(); + return success(count); + } } diff --git a/agri-system/src/main/java/com/agri/system/service/impl/AgriServiceImpl.java b/agri-system/src/main/java/com/agri/system/service/impl/AgriServiceImpl.java index 4ac966e..8438b6e 100644 --- a/agri-system/src/main/java/com/agri/system/service/impl/AgriServiceImpl.java +++ b/agri-system/src/main/java/com/agri/system/service/impl/AgriServiceImpl.java @@ -47,21 +47,20 @@ public class AgriServiceImpl implements AgriService { List msgList = new ArrayList<>(); for (SysAgriInfo agriInfo : offlineList) { - if (Objects.equals(agriInfo.getImei(), "864865085003722")) { - continue; + for (SysUserAgri userAgri : agriUser) { + if (userAgri.getAgriId().equals(agriInfo.getImei())) { + SysMessage message = new SysMessage(); + message.setImei(agriInfo.getImei()); + message.setTitle(agriInfo.getTitle()); + message.setMsgType("status"); + message.setReadStatus(0L); + message.setContent("大棚【" + agriInfo.getAgriName() + " - " + agriInfo.getImei() + "】" + agriInfo.getMsg()); + message.setImgUrl(""); + message.setLinkUrl(UrlEncodeUtil.buildControlPageUrl(agriInfo, "/pages/home/control/index?agriInfo=")); + message.setReceiver(userAgri.getUserId()); + msgList.add(message); + } } - SysMessage message = new SysMessage(); - message.setImei(agriInfo.getImei()); - message.setTitle(agriInfo.getTitle()); - message.setMsgType("status"); - message.setReadStatus(0L); - message.setContent("大棚【" + agriInfo.getAgriName() + " - " + agriInfo.getImei() + "】" + agriInfo.getMsg()); - message.setImgUrl(""); - message.setLinkUrl(UrlEncodeUtil.buildControlPageUrl(agriInfo, "/pages/home/control/index?agriInfo=")); - for (SysUserAgri userAgri : agriUser){ - message.setReceiver(userAgri.getUserId()); - } - msgList.add(message); } if (CollectionUtils.isNotEmpty(msgList)) { messageService.saveBatch(msgList); diff --git a/agri-system/src/main/resources/mapper/system/SysMessageMapper.xml b/agri-system/src/main/resources/mapper/system/SysMessageMapper.xml index 674c7ef..107481a 100644 --- a/agri-system/src/main/resources/mapper/system/SysMessageMapper.xml +++ b/agri-system/src/main/resources/mapper/system/SysMessageMapper.xml @@ -32,7 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and receiver = #{receiver} and title = #{title} and msg_type = #{msgType} - + and DATE_FORMAT(create_time, '%Y-%m-%d') <= CURDATE() and DATE_FORMAT(create_time, '%Y-%m-%d') >= DATE_SUB(CURDATE(), INTERVAL 7 DAY)