From acad75793d64779c8c8b19a98a9d74dc12a8cd5e Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期二, 01 十一月 2022 22:19:12 +0800 Subject: [PATCH] 违章统计 --- ycl-platform/src/main/java/com/ycl/service/message/impl/MessageServiceImpl.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 48 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 f8b0e1a..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,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,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