From 982313135d1c239fe3b20e4c5664781f92d40aca Mon Sep 17 00:00:00 2001 From: xin <1099200748@qq.com> Date: Thu, 31 Jul 2025 17:17:39 +0800 Subject: [PATCH] Merge branch 'master' into xin --- oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java | 132 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 132 insertions(+), 0 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 new file mode 100644 index 0000000..95d4514 --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/message/service/impl/MesMsgRecordServiceImpl.java @@ -0,0 +1,132 @@ +package com.oying.modules.message.service.impl; + +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.domain.MesMsgRecord; +import com.oying.modules.message.domain.myDto.MesMsgRecordQueryOrderDto; +import com.oying.modules.message.domain.myDto.MesMsgRecordQueryPollDto; +import com.oying.modules.message.domain.myDto.MesMsgRecordQuerySystemDto; +import com.oying.utils.FileUtil; +import com.oying.utils.SecurityUtils; +import lombok.RequiredArgsConstructor; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.oying.modules.message.service.MesMsgRecordService; +import com.oying.modules.message.domain.dto.MesMsgRecordQueryCriteria; +import com.oying.modules.message.mapper.MesMsgRecordMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.oying.utils.PageUtil; + +import java.sql.Timestamp; +import java.util.*; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; + +import com.oying.utils.PageResult; + +/** + * @author 李萌 + * @description 服务实现 + * @date 2025-07-25 + **/ +@Service +@RequiredArgsConstructor +public class MesMsgRecordServiceImpl extends ServiceImpl<MesMsgRecordMapper, MesMsgRecord> implements MesMsgRecordService { + + private final MesMsgRecordMapper mesMsgRecordMapper; + + @Override + public PageResult<MesMsgRecord> queryAll(MesMsgRecordQueryCriteria criteria, Page<Object> page) { + return PageUtil.toPage(mesMsgRecordMapper.findAll(criteria, page)); + } + + @Override + public List<MesMsgRecord> queryAll(MesMsgRecordQueryCriteria criteria) { + return mesMsgRecordMapper.findAll(criteria); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(MesMsgRecord resources) { + mesMsgRecordMapper.insert(resources); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(MesMsgRecord resources) { + MesMsgRecord mesMsgRecord = getById(resources.getId()); + mesMsgRecord.copy(resources); + mesMsgRecordMapper.updateById(mesMsgRecord); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteAll(List<Long> ids) { + mesMsgRecordMapper.deleteBatchIds(ids); + } + + @Override + public void download(List<MesMsgRecord> all, HttpServletResponse response) throws IOException { + List<Map<String, Object>> list = new ArrayList<>(); + for (MesMsgRecord mesMsgRecord : all) { + Map<String, Object> map = new LinkedHashMap<>(); + map.put("模板ID 可无", mesMsgRecord.getTemplateId()); + map.put("接收人ID", mesMsgRecord.getReceiverId()); + map.put("1=买家 2=商户 3=骑手", mesMsgRecord.getPlatform()); + map.put("同模板type", mesMsgRecord.getMsgType()); + map.put("最终标题", mesMsgRecord.getTitle()); + map.put("最终内容", mesMsgRecord.getContent()); + map.put("业务ID 例如订单ID", mesMsgRecord.getBizId()); + map.put("业务类型 ORDER/EVALUATION 等", mesMsgRecord.getBizType()); + map.put("已读 0=未读 1=已读", mesMsgRecord.getIsRead()); + map.put("阅读时间", mesMsgRecord.getReadTime()); + map.put("扩展字段 存跳转链接等", mesMsgRecord.getExtra()); + map.put("创建人", mesMsgRecord.getCreateBy()); + map.put("创建时间", mesMsgRecord.getCreateTime()); + map.put("更新人", mesMsgRecord.getUpdateBy()); + map.put("更新时间", mesMsgRecord.getUpdateTime()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } + + @Override + public List<MesMsgRecordQueryPollDto> PollMes(Long platform) { + return mesMsgRecordMapper.PollMes(platform); + } + + @Override + public void batchMarkRead(Long platform, List<Long> msgIds) { + mesMsgRecordMapper.batchMarkRead(platform, msgIds); + } + + @Override + public PageResult<MesMsgRecordQuerySystemDto> queryAllSysNotice(MesMsgRecordQueryCriteria criteria, Page<Object> page) { + return PageUtil.toPage(mesMsgRecordMapper.queryAllSysNotice(criteria, page)); + } + + @Override + public List<MesMsgRecordQueryOrderDto> queryorder(Long shopId) { + return mesMsgRecordMapper.queryorder(shopId); + } + + @Override + public void insertOrderMsg(String orderNo, OrderStatusEnum content, Long shopId) { + MesMsgRecord record = new MesMsgRecord(); + record.setOrderNo(orderNo); + record.setContent(content.getValue()); // 使用枚举的描述作为消息内容 + 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())); + try { + mesMsgRecordMapper.insert(record); + } catch (Exception e) { + log.error("插入订单消息失败:{}", e); + } + + } +} -- Gitblit v1.9.3