|
@@ -1,5 +1,6 @@
|
|
|
package vip.xiaonuo.coldchain.core.alarm.service;
|
|
|
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
@@ -15,6 +16,7 @@ import vip.xiaonuo.coldchain.core.alarm.mapper.SensorAlarmMapper;
|
|
|
import vip.xiaonuo.coldchain.modular.app.param.Message;
|
|
|
import vip.xiaonuo.coldchain.modular.app.param.MessagePageParam;
|
|
|
import vip.xiaonuo.coldchain.modular.app.param.MessageType;
|
|
|
+import vip.xiaonuo.coldchain.modular.monitornotice.param.MonitorNoticePageParam;
|
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
|
|
|
|
import java.util.stream.Collectors;
|
|
@@ -31,35 +33,19 @@ import java.util.stream.Collectors;
|
|
|
@Slf4j
|
|
|
public class SensorAlarmServiceImpl extends ServiceImpl<SensorAlarmMapper, SensorAlarm> implements SensorAlarmService {
|
|
|
|
|
|
+ /**
|
|
|
+ * app接口
|
|
|
+ * @param messagePageParam
|
|
|
+ * @return
|
|
|
+ */
|
|
|
@Override
|
|
|
public Page<Message> getMessages(MessagePageParam messagePageParam) {
|
|
|
-
|
|
|
if (messagePageParam.getType().equalsIgnoreCase("system")) {
|
|
|
return null;
|
|
|
} else {
|
|
|
// 创建分页对象
|
|
|
Page<Message> page = new Page<>(messagePageParam.getCurrent(), messagePageParam.getSize());
|
|
|
- // 创建查询条件
|
|
|
- QueryWrapper<SensorAlarm> queryWrapper = new QueryWrapper<SensorAlarm>().checkSqlInjection();
|
|
|
- // 获取当前登录用户ID
|
|
|
- String userId = StpLoginUserUtil.getLoginUser().getId();
|
|
|
- // 查询创建用户为当前用户的记录
|
|
|
- queryWrapper.lambda().eq(SensorAlarm::getCreateUser, userId);
|
|
|
- // 如果有关键词,进行模糊查询或者设备名等字段的精确查询
|
|
|
- if (ObjectUtil.isNotEmpty(messagePageParam.getKeyword())) {
|
|
|
- queryWrapper.lambda().and(q -> q.like(SensorAlarm::getMessage, messagePageParam.getKeyword()).or().like(SensorAlarm::getDeviceName, messagePageParam.getKeyword()));
|
|
|
- }
|
|
|
- // 时间查询
|
|
|
- if (StrUtil.isNotBlank(messagePageParam.getStartTime())) {
|
|
|
- queryWrapper.lambda().ge(SensorAlarm::getCreateTime, DateUtil.parse(messagePageParam.getStartTime(), "yyyy-MM-dd HH:mm:ss")); // greater than or equal to start time
|
|
|
- }
|
|
|
- if (StrUtil.isNotBlank(messagePageParam.getStartTime())) {
|
|
|
- queryWrapper.lambda().le(SensorAlarm::getCreateTime, DateUtil.parse(messagePageParam.getEndTime(), "yyyy-MM-dd HH:mm:ss")); // greater than or equal to start time
|
|
|
- }
|
|
|
- // 按创建时间降序排序
|
|
|
- queryWrapper.lambda().orderByDesc(SensorAlarm::getCreateTime);
|
|
|
- // 执行查询,传入分页对象
|
|
|
- Page<SensorAlarm> sensorAlarmPage = this.page(CommonPageRequest.defaultPage(), queryWrapper);
|
|
|
+ Page<SensorAlarm> sensorAlarmPage = getSensorAlarmPage(messagePageParam);
|
|
|
// 将查询结果转换成Message类型的分页对象
|
|
|
Page<Message> resultPage = new Page<>();
|
|
|
resultPage.setSize(messagePageParam.getSize());
|
|
@@ -71,6 +57,41 @@ public class SensorAlarmServiceImpl extends ServiceImpl<SensorAlarmMapper, Senso
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * pc接口
|
|
|
+ * @param messagePageParam
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public Page<SensorAlarm> getMessages(MonitorNoticePageParam monitorNoticePageParam) {
|
|
|
+ MessagePageParam messagePageParam = BeanUtil.copyProperties(monitorNoticePageParam, MessagePageParam.class);
|
|
|
+ return getSensorAlarmPage(messagePageParam);
|
|
|
+ }
|
|
|
+
|
|
|
+ public Page<SensorAlarm> getSensorAlarmPage(MessagePageParam messagePageParam) {
|
|
|
+ // 创建查询条件
|
|
|
+ QueryWrapper<SensorAlarm> queryWrapper = new QueryWrapper<SensorAlarm>().checkSqlInjection();
|
|
|
+ // 获取当前登录用户ID
|
|
|
+ String userId = StpLoginUserUtil.getLoginUser().getId();
|
|
|
+ // 查询创建用户为当前用户的记录
|
|
|
+ queryWrapper.lambda().eq(SensorAlarm::getCreateUser, userId);
|
|
|
+ // 如果有关键词,进行模糊查询或者设备名等字段的精确查询
|
|
|
+ if (ObjectUtil.isNotEmpty(messagePageParam.getKeyword())) {
|
|
|
+ queryWrapper.lambda().and(q -> q.like(SensorAlarm::getMessage, messagePageParam.getKeyword()).or().like(SensorAlarm::getDeviceName, messagePageParam.getKeyword()));
|
|
|
+ }
|
|
|
+ // 时间查询
|
|
|
+ if (StrUtil.isNotBlank(messagePageParam.getStartTime())) {
|
|
|
+ queryWrapper.lambda().ge(SensorAlarm::getCreateTime, DateUtil.parse(messagePageParam.getStartTime(), "yyyy-MM-dd HH:mm:ss")); // greater than or equal to start time
|
|
|
+ }
|
|
|
+ if (StrUtil.isNotBlank(messagePageParam.getStartTime())) {
|
|
|
+ queryWrapper.lambda().le(SensorAlarm::getCreateTime, DateUtil.parse(messagePageParam.getEndTime(), "yyyy-MM-dd HH:mm:ss")); // greater than or equal to start time
|
|
|
+ }
|
|
|
+ // 按创建时间降序排序
|
|
|
+ queryWrapper.lambda().orderByDesc(SensorAlarm::getCreateTime);
|
|
|
+ // 执行查询,传入分页对象
|
|
|
+ Page<SensorAlarm> sensorAlarmPage = this.page(CommonPageRequest.defaultPage(), queryWrapper);
|
|
|
+ return sensorAlarmPage;
|
|
|
+ }
|
|
|
+
|
|
|
private Message convertToMessage(SensorAlarm sensorAlarm) {
|
|
|
Message message = new Message();
|
|
|
message.setType(MessageType.ALERT);
|