This commit is contained in:
zzc 2024-08-22 02:08:21 +08:00
parent 4d7988f6f8
commit 3f10dbc869
2 changed files with 18 additions and 4 deletions

View File

@ -1,5 +1,6 @@
package org.dromara.web.service.impl; package org.dromara.web.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.MapstructUtils;
@ -70,6 +71,17 @@ public class EqEquipmentServiceImpl implements IEqEquipmentService {
public TableDataInfo<EqEquipmentVo> queryPageList(EqEquipmentBo bo, PageQuery pageQuery) { public TableDataInfo<EqEquipmentVo> queryPageList(EqEquipmentBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<EqEquipment> lqw = buildQueryWrapper(bo); LambdaQueryWrapper<EqEquipment> lqw = buildQueryWrapper(bo);
Page<EqEquipmentVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw); Page<EqEquipmentVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
List<EqEquipmentVo> records = result.getRecords();
if (CollUtil.isEmpty(records)) return TableDataInfo.build(result);
//获取遥测数据
for (EqEquipmentVo record : records) {
String equipmentCode = record.getEquipmentCode();
DeviceMsgDto telemetryMsg = iotService.httpTelemetryGetSend(equipmentCode);
record.setStatus(telemetryMsg.getOpenPercentage());
record.setFaultStatus(telemetryMsg.getGarageException());
}
return TableDataInfo.build(result); return TableDataInfo.build(result);
} }

View File

@ -28,14 +28,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
e.user_id, e.user_id,
s.nick_name, s.nick_name,
e.user_name, e.user_name,
COUNT(*) AS bind_num, -- 设备总数 COUNT(e.equipment_id) AS bind_num, -- 设备总数
SUM(CASE WHEN e.line_status = 0 THEN 1 ELSE 0 END) AS offline_num, -- 离线个数 SUM(CASE WHEN e.line_status = 0 THEN 1 ELSE 0 END) AS offline_num, -- 离线个数
SUM(CASE WHEN e.line_status = 1 THEN 1 ELSE 0 END) AS online_num -- 在线个数 SUM(CASE WHEN e.line_status = 1 THEN 1 ELSE 0 END) AS online_num -- 在线个数
FROM FROM
eq_equipment e sys_user s
JOIN left JOIN
sys_user s ON e.user_id = s.user_id eq_equipment e
ON e.user_id = s.user_id
<where> <where>
s.user_type='app_user'
<if test="nickName != null and nickName != ''"> <if test="nickName != null and nickName != ''">
AND s.nick_name like AND s.nick_name like
CONCAT('%', #{nickName}, '%') CONCAT('%', #{nickName}, '%')