Browse Source

状态设备增加inAlarm;

zhc
review512jwy@163.com 3 weeks ago
parent
commit
525ab5e21a
  1. 3
      dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/DeviceInfoMapperExt.java
  2. 26
      dongjian-dashboard-back-dao/src/main/resources/mappers/ex/DeviceInfoMapperExt.xml
  3. 3
      dongjian-dashboard-back-model/src/main/java/com/dongjian/dashboard/back/vo/data/DeviceBaStatusData.java
  4. 10
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/common/CommonOpt.java
  5. 4
      dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataBaStatusServiceImpl.java

3
dongjian-dashboard-back-dao/src/main/java/com/dongjian/dashboard/back/dao/ex/DeviceInfoMapperExt.java

@ -13,6 +13,7 @@ import com.dongjian.dashboard.back.vo.data.DeviceBaStatusData;
import com.dongjian.dashboard.back.vo.data.DeviceMeasureData;
import com.dongjian.dashboard.back.vo.device.DeviceVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -38,4 +39,6 @@ public interface DeviceInfoMapperExt extends DeviceInfoMapper {
List<DeviceAlarmData> getDevice4AlarmData(AlarmDataSearchParam pageSearchParam);
List<DeviceAlarmData> getDevice4AlarmDataByGroup(AlarmDataSearchParam pageSearchParam);
List<String> selectAlertingDeviceIds(@Param("deviceIds") List<String> deviceIds);
}

26
dongjian-dashboard-back-dao/src/main/resources/mappers/ex/DeviceInfoMapperExt.xml

@ -295,6 +295,12 @@
,device_info.id desc
</sql>
<sql id="Where_In_Alarm">
(alert_history.handle_status != 3 AND alert_history.handle_status != 4)
OR
(alert_history.handle_status = 4 AND alert_history.retain_alert = 1)
</sql>
<select id="getDevice4AlarmData" resultType="com.dongjian.dashboard.back.vo.data.DeviceAlarmData">
select
<include refid="deviceDataSelect"/>
@ -341,10 +347,7 @@
<include refid="deviceDataCommonWhere"/>
<choose>
<when test="searchType == 1">
AND (
(alert_history.handle_status != 3 AND alert_history.handle_status != 4)
OR (alert_history.handle_status = 4 AND alert_history.retain_alert = 1)
)
AND (<include refid="Where_In_Alarm"/>)
</when>
<when test="searchType == 2">
@ -408,10 +411,7 @@
<include refid="deviceDataCommonWhere"/>
<choose>
<when test="searchType == 1">
AND (
(alert_history.handle_status != 3 AND alert_history.handle_status != 4)
OR (alert_history.handle_status = 4 AND alert_history.retain_alert = 1)
)
AND (<include refid="Where_In_Alarm"/>)
</when>
<when test="searchType == 2">
@ -426,6 +426,16 @@
<include refid="alertHistoryOrder"/>
</select>
<select id="selectAlertingDeviceIds" resultType="java.lang.String">
SELECT DISTINCT LOWER(device_id) AS device_id
FROM alert_history
WHERE device_id IN
<foreach collection="deviceIds" item="deviceId" open="(" close=")" separator=",">
#{deviceId}
</foreach>
AND (<include refid="Where_In_Alarm"/>)
</select>
<!-- 公共字段 -->
<sql id="commonDeviceSelectFields">
device_info.id,

3
dongjian-dashboard-back-model/src/main/java/com/dongjian/dashboard/back/vo/data/DeviceBaStatusData.java

@ -32,4 +32,7 @@ public class DeviceBaStatusData extends BaseData{
@Schema(description = "last stop time", example = "1720000000000", hidden = true)
private String latestTs;
@Schema(description = "0=正常,1=告警", example = "1")
private Integer inAlarm;
}

10
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/common/CommonOpt.java

@ -761,11 +761,11 @@ public class CommonOpt {
return null;
}
return switch (status111) {
case "0" -> "正常";
case "128" -> "サ一ビス停止";
case "64" -> "オーバーライド";
case "32" -> "障害";
case "16" -> "アラ一ム発生中";
case "0" -> "NML";
case "128" -> "MSK";
case "64" -> "OVR";
case "32" -> "TBL";
case "16" -> "ALM";
default -> null;
};
}

4
dongjian-dashboard-back-service/src/main/java/com/dongjian/dashboard/back/service/impl/DeviceDataBaStatusServiceImpl.java

@ -103,6 +103,8 @@ public class DeviceDataBaStatusServiceImpl implements DeviceDataBaStatusService
List<String> deviceIds = resultList.stream()
.map(DeviceBaStatusData::getDeviceId)
.toList();
//查询是否告警
List<String> inAlarmDeviceIds = deviceInfoMapperExt.selectAlertingDeviceIds(deviceIds);
// 查询 111状态 数据
Map<String, String> deviceId85To111Map = commonOpt.buildDeviceId85To111Map(deviceIds);
@ -173,6 +175,8 @@ public class DeviceDataBaStatusServiceImpl implements DeviceDataBaStatusService
data.setContinuousRunningTimeStr(SecondsToHMSConverter.covertSeconds(diff));
}
}
data.setInAlarm(inAlarmDeviceIds.contains(deviceId) ? 1 : 0);
}
}

Loading…
Cancel
Save