| | |
| | | package com.oying.modules.message.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.oying.modules.message.domain.MessageOrderBuyer; |
| | | import com.oying.modules.message.domain.MessageOrderSeller; |
| | | import com.oying.utils.FileUtil; |
| | | import lombok.RequiredArgsConstructor; |
| | |
| | | import com.oying.modules.message.service.MessageOrderSellerService; |
| | | import com.oying.modules.message.domain.dto.MessageOrderSellerQueryCriteria; |
| | | import com.oying.modules.message.mapper.MessageOrderSellerMapper; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.poi.util.Beta; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import com.oying.utils.PageUtil; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import java.util.*; |
| | | import java.io.IOException; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.ArrayList; |
| | | import java.util.LinkedHashMap; |
| | | |
| | | import com.oying.utils.PageResult; |
| | | |
| | | /** |
| | |
| | | * @author 李萌 |
| | | * @date 2025-05-20 |
| | | **/ |
| | | @Slf4j |
| | | @Service |
| | | @RequiredArgsConstructor |
| | | public class MessageOrderSellerServiceImpl extends ServiceImpl<MessageOrderSellerMapper, MessageOrderSeller> implements MessageOrderSellerService { |
| | | |
| | | private final MessageOrderSellerMapper messageOrderSellerMapper; |
| | | |
| | | |
| | | |
| | | |
| | | @Override |
| | | public PageResult<MessageOrderSeller> queryAll(MessageOrderSellerQueryCriteria criteria, Page<Object> page){ |
| | |
| | | public MessageOrderSeller findByOrderId(Integer orderId) { |
| | | return baseMapper.selectOne(new QueryWrapper<MessageOrderSeller>().eq("order_id", orderId)); |
| | | } |
| | | |
| | | @Override |
| | | public List<MessageOrderSeller> findByStoreId(String storeId) { |
| | | return messageOrderSellerMapper.findByStoreId(storeId); |
| | | } |
| | | |
| | | @Override |
| | | public boolean updateMessageOrderSellerRead(Integer orderId) { |
| | | return messageOrderSellerMapper.updateMessageOrderSellerRead(orderId); |
| | | } |
| | | |
| | | /** |
| | | * 保存或更新 MessageOrderSeller 记录。 |
| | | * <p> |
| | | * 该方法根据传入的 MessageOrderSeller 对象,将数据插入到数据库中。 |
| | | * 如果记录已存在,则更新;如果不存在,则插入新记录。 |
| | | * </p> |
| | | * <p> |
| | | * 必须字段: |
| | | * - orderId:订单 ID |
| | | * - storeId:店铺 ID |
| | | * </p> |
| | | * <p> |
| | | * 可选字段: |
| | | * - messageType:消息类型 : 暂时不用 |
| | | * - messageContent:消息内容 : "订单已提交" :"支付成功" 商家已接单 骑手已接单".......com.oying.modules.message.common.OrderStatusEnum |
| | | * - link:链接 |
| | | * - flag:标志字段(默认值为未读 0) |
| | | * </p> |
| | | * |
| | | * @param resources MessageOrderSeller 对象,包含需要保存或更新的数据。 |
| | | * @return true 表示保存成功,false 表示保存失败。 |
| | | * |
| | | * 目前插入orderId storeId messageContent即可,其他保留--------- |
| | | */ |
| | | @Override |
| | | public boolean saveMessageOrderSellerByOrderIdAndStoreId(MessageOrderSeller resources) { |
| | | |
| | | try { |
| | | // 1. 判断重复的记录是否存在 |
| | | // // messageType此处不用 |
| | | long count = this.lambdaQuery() |
| | | .eq(MessageOrderSeller::getOrderId, resources.getOrderId()) |
| | | .eq(MessageOrderSeller::getStoreId, resources.getStoreId()) |
| | | .eq(MessageOrderSeller::getMessageContent, resources.getMessageContent()) |
| | | .eq(MessageOrderSeller::getFlag, 0) // 未读 |
| | | .count(); |
| | | |
| | | //存在 不插入 |
| | | if (count > 0) { |
| | | log.warn("消息已存在,跳过保存:{}", |
| | | resources); |
| | | return false; |
| | | }else{ |
| | | return messageOrderSellerMapper.saveMessageOrderSellerByOrderIdAndStoreId(resources); |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | log.error("保存消息异常", |
| | | e); |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @Override |
| | | public boolean updateReadStatusById(Integer id) { |
| | | return messageOrderSellerMapper.updateReadStatusById(id); |
| | | } |
| | | |
| | | |
| | | |
| | | } |