From f28edc2cbe546c58e60065bd3cbb04125e346077 Mon Sep 17 00:00:00 2001
From: leomonM <2233021400@qq.com>
Date: Mon, 25 Aug 2025 21:28:15 +0800
Subject: [PATCH] 消息通知
---
oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java | 75 ++++++++++++++++++-------------------
1 files changed, 37 insertions(+), 38 deletions(-)
diff --git a/oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java b/oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java
index 4fb071b..c3f6531 100644
--- a/oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java
+++ b/oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java
@@ -4,7 +4,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.oying.modules.message.common.MesReadEnum;
import com.oying.modules.message.common.MesTypeEnum;
-import com.oying.modules.message.common.OrderStatusEnum;
+import com.oying.modules.message.common.MsgStatusEnum;
import com.oying.modules.message.domain.MesMsgRecord;
import com.oying.modules.message.domain.dto.MesMsgRecordQueryCriteria;
import com.oying.modules.message.domain.myDto.MesMsgRecordQueryOrderDto;
@@ -12,6 +12,7 @@
import com.oying.modules.message.domain.myDto.MesMsgRecordQuerySystemDto;
import com.oying.modules.message.mapper.MesMsgRecordMapper;
import com.oying.modules.message.service.MesMsgRecordService;
+import com.oying.modules.sh.domain.Order;
import com.oying.utils.FileUtil;
import com.oying.utils.PageResult;
import com.oying.utils.PageUtil;
@@ -113,26 +114,26 @@
return mesMsgRecordMapper.queryorder(shopId);
}
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void insertOrderMsg(String orderNo, OrderStatusEnum content, Long shopId) {
-// MesMsgRecord record = new MesMsgRecord();
-// record.setOrderNo(orderNo);
-// record.setContent(content.getValue()); // 使用枚举的描述作为消息内容
-// record.setContentKey(String.valueOf(content.getKey()));// 使用枚举的描述作为消息内容key
-// record.setShopId(shopId);
-// record.setMsgType(MesTypeEnum.ORDER.getKey()); // 订单消息类型为2
-// record.setIsRead(MesReadEnum.UNREAD.getKey()); // 默认未读 0
-// record.setCreateTime(new Timestamp(System.currentTimeMillis()));
-// record.setUpdateTime(new Timestamp(System.currentTimeMillis()));
-// mesMsgRecordMapper.insert(record); // 让异常直接往外抛
-//
-// }
-
-
@Override
public List<MesMsgRecordQueryPollDto> PollMesAll(Long platform) {
return mesMsgRecordMapper.PollMesAll(platform);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void insertOrderMsg(Order order, MsgStatusEnum content, MesTypeEnum typeEnum) {
+ MesMsgRecord record = new MesMsgRecord();
+ record.setOrderNo(order.getOrderNum());
+ record.setContent(content.getValue()); // 使用枚举的描述作为消息内容
+ record.setContentKey(String.valueOf(content.getKey()));// 使用枚举的描述作为消息内容key
+ record.setBuyerId(String.valueOf(order.getUserId())); // 处理空值情况
+ record.setBuyerName(order.getUsername());
+ record.setRiderId(order.getRiderId() != null ? String.valueOf(order.getRiderId()) : null);
+ record.setRiderName(order.getRiderName() != null ? order.getRiderName() : null);
+ record.setShopId(order.getStoreId());
+ record.setMsgType(typeEnum.getKey()); // 订单消息类型为2
+ record.setIsRead(MesReadEnum.UNREAD.getKey()); // 默认未读 0
+ mesMsgRecordMapper.insert(record);
}
// 设置一个买家状态为下单 不存在则插入 买家id name 订单属性 店铺号
@@ -141,8 +142,8 @@
public void setBuyerStatusOrderSubmitted(String buyerId, String buyerName, String orderNo, Long shopId, String riderId, String riderName) {
MesMsgRecord record = new MesMsgRecord();
record.setOrderNo(orderNo);
- record.setContent(OrderStatusEnum.MERCHANT_ORDER_SUBMITTED.getValue()); // 使用枚举的描述作为消息内容
- record.setContentKey(String.valueOf(OrderStatusEnum.MERCHANT_ORDER_SUBMITTED.getKey()));// 使用枚举的描述作为消息内容key
+ record.setContent(MsgStatusEnum.MERCHANT_ACCEPTED.getValue()); // 使用枚举的描述作为消息内容
+ record.setContentKey(String.valueOf(MsgStatusEnum.MERCHANT_ACCEPTED.getKey()));// 使用枚举的描述作为消息内容key
record.setBuyerId(buyerId != null ? buyerId : ""); // 处理空值情况
record.setMsgType(MesTypeEnum.ORDER.getKey()); // 订单消息类型为2
record.setIsRead(MesReadEnum.UNREAD.getKey()); // 默认未读 0
@@ -168,8 +169,8 @@
public void setBuyerStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, String riderId, String riderName) {
MesMsgRecord record = new MesMsgRecord();
record.setOrderNo(orderNo);
- record.setContent(OrderStatusEnum.BUYER_ORDER_STATUS_CHANGED.getValue()); // 使用枚举的描述作为消息内容
- record.setContentKey(String.valueOf(OrderStatusEnum.BUYER_ORDER_STATUS_CHANGED.getKey()));// 使用枚举的描述作为消息内容key
+ record.setContent(MsgStatusEnum.BUYER_ORDER_DELIVERED.getValue()); // 使用枚举的描述作为消息内容
+ record.setContentKey(String.valueOf(MsgStatusEnum.BUYER_ORDER_DELIVERED.getKey()));// 使用枚举的描述作为消息内容key
record.setBuyerId(buyerId != null ? buyerId : ""); // 处理空值情况
record.setMsgType(MesTypeEnum.ORDER.getKey()); // 订单消息类型为2
record.setIsRead(MesReadEnum.UNREAD.getKey()); // 默认未读 0
@@ -192,12 +193,12 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public void setBuyerStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, OrderStatusEnum content, String riderId, String riderName) {
+ public void setBuyerStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, MsgStatusEnum content, String riderId, String riderName) {
//content只能设置为如下 "商品已送达" "订单已完成" "订单送达"
if (content == null ||
- (!content.equals(OrderStatusEnum.BUYER_ORDER_STATUS_CHANGED) &&
- !content.equals(OrderStatusEnum.BUYER_ORDER_COMPLETED) &&
- !content.equals(OrderStatusEnum.BUYER_ORDER_DELIVERED))) {
+ (
+ !content.equals(MsgStatusEnum.BUYER_ORDER_COMPLETED) &&
+ !content.equals(MsgStatusEnum.BUYER_ORDER_DELIVERED))) {
throw new IllegalArgumentException("content只能设置为如下 \"商品已送达\" \"订单已完成\" \"订单送达\"");
}
MesMsgRecord record = new MesMsgRecord();
@@ -226,12 +227,12 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public void setSellerStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, OrderStatusEnum content, String riderId, String riderName) {
+ public void setSellerStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, MsgStatusEnum content, String riderId, String riderName) {
//content只能为 "订单已提交" "商家已接单" 商家已备货"
if (content == null ||
- (content != OrderStatusEnum.MERCHANT_ORDER_SUBMITTED &&
- content != OrderStatusEnum.MERCHANT_ACCEPTED &&
- content != OrderStatusEnum.MERCHANT_PREPARED)) {
+ (
+ content != MsgStatusEnum.MERCHANT_ACCEPTED &&
+ content != MsgStatusEnum.MERCHANT_PREPARED)) {
throw new IllegalArgumentException("content只能为 \"订单已提交\" \"商家已接单\" 商家已备货\"");
}
MesMsgRecord record = new MesMsgRecord();
@@ -260,16 +261,14 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public void setRiderStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, OrderStatusEnum content, String riderId, String riderName) {
+ public void setRiderStatusOrderDelivered(String buyerId, String buyerName, String orderNo, Long shopId, MsgStatusEnum content, String riderId, String riderName) {
//content只能为 "骑手已接单" "骑手已取货" "骑手已到店" "订单已取消" "距离最晚送达时间不足1小时" "距离最晚送达时间不足30分钟"
if (content == null ||
- (content != OrderStatusEnum.RIDER_PENDING_ACCEPTANCE &&
- content != OrderStatusEnum.RIDER_PICKED_UP &&
- content != OrderStatusEnum.RIDER_ARRIVED &&
- content != OrderStatusEnum.RIDER_ORDER_CANCELLED &&
- content != OrderStatusEnum.RIDER_DELIVERY_WARNING_1H &&
- content != OrderStatusEnum.RIDER_DELIVERY_WARNING_30MIN)) {
- throw new IllegalArgumentException("content只能为 \"骑手已接单\" \"骑手已取货\" \"骑手已到店\" \"订单已取消\" \"距离最晚送达时间不足1小时\" \"距离最晚送达时间不足30分钟\"");
+ (content != MsgStatusEnum.RIDER_PENDING_ACCEPTANCE &&
+ content != MsgStatusEnum.RIDER_PICKED_UP &&
+ content != MsgStatusEnum.RIDER_ARRIVED &&
+ content != MsgStatusEnum.RIDER_ORDER_CANCELLED && content != MsgStatusEnum.RIDER_DELIVERY_WARNING)) {
+ throw new IllegalArgumentException("content只能为 \"骑手已接单\" \"骑手已取货\" \"骑手已到店\" \"订单已取消\" \"订单已超时\" ");
}
MesMsgRecord record = new MesMsgRecord();
record.setOrderNo(orderNo);
--
Gitblit v1.9.3