feat(device): 增加除尘器设备数据处理支持
- 删除多余的 PageData 对象创建,简化 listTargetByEquId 方法调用- 增加对除尘器设备阈值数据的查询与处理逻辑- 优化设备ID匹配逻辑,明确区分高炉与除尘器设备 - 增加PLC_NAME字段以完善设备信息- 实现实时数据表的插入与更新逻辑,确保数据同步 - 扩展TbIronPlcMapper接口及XML映射文件,支持实时数据操作- 更新TagDescription枚举描述,提高标签可读性 -优化MesDeviceMonitoringMapper接口结构,移除冗余注释dev
parent
9ac702069b
commit
edb9196ffe
|
|
@ -22,7 +22,6 @@ public class AppPosiDeviceController {
|
|||
@Resource
|
||||
private TbIronPlcMapper tbIronPlcMapper;
|
||||
|
||||
|
||||
@Resource
|
||||
private MesDeviceMonitoringMapper mesDeviceMonitoringMapper;
|
||||
|
||||
|
|
@ -157,8 +156,7 @@ public class AppPosiDeviceController {
|
|||
String location = parma.get("location");
|
||||
// 根据设备的地点和td1或者是t2td1判断出设备对应系统中的哪个
|
||||
// 查出所有一氧化碳设备的阈值配置
|
||||
PageData equPd = new PageData();
|
||||
List<PageData> targetAllList = tbIronPlcMapper.listTargetByEquId(equPd);
|
||||
List<PageData> targetAllList = tbIronPlcMapper.listTargetByEquId();
|
||||
// 定义一个存储集合用于存储要入库的数据
|
||||
List<Map<String, Object>> dataList = new ArrayList<>();
|
||||
// TODO: 这里要读表作对比然后存入数据库
|
||||
|
|
|
|||
|
|
@ -5,11 +5,45 @@ import com.zcloud.entity.PageData;
|
|||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface TbIronPlcMapper {
|
||||
|
||||
|
||||
ArrayList<HashMap<String,String>> listAll ();
|
||||
|
||||
List<PageData> listTargetByEquId(PageData pd);
|
||||
}
|
||||
List<PageData> listTargetByEquId();
|
||||
|
||||
List<PageData> listDustDeviceAll();
|
||||
|
||||
/**
|
||||
* 根据设备ID查询实时数据
|
||||
* @param equipmentId 设备ID
|
||||
* @return 数据列表
|
||||
*/
|
||||
List<PageData> listRealtimeDataByEquipmentId(String equipmentId);
|
||||
|
||||
/**
|
||||
* 批量插入数据到实时表
|
||||
* @param dataList 数据列表
|
||||
*/
|
||||
void insertBatchToRealtime(List<Map<String, Object>> dataList);
|
||||
|
||||
/**
|
||||
* 单条插入数据到实时表
|
||||
* @param data 数据
|
||||
*/
|
||||
void insertToRealtime(Map<String, Object> data);
|
||||
|
||||
/**
|
||||
* 批量更新从MES获取的数据
|
||||
* @param dataList 数据列表
|
||||
*/
|
||||
void updateBatchToRealtime(List<Map<String, Object>> dataList);
|
||||
|
||||
/**
|
||||
* 单条更新从MES获取的数据
|
||||
* @param data 数据
|
||||
*/
|
||||
void updateToRealtime(Map<String, Object> data);
|
||||
}
|
||||
|
|
@ -6,9 +6,6 @@ import org.springframework.stereotype.Repository;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* MES数据访问接口
|
||||
*/
|
||||
@Repository
|
||||
public interface MesDeviceMonitoringMapper {
|
||||
|
||||
|
|
@ -24,4 +21,5 @@ public interface MesDeviceMonitoringMapper {
|
|||
* @param dataList 数据列表
|
||||
*/
|
||||
void saveBatchFromMes(List<Map<String, Object>> dataList);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -137,9 +137,10 @@ public class MesDataScheduled extends IJobHandler {
|
|||
|
||||
XxlJobHelper.log("从MES系统获取到{}条数据", mesDataList.size());
|
||||
|
||||
// 查询填报的所有阈值数据
|
||||
PageData equPd = new PageData();
|
||||
List<PageData> targetAllList = tbIronPlcMapper.listTargetByEquId(equPd);
|
||||
// 查询高炉、转炉、精炼炉、一氧化碳报警器设备填报的所有阈值数据
|
||||
List<PageData> targetAllList = tbIronPlcMapper.listTargetByEquId();
|
||||
// 查询除尘器设备填报的所有阈值数据
|
||||
List<PageData> targetDustAllList = tbIronPlcMapper.listDustDeviceAll();
|
||||
|
||||
// 1#精炼炉
|
||||
List<PageData> jll1TargetList = targetAllList.stream()
|
||||
|
|
@ -175,6 +176,7 @@ public class MesDataScheduled extends IJobHandler {
|
|||
.filter(item -> item.get("EQUIPMENT_ID") != null && item.get("EQUIPMENT_ID").equals("67c2e8315ca57d68201762e4ce9db351"))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
|
||||
// 保存数据到数据库
|
||||
if (!mesDataList.isEmpty()) {
|
||||
ArrayList<Map<String, Object>> mesSaveList = new ArrayList<>();
|
||||
|
|
@ -190,7 +192,6 @@ public class MesDataScheduled extends IJobHandler {
|
|||
mesData.put("INSERT_TIME", DateUtil.date2Str(new Date()));
|
||||
mesData.put("WARNING", 0); // 是否告警 要完善相关告警逻辑进行判断
|
||||
mesData.put("GATHER_TIME", 5);
|
||||
mesData.put("PLC_NAME", "");
|
||||
mesData.put("OVERVIEW_OF_ALERTS", "");
|
||||
// 下面是在已经填报的
|
||||
String[] parts = key.split("_", 2); // split("_", 2) 限制分割为2部分
|
||||
|
|
@ -211,23 +212,33 @@ public class MesDataScheduled extends IJobHandler {
|
|||
} else if (suffix.equals("A2") || suffix.equals("B2")) {
|
||||
mesData.put("EQUIPMENT_ID", "2c83b99df54e80a674be5657b11db55c");
|
||||
collect = zl2TargetList.stream().filter(item -> item.getString("TARGET_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("1#")) {
|
||||
} else if (key.contains("1#高炉")) {
|
||||
mesData.put("EQUIPMENT_ID", "c6825a6e1c959c3e5c800433516b2e8d");
|
||||
collect = gl1TargetList.stream().filter(item -> item.getString("TARGET_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("2#")) {
|
||||
} else if (key.contains("2#高炉")) {
|
||||
mesData.put("EQUIPMENT_ID", "7face71b8cb7b47872cbe94f9b16831d");
|
||||
collect = gl2TargetList.stream().filter(item -> item.getString("TARGET_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("3#")) {
|
||||
} else if (key.contains("3#高炉")) {
|
||||
mesData.put("EQUIPMENT_ID", "2cb052450581597064b510118c076e2a");
|
||||
collect = gl3TargetList.stream().filter(item -> item.getString("TARGET_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("4#")) {
|
||||
} else if (key.contains("4#高炉")) {
|
||||
mesData.put("EQUIPMENT_ID", "67c2e8315ca57d68201762e4ce9db351");
|
||||
collect = gl4TargetList.stream().filter(item -> item.getString("TARGET_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("1#除尘器")) {
|
||||
mesData.put("EQUIPMENT_ID", "72c06a71cadd49ccb8a202e9f5f45553");
|
||||
collect = targetDustAllList.stream().filter(item -> item.getString("PLC_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("2#除尘器")) {
|
||||
mesData.put("EQUIPMENT_ID", "06fdb464c7a74abbb2b82e19a27ec2d3");
|
||||
collect = targetDustAllList.stream().filter(item -> item.getString("PLC_NAME").equals(key)).collect(Collectors.toList());
|
||||
} else if (key.contains("3#除尘器")) {
|
||||
mesData.put("EQUIPMENT_ID", "d0a99c9671ea429e9bbbc7ec69a085b9");
|
||||
collect = targetDustAllList.stream().filter(item -> item.getString("PLC_NAME").equals(key)).collect(Collectors.toList());
|
||||
}
|
||||
if (collect.size() > 0) {
|
||||
PageData pageData = collect.get(0);
|
||||
mesData.put("IPCDEVICE_ID", pageData.getString("IPCDEVICE_ID"));
|
||||
mesData.put("PLC_ID", pageData.getString("PLC_ID"));
|
||||
mesData.put("PLC_NAME", pageData.getString("PLC_NAME"));
|
||||
mesData.put("TARGET_TYPE", pageData.getString("TARGET_TYPE"));
|
||||
mesData.put("TARGET_PLACE", pageData.getString("TARGET_PLACE"));
|
||||
mesData.put("TARGET_UNIT", pageData.getString("TARGET_UNIT"));
|
||||
|
|
@ -247,6 +258,7 @@ public class MesDataScheduled extends IJobHandler {
|
|||
} else {
|
||||
mesData.put("IPCDEVICE_ID", "");
|
||||
mesData.put("PLC_ID", "");
|
||||
mesData.put("PLC_NAME", "");
|
||||
mesData.put("TARGET_TYPE", "");
|
||||
mesData.put("TARGET_PLACE", "");
|
||||
mesData.put("TARGET_UNIT", "");
|
||||
|
|
@ -269,6 +281,47 @@ public class MesDataScheduled extends IJobHandler {
|
|||
}
|
||||
|
||||
// 处理接过来的MES数据
|
||||
// 先查询实时数据表中是否已有对应设备的数据
|
||||
List<Map<String, Object>> insertList = new ArrayList<>();
|
||||
List<Map<String, Object>> updateList = new ArrayList<>();
|
||||
|
||||
for (Map<String, Object> data : mesSaveList) {
|
||||
String equipmentId = (String) data.get("EQUIPMENT_ID");
|
||||
if (equipmentId != null && !equipmentId.isEmpty()) {
|
||||
// 查询该设备在实时数据表中是否已存在
|
||||
List<PageData> existingData = tbIronPlcMapper.listRealtimeDataByEquipmentId(equipmentId);
|
||||
if (existingData != null && !existingData.isEmpty()) {
|
||||
// 如果存在,则加入更新列表
|
||||
updateList.add(data);
|
||||
} else {
|
||||
// 如果不存在,则加入插入列表
|
||||
insertList.add(data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 对于不存在的数据执行插入操作到实时表
|
||||
if (!insertList.isEmpty()) {
|
||||
int insertCount = 0;
|
||||
for (Map<String, Object> data : insertList) {
|
||||
// 使用单条插入方法因为批量插入拼接sql会有乱码执行不成功
|
||||
tbIronPlcMapper.insertToRealtime(data);
|
||||
insertCount++;
|
||||
}
|
||||
XxlJobHelper.log("成功插入{}条新数据到实时数据表", insertCount);
|
||||
}
|
||||
|
||||
// 对于已存在的数据执行更新操作
|
||||
if (!updateList.isEmpty()) {
|
||||
int updateCount = 0;
|
||||
for (Map<String, Object> data : updateList) {
|
||||
// 使用单条更新方法因为批量更新拼接sql会有乱码执行不成功
|
||||
tbIronPlcMapper.updateToRealtime(data);
|
||||
updateCount++;
|
||||
}
|
||||
XxlJobHelper.log("成功更新{}条实时数据表中的数据", updateCount);
|
||||
}
|
||||
// 保存MES数据
|
||||
mesDeviceMonitoringMapper.saveBatchFromMes(mesSaveList);
|
||||
XxlJobHelper.log("成功保存{}条MES数据到本地数据库", mesSaveList.size());
|
||||
|
||||
|
|
|
|||
|
|
@ -2,23 +2,23 @@ package com.zcloud.scheduled.dataDocking;
|
|||
|
||||
public enum TagDescription {
|
||||
// 定义枚举常量,TAG值作为名称,描述作为参数
|
||||
TAG325("1#炉顶西压力"),
|
||||
TAG326("1#炉顶东压力"),
|
||||
TAG325("1#高炉顶西压力"),
|
||||
TAG326("1#高炉顶东压力"),
|
||||
TAG317("1#高炉南放散开关"),
|
||||
TAG318("1#高炉北放散开关"),
|
||||
TAG327("2#炉顶西压力"),
|
||||
TAG328("2#炉顶东压力"),
|
||||
TAG327("2#高炉顶西压力"),
|
||||
TAG328("2#高炉顶东压力"),
|
||||
TAG319("2#高炉南放散开关"),
|
||||
TAG320("2#高炉北放散开关"),
|
||||
TAG329("3#炉顶西压力"),
|
||||
TAG330("3#炉顶东压力"),
|
||||
TAG329("3#高炉顶西压力"),
|
||||
TAG330("3#高炉顶东压力"),
|
||||
TAG321("3#高炉南放散开关"),
|
||||
TAG322("3#高炉北放散开关"),
|
||||
TAG331("4#煤气上升管东北压力"),
|
||||
TAG332("4#煤气上升管东南压力"),
|
||||
TAG333("4#煤气上升管西北压力"),
|
||||
TAG334("4#煤气上升管西南压力"),
|
||||
TAG323("4#高炉南放散开关"),
|
||||
TAG331("4#高炉煤气上升管东北压力"),
|
||||
TAG332("4#高炉煤气上升管东南压力"),
|
||||
TAG333("4#高炉煤气上升管西北压力"),
|
||||
TAG334("4#高炉煤气上升管西南压力"),
|
||||
TAG323("4#高炉高炉南放散开关"),
|
||||
TAG324("4#高炉北放散开关"),
|
||||
// 除尘器参数枚举
|
||||
TAG335("1#除尘器进风口压力"),
|
||||
|
|
|
|||
|
|
@ -22,7 +22,8 @@
|
|||
mt.TARGET_DESCRIPTION,
|
||||
mt.BIT_NO,
|
||||
mt.SIGNAL_TYPE,
|
||||
mt.ALARM_VALUE
|
||||
mt.ALARM_VALUE,
|
||||
mt.REPORT_ID
|
||||
FROM
|
||||
tb_iron_plc p
|
||||
LEFT JOIN tb_iron_equipment_info e on p.EQUIPMENT_ID = e.EQUIPMENT_ID
|
||||
|
|
@ -31,43 +32,160 @@
|
|||
p.CORPINFO_ID = '499d43c24fab49f59391ce49fb401837' and p.ISDELETE = 0 and mt.ISDELETE = 0
|
||||
</select>
|
||||
|
||||
<select id="listDustDeviceAll" resultType="com.zcloud.entity.PageData">
|
||||
SELECT
|
||||
dds.DEVICE_SENSOR_ID as PLC_ID,
|
||||
dds.SENSOR_NAME as PLC_NAME,
|
||||
dds.SENSOR_CODE as IPCDEVICE_ID,
|
||||
dds.DEVICE_ID as EQUIPMENT_ID,
|
||||
dd.DEVICE_TYPE,
|
||||
ddsa.RULE_NAME as TARGET_NAME,
|
||||
dds.SENSOR_TYPE as TARGET_TYPE,
|
||||
dds.INDICATOR_POSITION as TARGET_PLACE,
|
||||
dds.UNIT_VALUE as TARGET_UNIT,
|
||||
ddsa.HIGH_ALARM as THRESHOLD_UP_LIMIT,
|
||||
ddsa.HIGH_HIGH_ALARM as THRESHOLD_UP_UP_LIMIT,
|
||||
ddsa.LOW_ALARM as THRESHOLD_DOWN_LIMIT,
|
||||
ddsa.LOW_LOW_ALARM as THRESHOLD_DOWN_DOWN_LIMIT,
|
||||
dds.DESCRIPTION as TARGET_DESCRIPTION,
|
||||
dds.TAG_NUMBER as BIT_NO,
|
||||
dds.SIGNAL_TYPE,
|
||||
ddsa.SWITCH_ALARM_VALUE as ALARM_VALUE,
|
||||
dds.DISABLED_STATUS as TARGET_STATUS,
|
||||
dds.CORPINFO_ID,
|
||||
dds.DATA_ACCESS_CODE as REPORT_ID
|
||||
FROM
|
||||
dust_device_sensor dds
|
||||
LEFT JOIN dust_device dd on dd.DEVICE_ID = dds.DEVICE_ID
|
||||
LEFT JOIN dust_device_sensor_alarm_rule ddsa on ddsa.DEVICE_SENSOR_ID = dds.DEVICE_SENSOR_ID
|
||||
WHERE
|
||||
dds.CORPINFO_ID = '499d43c24fab49f59391ce49fb401837' and dds.ISDELETE = 0
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<!-- 查询填报的数据上下限高低值范围 -->
|
||||
<select id="listTargetByEquId" parameterType="com.zcloud.entity.PageData" resultType="com.zcloud.entity.PageData">
|
||||
select
|
||||
p.MONITORING_ID,
|
||||
p.IPCDEVICE_ID,
|
||||
<select id="listTargetByEquId" resultType="com.zcloud.entity.PageData">
|
||||
SELECT
|
||||
p.PLC_ID,
|
||||
plc.EQUIPMENT_ID,
|
||||
p.TARGET_NAME,
|
||||
p.TARGET_TYPE,
|
||||
p.TARGET_PLACE,
|
||||
p.TARGET_UNIT,
|
||||
p.THRESHOLD_UP_LIMIT,
|
||||
p.THRESHOLD_UP_UP_LIMIT,
|
||||
p.THRESHOLD_DOWN_LIMIT,
|
||||
p.THRESHOLD_DOWN_DOWN_LIMIT,
|
||||
p.RANGE_UP,
|
||||
p.RANGE_DOWN,
|
||||
p.TARGET_DESCRIPTION,
|
||||
p.BIT_NO,
|
||||
p.SIGNAL_TYPE,
|
||||
p.ALARM_VALUE,
|
||||
p.TARGET_STATUS,
|
||||
p.PLC_NAME,
|
||||
p.IPCDEVICE_ID,
|
||||
p.EQUIPMENT_ID,
|
||||
e.DEVICE_TYPE,
|
||||
mt.TARGET_NAME,
|
||||
mt.TARGET_TYPE,
|
||||
mt.TARGET_PLACE,
|
||||
mt.TARGET_UNIT,
|
||||
mt.THRESHOLD_UP_LIMIT,
|
||||
mt.THRESHOLD_UP_UP_LIMIT,
|
||||
mt.THRESHOLD_DOWN_LIMIT,
|
||||
mt.THRESHOLD_DOWN_DOWN_LIMIT,
|
||||
mt.RANGE_UP,
|
||||
mt.RANGE_DOWN,
|
||||
mt.TARGET_DESCRIPTION,
|
||||
mt.BIT_NO,
|
||||
mt.SIGNAL_TYPE,
|
||||
mt.ALARM_VALUE,
|
||||
mt.TARGET_STATUS,
|
||||
p.CORPINFO_ID,
|
||||
p.CREATOR,
|
||||
p.CREATTIME,
|
||||
p.OPERATOR,
|
||||
p.OPERATTIME,
|
||||
p.ISDELETE,
|
||||
p.REPORT_ID
|
||||
from
|
||||
tb_iron_monitoring_target p
|
||||
left join tb_iron_plc plc ON p.PLC_ID = plc.PLC_ID
|
||||
where
|
||||
p.ISDELETE = 0
|
||||
and
|
||||
plc.ISDELETE = 0
|
||||
mt.REPORT_ID
|
||||
FROM
|
||||
tb_iron_plc p
|
||||
LEFT JOIN tb_iron_equipment_info e on p.EQUIPMENT_ID = e.EQUIPMENT_ID
|
||||
LEFT JOIN tb_iron_monitoring_target mt on mt.PLC_ID = p.PLC_ID
|
||||
WHERE
|
||||
p.CORPINFO_ID = '499d43c24fab49f59391ce49fb401837' and p.ISDELETE = 0 and mt.ISDELETE = 0
|
||||
</select>
|
||||
|
||||
<!-- 根据设备ID查询实时数据 -->
|
||||
<select id="listRealtimeDataByEquipmentId" parameterType="java.lang.String" resultType="com.zcloud.entity.PageData">
|
||||
SELECT * FROM tb_iron_device_realtime_sxgt
|
||||
WHERE EQUIPMENT_ID = #{equipmentId}
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 单条插入数据到实时表 -->
|
||||
<insert id="insertToRealtime" parameterType="java.util.Map">
|
||||
INSERT INTO tb_iron_device_realtime_sxgt (
|
||||
MONITORING_ID,
|
||||
TARGET_NAME,
|
||||
TARGET_PLACE,
|
||||
TARGET_UNIT,
|
||||
SIGNAL_TYPE,
|
||||
CURRENT_VALUE,
|
||||
ALARM_VALUE,
|
||||
THRESHOLD_UP_LIMIT,
|
||||
THRESHOLD_UP_UP_LIMIT,
|
||||
THRESHOLD_DOWN_LIMIT,
|
||||
THRESHOLD_DOWN_DOWN_LIMIT,
|
||||
RANGE_UP,
|
||||
RANGE_DOWN,
|
||||
PROCESSING_TIME,
|
||||
INSERT_TIME,
|
||||
PLC_ID,
|
||||
WARNING,
|
||||
GATHER_TIME,
|
||||
CORPINFO_ID,
|
||||
IPCDEVICE_ID,
|
||||
PLC_NAME,
|
||||
PROCESSING_BATCH_ID,
|
||||
OVERVIEW_OF_ALERTS,
|
||||
EQUIPMENT_ID
|
||||
)
|
||||
VALUES (
|
||||
#{MONITORING_ID, jdbcType=CHAR},
|
||||
#{TARGET_NAME, jdbcType=VARCHAR},
|
||||
#{TARGET_PLACE, jdbcType=VARCHAR},
|
||||
#{TARGET_UNIT, jdbcType=VARCHAR},
|
||||
#{SIGNAL_TYPE, jdbcType=VARCHAR},
|
||||
#{CURRENT_VALUE, jdbcType=VARCHAR},
|
||||
#{ALARM_VALUE, jdbcType=VARCHAR},
|
||||
#{THRESHOLD_UP_LIMIT, jdbcType=VARCHAR},
|
||||
#{THRESHOLD_UP_UP_LIMIT, jdbcType=VARCHAR},
|
||||
#{THRESHOLD_DOWN_LIMIT, jdbcType=VARCHAR},
|
||||
#{THRESHOLD_DOWN_DOWN_LIMIT, jdbcType=VARCHAR},
|
||||
#{RANGE_UP, jdbcType=VARCHAR},
|
||||
#{RANGE_DOWN, jdbcType=VARCHAR},
|
||||
#{PROCESSING_TIME, jdbcType=VARCHAR},
|
||||
STR_TO_DATE(#{INSERT_TIME}, '%Y-%m-%d %H:%i:%s'),
|
||||
#{PLC_ID, jdbcType=CHAR},
|
||||
#{WARNING, jdbcType=CHAR},
|
||||
#{GATHER_TIME, jdbcType=VARCHAR},
|
||||
#{CORPINFO_ID, jdbcType=VARCHAR},
|
||||
#{IPCDEVICE_ID, jdbcType=VARCHAR},
|
||||
#{PLC_NAME, jdbcType=VARCHAR},
|
||||
#{PROCESSING_BATCH_ID, jdbcType=VARCHAR},
|
||||
#{OVERVIEW_OF_ALERTS, jdbcType=VARCHAR},
|
||||
#{EQUIPMENT_ID, jdbcType=VARCHAR}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 单条更新MES获取的数据 -->
|
||||
<update id="updateToRealtime" parameterType="java.util.Map">
|
||||
UPDATE tb_iron_device_realtime_sxgt
|
||||
SET
|
||||
TARGET_NAME = #{TARGET_NAME, jdbcType=VARCHAR},
|
||||
TARGET_PLACE = #{TARGET_PLACE, jdbcType=VARCHAR},
|
||||
TARGET_UNIT = #{TARGET_UNIT, jdbcType=VARCHAR},
|
||||
SIGNAL_TYPE = #{SIGNAL_TYPE, jdbcType=VARCHAR},
|
||||
CURRENT_VALUE = #{CURRENT_VALUE, jdbcType=VARCHAR},
|
||||
ALARM_VALUE = #{ALARM_VALUE, jdbcType=VARCHAR},
|
||||
THRESHOLD_UP_LIMIT = #{THRESHOLD_UP_LIMIT, jdbcType=VARCHAR},
|
||||
THRESHOLD_UP_UP_LIMIT = #{THRESHOLD_UP_UP_LIMIT, jdbcType=VARCHAR},
|
||||
THRESHOLD_DOWN_LIMIT = #{THRESHOLD_DOWN_LIMIT, jdbcType=VARCHAR},
|
||||
THRESHOLD_DOWN_DOWN_LIMIT = #{THRESHOLD_DOWN_DOWN_LIMIT, jdbcType=VARCHAR},
|
||||
RANGE_UP = #{RANGE_UP, jdbcType=VARCHAR},
|
||||
RANGE_DOWN = #{RANGE_DOWN, jdbcType=VARCHAR},
|
||||
PROCESSING_TIME = #{PROCESSING_TIME, jdbcType=VARCHAR},
|
||||
INSERT_TIME = STR_TO_DATE(#{INSERT_TIME}, '%Y-%m-%d %H:%i:%s'),
|
||||
PLC_ID = #{PLC_ID, jdbcType=CHAR},
|
||||
WARNING = #{WARNING, jdbcType=CHAR},
|
||||
GATHER_TIME = #{GATHER_TIME, jdbcType=VARCHAR},
|
||||
CORPINFO_ID = #{CORPINFO_ID, jdbcType=VARCHAR},
|
||||
IPCDEVICE_ID = #{IPCDEVICE_ID, jdbcType=VARCHAR},
|
||||
PLC_NAME = #{PLC_NAME, jdbcType=VARCHAR},
|
||||
PROCESSING_BATCH_ID = #{PROCESSING_BATCH_ID, jdbcType=VARCHAR},
|
||||
OVERVIEW_OF_ALERTS = #{OVERVIEW_OF_ALERTS, jdbcType=VARCHAR}
|
||||
WHERE EQUIPMENT_ID = #{EQUIPMENT_ID, jdbcType=VARCHAR}
|
||||
</update>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -14,6 +14,8 @@
|
|||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<!-- 批量保存从MES获取的数据 注意列名加双引号,防止自动转换为小写导致无法匹配pg数据库的大写列名,pg数据库严格按照大小写进行字段匹配。 -->
|
||||
<insert id="saveBatchFromMes" parameterType="java.util.List">
|
||||
INSERT INTO "sx_yjb".device_monitoring_sxgt (
|
||||
|
|
|
|||
Loading…
Reference in New Issue