|
@@ -3,6 +3,7 @@ package com.xy.service;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.text.StrBuilder;
|
|
import cn.hutool.core.text.StrBuilder;
|
|
|
|
+import cn.hutool.core.util.BooleanUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -18,6 +19,7 @@ import com.xy.dto.DeviceInfoDto;
|
|
import com.xy.dto.DeviceRegisterDto;
|
|
import com.xy.dto.DeviceRegisterDto;
|
|
import com.xy.dto.DeviceStatusDto;
|
|
import com.xy.dto.DeviceStatusDto;
|
|
import com.xy.dto.DeviceSysinfoDto;
|
|
import com.xy.dto.DeviceSysinfoDto;
|
|
|
|
+import com.xy.entity.DeviceErrorsRecord;
|
|
import com.xy.entity.DeviceInfo;
|
|
import com.xy.entity.DeviceInfo;
|
|
import com.xy.entity.DeviceStatus;
|
|
import com.xy.entity.DeviceStatus;
|
|
import com.xy.entity.SysDictRedis;
|
|
import com.xy.entity.SysDictRedis;
|
|
@@ -68,6 +70,8 @@ public class DeviceInfoServiceImpl extends ServiceImpl<DeviceInfoMapper, DeviceI
|
|
|
|
|
|
private final DeviceRegisterServiceImpl deviceRegisterService;
|
|
private final DeviceRegisterServiceImpl deviceRegisterService;
|
|
|
|
|
|
|
|
+ private final DeviceErrorsRecordServiceImpl deviceErrorsRecordService;
|
|
|
|
+
|
|
private final RedisService<String> redisService;
|
|
private final RedisService<String> redisService;
|
|
|
|
|
|
private final String keyPrefix = "device:history:";
|
|
private final String keyPrefix = "device:history:";
|
|
@@ -450,10 +454,7 @@ public class DeviceInfoServiceImpl extends ServiceImpl<DeviceInfoMapper, DeviceI
|
|
vo.setPlaceLineId(v.getPlaceLineId());
|
|
vo.setPlaceLineId(v.getPlaceLineId());
|
|
//线路下的设备列表
|
|
//线路下的设备列表
|
|
List<DeviceInfoDto.MercHomeDeviceVo> deviceInfos = Beans.copy(DeviceInfoDto.MercHomeDeviceVo.class, deviceMap.get(placeLineId));
|
|
List<DeviceInfoDto.MercHomeDeviceVo> deviceInfos = Beans.copy(DeviceInfoDto.MercHomeDeviceVo.class, deviceMap.get(placeLineId));
|
|
-// deviceInfos.stream().map(DeviceInfoDto.MercHomeDeviceVo::getDeviceId);
|
|
|
|
- //状态信息
|
|
|
|
-// DeviceStatusDto.Vo deviceStatus = deviceStatusService.obj(new DeviceStatusDto.Vo().setDeviceId(deviceInfo.getDeviceId())).getData();
|
|
|
|
-// deviceStatusService.listByIds()
|
|
|
|
|
|
+
|
|
deviceInfos.forEach(device -> {
|
|
deviceInfos.forEach(device -> {
|
|
//设备类型 反显
|
|
//设备类型 反显
|
|
SysDictRedis dictDeviceType = SysDictUtils.get(DictConsts.DEVICE_TYPE, String.valueOf(device.getDeviceType()));
|
|
SysDictRedis dictDeviceType = SysDictUtils.get(DictConsts.DEVICE_TYPE, String.valueOf(device.getDeviceType()));
|
|
@@ -484,6 +485,29 @@ public class DeviceInfoServiceImpl extends ServiceImpl<DeviceInfoMapper, DeviceI
|
|
return list(Wrappers.<DeviceInfo>lambdaQuery().eq(DeviceInfo::getMercId, mercId));
|
|
return list(Wrappers.<DeviceInfo>lambdaQuery().eq(DeviceInfo::getMercId, mercId));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ @ApiOperation("小程序商户设备搜索")
|
|
|
|
+ @Override
|
|
|
|
+ public R<PageBean<DeviceInfoDto.Vo2>> mercDeviceSearchPage(@RequestBody DeviceInfoDto.Page page) {
|
|
|
|
+ //小程序独有查询字段 缺货状态:stockStatus ,是否查故障设备:fault
|
|
|
|
+ Boolean fault = page.getFault();
|
|
|
|
+ Long mercId = page.getMercId();
|
|
|
|
+ if (BooleanUtil.isTrue(fault)) {
|
|
|
|
+ //查询故障设备
|
|
|
|
+ List<DeviceErrorsRecord> deviceErrorsRecords = deviceErrorsRecordService.list(Wrappers.<DeviceErrorsRecord>lambdaQuery()
|
|
|
|
+ .eq(mercId != null, DeviceErrorsRecord::getMercId, page.getMercId()));
|
|
|
|
+ List<Long> deviceIdList = deviceErrorsRecords.stream().map(DeviceErrorsRecord::getDeviceId).collect(Collectors.toList());
|
|
|
|
+ if (CollUtil.isEmpty(deviceIdList)) {
|
|
|
|
+ return R.ok(new PageBean<>());
|
|
|
|
+ }
|
|
|
|
+ page.setDeviceIdList(deviceIdList);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ PageBean<DeviceInfoDto.Vo2> pageBean = queryPage(page);
|
|
|
|
+ return R.ok(pageBean);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
private PageBean<DeviceInfoDto.Vo2> queryPage(DeviceInfoDto.Page page) {
|
|
private PageBean<DeviceInfoDto.Vo2> queryPage(DeviceInfoDto.Page page) {
|
|
IPage<DeviceInfoQueryPage> iPage = baseMapper.queryPage(toIPage(page.getPage()), page);
|
|
IPage<DeviceInfoQueryPage> iPage = baseMapper.queryPage(toIPage(page.getPage()), page);
|
|
return toPageBean(DeviceInfoDto.Vo2.class, iPage);
|
|
return toPageBean(DeviceInfoDto.Vo2.class, iPage);
|