大屏组塔接口

This commit is contained in:
syruan 2024-09-28 18:05:25 +08:00
parent 566f3d7d00
commit 9b87c503c5
4 changed files with 63 additions and 3 deletions

View File

@ -108,6 +108,15 @@ public class ProjectDetailsViewController extends BaseController {
return projectDetailsViewService.getTowerDevAttributeWarnRecord(proId);
}
/**
* 查询组塔监测设备历史数据 / 每监测项各10条数据
* @param devId 设备id
*/
@GetMapping("/getTowerDevAttributeRecordByDevice")
public AjaxResult getTowerDevAttributeRecordByDevice(Integer devId) {
return projectDetailsViewService.getTowerDevAttributeRecordByDeviceId(devId);
}
/**
* 查询组塔监测设备 -- 当日监测数据
* @param proId 工程id

View File

@ -20,15 +20,24 @@ import java.util.Map;
@Mapper
public interface TbDeviceDataRecord {
/**
* 查询工程下设备信息
* @param proId 工程id
* @param powerId 杆塔id
* @param devType 设备类型code
*/
List<Map<String,String>> queryDevInfoByProject(@Param("proId") Integer proId, @Param("powerId") Integer powerId, @Param("devType") Integer devType);
/**
* 安全隐患预测记录信息
* @param record
* @return
* @param record 记录id
*/
List<WarnPredictionRecordVo> getWarnPredictionRecord(WarnPredictionRecordVo record);
/**
* 查询设备报警记录
* @param deviceWarnRecordVo 设备预警vo信息
*/
List<DeviceWarnRecordVo> getDeviceWarnRecord(DeviceWarnRecordVo deviceWarnRecordVo);
/**
@ -59,6 +68,11 @@ public interface TbDeviceDataRecord {
*/
List<DevAttributeVo> getTowerDevAttributeWarnRecord(@Param("proId") Integer proId);
/**
* 查询组塔监测设备历史各项监测数据每监测项10条记录
*/
List<DevAttributeVo> getTowerDevAttributeRecordByDeviceId(@Param("devId") Integer devId);
/**
* 查询基坑/有限空间 监测设备历史各项监测数据每监测项10条记录
*/

View File

@ -105,6 +105,20 @@ public class ProjectDetailsViewServiceImpl {
return AjaxResult.success(records);
}
public AjaxResult getTowerDevAttributeRecordByDeviceId(Integer devId) {
List<DevAttributeVo> records = tbDeviceDataRecordMapper.getTowerDevAttributeRecordByDeviceId(devId);
if (records.isEmpty()) {
return AjaxResult.error("暂无数据");
}
for (DevAttributeVo record : records) {
// 截取时间 定义x轴
if (record != null && record.getJcTime() != null) {
// 从yyyy-MM-dd hh:mm:ss 截取小时分钟
}
}
return AjaxResult.success(records);
}
public AjaxResult getPitDevAttributeWarnRecord(Integer proId) {
List<DevAttributeVo> records = tbDeviceDataRecordMapper.getPitDevAttributeWarnRecord(proId);
if (records.isEmpty()) {

View File

@ -15,7 +15,10 @@
LEFT JOIN tb_bd_device_record tbdr ON device.bd_id = tbdr.id
</if>
LEFT JOIN tb_project project ON project.id = tbdr.pro_id AND project.del_flag = 0
WHERE project.id = #{proId} and device.dev_type = #{devType} and device.del_flag = 0
WHERE project.id = #{proId} and device.del_flag = 0
<if test="devType != null">
and device.dev_type = #{devType}
</if>
</select>
<select id="getDeviceWarnRecord" resultType="com.bonus.screen.vo.DeviceWarnRecordVo">
@ -183,5 +186,25 @@
ORDER BY
tddr.create_time DESC
</select>
<select id="getTowerDevAttributeRecordByDeviceId" resultType="com.bonus.base.entity.DevAttributeVo">
SELECT
tddr.dev_id as devId,tddr.dev_name as devName,tddr.dev_type as devType,tddr.attribute_name as jcName,
tddr.attribute_val as jcValue,tddr.is_warn as isWarn,tddr.create_time as jcTime
FROM
tb_dev_data_record AS tddr
WHERE
tddr.dev_id = #{devId}
AND tddr.dev_type IN ('angle','pull')
AND (
SELECT COUNT(*)
FROM tb_dev_data_record AS sub
WHERE sub.dev_id = tddr.dev_id
AND sub.attribute_name = tddr.attribute_name
AND sub.create_time >= tddr.create_time
) &lt;= 10
ORDER BY
tddr.attribute_name, tddr.create_time DESC;
</select>
</mapper>