From 3e194c0902c307b0cfa2ec14bf303310eb1fb6e9 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期三, 26 十月 2022 16:52:35 +0800 Subject: [PATCH] 解决用户权限问题 --- ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java | 48 +++++++++++++++++++++++++++++++++++++----------- 1 files changed, 37 insertions(+), 11 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 f8b0e1a..f25618d 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,17 +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("鏈尮閰嶅埌璇ョ被鍨�"); @@ -70,7 +69,34 @@ 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; } -- Gitblit v1.8.0