From e5040e1387fe195aadf4c98d34ea9f807cfae36c Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期一, 31 十月 2022 15:11:07 +0800
Subject: [PATCH] 修改bug
---
ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java | 61 ++++++++++++++++++++++++------
1 files changed, 49 insertions(+), 12 deletions(-)
diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java
index 50c7c1c..fa273a6 100644
--- a/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java
@@ -5,19 +5,24 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.common.constant.ChannelCode;
+import com.ycl.common.util.CommonUtils;
import com.ycl.dto.message.MessageParam;
import com.ycl.entity.message.Message;
+import com.ycl.entity.user.UmsAdmin;
import com.ycl.exception.ApiException;
import com.ycl.mapper.message.MessageMapper;
+import com.ycl.mapper.user.UmsAdminMapper;
import com.ycl.service.message.IMessageService;
import com.ycl.service.message.Provider;
import com.ycl.service.message.Sender;
import com.ycl.service.message.factory.InnerFactory;
import com.ycl.service.message.factory.MailFactory;
import com.ycl.service.message.factory.SmsFactory;
-import com.ycl.service.user.UmsAdminService;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.stream.Collectors;
/**
* <p>
@@ -30,8 +35,9 @@
@Service
public class MessageServiceImpl extends ServiceImpl<MessageMapper, Message> implements IMessageService {
- @Autowired
- private UmsAdminService adminService;
+
+ @Resource
+ private UmsAdminMapper umsAdminMapper;
@Override
public Message sendMessage(MessageParam messageParam) {
@@ -46,16 +52,10 @@
//閭欢鍙戦��
case ChannelCode.SMS:
provider = new MailFactory();
- //id鎹㈡垚閭鍙�
- //String targetToMail = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode());
- //messageParam.setTargetTo(targetToMail);
break;
- //鐭俊鍙戦��
+ //鐭俊鍙戦��
case ChannelCode.MAIL:
provider = new SmsFactory();
- //id鎹㈡垚鎵嬫満鍙�
- //String targetToPhone = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode());
- //messageParam.setTargetTo(targetToPhone);
break;
default:
throw new ApiException("鏈尮閰嶅埌璇ョ被鍨�");
@@ -69,9 +69,46 @@
public IPage<Message> list(MessageParam messageParam) {
Page<Message> page = new Page<>(messageParam.getCurrent(), messageParam.getPageSize());
LambdaQueryWrapper<Message> queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(Message::getParentId, 0);
+ if (!CommonUtils.isEmpty(messageParam.getHead())) {
+ queryWrapper.eq(Message::getHead, messageParam.getHead());
+ }
+ if (!CommonUtils.isEmpty(messageParam.getChannelCode())) {
+ queryWrapper.eq(Message::getChannelCode, messageParam.getChannelCode());
+ }
+ if (!CommonUtils.isEmpty(messageParam.getStatus())) {
+ queryWrapper.eq(Message::getStatus, messageParam.getStatus());
+ }
+ queryWrapper.orderByDesc(Message::getCreateTime);
Page<Message> result = baseMapper.selectPage(page, queryWrapper);
+ List<Message> messages = result.getRecords();
+ if (!CommonUtils.isEmpty(messages)) {
+ List<Long> ids = messages.stream().map(e -> Long.parseLong(e.getTargetFrom().trim())).collect(Collectors.toList());
+ LambdaQueryWrapper<UmsAdmin> queryUSers = new LambdaQueryWrapper<>();
+ queryUSers.in(UmsAdmin::getId, ids);
+ List<UmsAdmin> users = umsAdminMapper.selectList(queryUSers);
+ if (!CommonUtils.isEmpty(users)) {
+ for (UmsAdmin user : users) {
+ for (Message message : messages) {
+ if (message.getTargetFrom().equals(user.getId()+"")) {
+ message.setTargetFrom(user.getUsername());
+ }
+ }
+ }
+ }
+ }
return result;
}
-
+ @Override
+ public Boolean deleteMessages(List<Long> ids) {
+ LambdaQueryWrapper<Message> queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.in(Message::getId, ids).or().in(Message::getParentId,ids);
+ List<Message> messages = baseMapper.selectList(queryWrapper);
+ if (CommonUtils.isNotEmpty(messages)) {
+ List<Long> deleteIds = messages.stream().map(Message::getId).collect(Collectors.toList());
+ baseMapper.deleteBatchIds(deleteIds);
+ }
+ return true;
+ }
}
--
Gitblit v1.8.0