Compare commits

14 Commits
main ... deng

Author SHA1 Message Date
464b7e1a0f selectByMPointID/Code 2026-03-24 20:14:39 +08:00
ffeda063c2 selectByMPointID/Code 2026-03-23 22:28:19 +08:00
c3a6ba2467 getAsyncMqttHandle 2026-03-12 00:48:28 +08:00
d48d3cbb52 device-des 2026-03-09 12:40:34 +08:00
ba387a493b 场外点位(定制化) 2026-03-07 23:43:49 +08:00
2f46cb817e mqtt DeviceEnum 2026-03-07 18:28:58 +08:00
96f454f5d2 mqtt getAsyncMqttHandle 2026-03-04 19:28:03 +08:00
95e4de1539 mqtt初始化链接调试 2026-02-26 01:10:18 +08:00
2ffec8d3a6 mqtt初始化链接调试 2026-02-26 01:08:27 +08:00
0093cc70dd mqtt初始化链接调试 2026-02-24 15:34:56 +08:00
e35f300cff mqtt初始化链接调试 2026-02-24 00:13:36 +08:00
4e39491e5c api功能列表 2026-01-29 20:10:36 +08:00
8fa036746e db 127 2026-01-29 19:31:19 +08:00
92c1883bdc db 127 2026-01-29 19:25:01 +08:00
108 changed files with 3281 additions and 141 deletions

19
.idea/compiler.xml generated Normal file
View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile default="true" name="Default" enabled="true" />
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="springboot" />
</profile>
</annotationProcessing>
</component>
<component name="JavacSettings">
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
<module name="springboot" options="-parameters" />
</option>
</component>
</project>

6
.idea/encodings.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
</component>
</project>

20
.idea/jarRepositories.xml generated Normal file
View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://maven.aliyun.com/repository/central" />
</remote-repository>
</component>
</project>

51
API接口列表.csv Normal file
View File

@ -0,0 +1,51 @@
功能名称,功能描述,接口路径
服务器状态检查,检查服务器是否正常运行,/check/server.do
UDP测试发送,测试UDP数据包发送功能,/check/testSendUdp.do
管网专题页点位查询(单点),根据主键查询管网专题页点位详细信息,/pipeTopicMPoint/selectById.do
管网专题页点位新增,新增管网专题页点位信息,/pipeTopicMPoint/save.do
管网专题页点位更新,更新管网专题页点位信息,/pipeTopicMPoint/update.do
管网专题页点位删除(单点),根据主键删除单个管网专题页点位,/pipeTopicMPoint/deleteById.do
管网专题页点位批量删除,批量删除多个管网专题页点位,/pipeTopicMPoint/deleteBatch.do
管网专题页点位分页查询,分页查询管网专题页点位列表,/pipeTopicMPoint/list.do
管网专题页数据获取,获取管网专题页展示数据,/pipeTopicMPoint/getData.do
管道设备查询(单点),根据主键查询管道设备详细信息,/pipeline-equipment/selectById.do
管道设备删除(单点),删除指定主键的管道设备信息,/pipeline-equipment/deleteById.do
管道设备删除(单点),删除指定主键的管道设备信息(重复接口),/pipeline-equipment/deleteByIds.do
管道设备新增,新增管道设备信息,/pipeline-equipment/save.do
管道设备更新,更新管道设备信息,/pipeline-equipment/update.do
管道设备分页查询,分页查询管道设备列表,/pipeline-equipment/list.do
管道设备类型获取,获取所有管道设备类型,/pipeline-equipment/device-types
管道设备附属点位查询(单点),根据主键查询管道设备与测点关联信息,/pipeline-equipment-mpoint/selectById.do
管道设备附属点位删除(单点),删除指定主键的管道设备与测点关联信息,/pipeline-equipment-mpoint/deleteById.do
管道设备附属点位新增,新增管道设备与测点关联信息,/pipeline-equipment-mpoint/save.do
管道设备附属点位更新,更新管道设备与测点关联信息,/pipeline-equipment-mpoint/update.do
管道设备附属点位分页查询,分页查询管道设备与测点关联信息列表,/pipeline-equipment-mpoint/list.do
管道设备附属点位一键导入,根据设备类型一键导入点位信息,/pipeline-equipment-mpoint/import4Type.do
管网测点库查询(单点),根据主键查询管网测点库记录,/pipeline-mpoint-library/selectById.do
管网测点库删除(单点),删除指定主键的管网测点库记录,/pipeline-mpoint-library/deleteById.do
管网测点库批量删除,批量删除多个管网测点库记录,/pipeline-mpoint-library/deleteByIds.do
管网测点库新增,新增管网测点库记录,/pipeline-mpoint-library/save.do
管网测点库更新,更新管网测点库记录,/pipeline-mpoint-library/update.do
管网测点库分页查询,分页查询管网测点库列表,/pipeline-mpoint-library/list.do
Kafka消息发送测试,测试Kafka消息发送功能,/api/kafka/testSendMessage
MQTT配置查询单点,根据主键查询MQTT配置信息,/mqttConfig/getById
MQTT连接启动,启动MQTT连接,/mqttConfig/connectStart.do
MQTT连接建立,建立MQTT连接,/mqttConfig/connect.do
MQTT配置主题新增,新增MQTT配置主题信息,/mqttConfigTopic/save.do
MQTT配置主题删除,删除MQTT配置主题信息,/mqttConfigTopic/delete.do
MQTT客户端状态查询单点,查询指定网关是否在线(单个网关),/mqtt/getClientStatus.do
MQTT客户端列表状态查询,返回所有在线的网关(所有网关),/mqtt/getClientListStatus.do
MQTT客户端列表状态查询按厂,根据厂ID返回该厂所有网关在线状态,/mqtt/getClientListStatus4UnitId.do
OPC UA节点值读取,读取单个OPC UA节点的值,/api/opcua/read
OPC UA节点值写入,写入单个OPC UA节点的值,/api/opcua/write
OPC UA节点订阅取消,取消OPC UA节点订阅,/api/opcua/unsubscribeFromNode
OPC UA订阅同步,同步OPC UA订阅点位,/api/opcua/sysSub
RabbitMQ消息发送,发送RabbitMQ消息到指定队列,/mq/sendMQ
测点更新,更新测点信息,/mPoint/update.do
测点查询(单点),根据ID查询测点信息,/mPoint/selectById.do
测点实时数据获取(多点位),管网平台获取实时数据接口(支持多个点位),/mPoint/getDataByMpCode.do
公司信息新增,新增公司信息,/company/save.do
公司信息删除,删除公司信息,/company/delete.do
用户测试接口1,用户测试接口(返回成功),/user/test1
用户测试接口2,用户测试接口(返回失败),/user/test2
设备上下线消息处理,通过EMQX WebHook获取设备上下线消息并处理,/webHook/onJkWebHook
1 功能名称 功能描述 接口路径
2 服务器状态检查 检查服务器是否正常运行 /check/server.do
3 UDP测试发送 测试UDP数据包发送功能 /check/testSendUdp.do
4 管网专题页点位查询(单点) 根据主键查询管网专题页点位详细信息 /pipeTopicMPoint/selectById.do
5 管网专题页点位新增 新增管网专题页点位信息 /pipeTopicMPoint/save.do
6 管网专题页点位更新 更新管网专题页点位信息 /pipeTopicMPoint/update.do
7 管网专题页点位删除(单点) 根据主键删除单个管网专题页点位 /pipeTopicMPoint/deleteById.do
8 管网专题页点位批量删除 批量删除多个管网专题页点位 /pipeTopicMPoint/deleteBatch.do
9 管网专题页点位分页查询 分页查询管网专题页点位列表 /pipeTopicMPoint/list.do
10 管网专题页数据获取 获取管网专题页展示数据 /pipeTopicMPoint/getData.do
11 管道设备查询(单点) 根据主键查询管道设备详细信息 /pipeline-equipment/selectById.do
12 管道设备删除(单点) 删除指定主键的管道设备信息 /pipeline-equipment/deleteById.do
13 管道设备删除(单点) 删除指定主键的管道设备信息(重复接口) /pipeline-equipment/deleteByIds.do
14 管道设备新增 新增管道设备信息 /pipeline-equipment/save.do
15 管道设备更新 更新管道设备信息 /pipeline-equipment/update.do
16 管道设备分页查询 分页查询管道设备列表 /pipeline-equipment/list.do
17 管道设备类型获取 获取所有管道设备类型 /pipeline-equipment/device-types
18 管道设备附属点位查询(单点) 根据主键查询管道设备与测点关联信息 /pipeline-equipment-mpoint/selectById.do
19 管道设备附属点位删除(单点) 删除指定主键的管道设备与测点关联信息 /pipeline-equipment-mpoint/deleteById.do
20 管道设备附属点位新增 新增管道设备与测点关联信息 /pipeline-equipment-mpoint/save.do
21 管道设备附属点位更新 更新管道设备与测点关联信息 /pipeline-equipment-mpoint/update.do
22 管道设备附属点位分页查询 分页查询管道设备与测点关联信息列表 /pipeline-equipment-mpoint/list.do
23 管道设备附属点位一键导入 根据设备类型一键导入点位信息 /pipeline-equipment-mpoint/import4Type.do
24 管网测点库查询(单点) 根据主键查询管网测点库记录 /pipeline-mpoint-library/selectById.do
25 管网测点库删除(单点) 删除指定主键的管网测点库记录 /pipeline-mpoint-library/deleteById.do
26 管网测点库批量删除 批量删除多个管网测点库记录 /pipeline-mpoint-library/deleteByIds.do
27 管网测点库新增 新增管网测点库记录 /pipeline-mpoint-library/save.do
28 管网测点库更新 更新管网测点库记录 /pipeline-mpoint-library/update.do
29 管网测点库分页查询 分页查询管网测点库列表 /pipeline-mpoint-library/list.do
30 Kafka消息发送测试 测试Kafka消息发送功能 /api/kafka/testSendMessage
31 MQTT配置查询(单点) 根据主键查询MQTT配置信息 /mqttConfig/getById
32 MQTT连接启动 启动MQTT连接 /mqttConfig/connectStart.do
33 MQTT连接建立 建立MQTT连接 /mqttConfig/connect.do
34 MQTT配置主题新增 新增MQTT配置主题信息 /mqttConfigTopic/save.do
35 MQTT配置主题删除 删除MQTT配置主题信息 /mqttConfigTopic/delete.do
36 MQTT客户端状态查询(单点) 查询指定网关是否在线(单个网关) /mqtt/getClientStatus.do
37 MQTT客户端列表状态查询 返回所有在线的网关(所有网关) /mqtt/getClientListStatus.do
38 MQTT客户端列表状态查询(按厂) 根据厂ID返回该厂所有网关在线状态 /mqtt/getClientListStatus4UnitId.do
39 OPC UA节点值读取 读取单个OPC UA节点的值 /api/opcua/read
40 OPC UA节点值写入 写入单个OPC UA节点的值 /api/opcua/write
41 OPC UA节点订阅取消 取消OPC UA节点订阅 /api/opcua/unsubscribeFromNode
42 OPC UA订阅同步 同步OPC UA订阅点位 /api/opcua/sysSub
43 RabbitMQ消息发送 发送RabbitMQ消息到指定队列 /mq/sendMQ
44 测点更新 更新测点信息 /mPoint/update.do
45 测点查询(单点) 根据ID查询测点信息 /mPoint/selectById.do
46 测点实时数据获取(多点位) 管网平台获取实时数据接口(支持多个点位) /mPoint/getDataByMpCode.do
47 公司信息新增 新增公司信息 /company/save.do
48 公司信息删除 删除公司信息 /company/delete.do
49 用户测试接口1 用户测试接口(返回成功) /user/test1
50 用户测试接口2 用户测试接口(返回失败) /user/test2
51 设备上下线消息处理 通过EMQX WebHook获取设备上下线消息并处理 /webHook/onJkWebHook

View File

@ -16,4 +16,12 @@ public class MPointDao extends CommDaoImpl<MPoint> {
public int updateValueByKey(MPoint t) {
return getSqlSession().update("scada.MPointMapper."+Thread.currentThread().getStackTrace()[1].getMethodName(), t);
}
public MPoint selectByMPointID(String mpointid) {
return getSqlSession().selectOne("scada.MPointMapper."+Thread.currentThread().getStackTrace()[1].getMethodName(), mpointid);
}
public MPoint selectByMPointCode(String mpointcode) {
return getSqlSession().selectOne("scada.MPointMapper."+Thread.currentThread().getStackTrace()[1].getMethodName(), mpointcode);
}
}

View File

@ -3,6 +3,7 @@ package com.sipai.entity.scada;
import com.sipai.entity.base.SQLAdapter;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
public class MPointHistory extends SQLAdapter implements Serializable{
/**
@ -22,7 +23,7 @@ public class MPointHistory extends SQLAdapter implements Serializable{
private String userid;
private String insdt;
private Date insdt;
private String tbName;
@ -91,11 +92,11 @@ public class MPointHistory extends SQLAdapter implements Serializable{
this.userid = userid;
}
public String getInsdt() {
public Date getInsdt() {
return insdt;
}
public void setInsdt(String insdt) {
public void setInsdt(Date insdt) {
this.insdt = insdt;
}
@ -151,4 +152,24 @@ public class MPointHistory extends SQLAdapter implements Serializable{
return serialVersionUID;
}
@Override
public String toString() {
final StringBuilder sb = new StringBuilder("MPointHistory{");
sb.append("itemid=").append(itemid);
sb.append(", parmvalue=").append(parmvalue);
sb.append(", measuredt='").append(measuredt).append('\'');
sb.append(", memotype='").append(memotype).append('\'');
sb.append(", memo='").append(memo).append('\'');
sb.append(", userid='").append(userid).append('\'');
sb.append(", insdt='").append(insdt).append('\'');
sb.append(", tbName='").append(tbName).append('\'');
sb.append(", tag=").append(tag);
sb.append(", year='").append(year).append('\'');
sb.append(", month='").append(month).append('\'');
sb.append(", day='").append(day).append('\'');
sb.append(", hour='").append(hour).append('\'');
sb.append(", min='").append(min).append('\'');
sb.append('}');
return sb.toString();
}
}

View File

@ -47,21 +47,22 @@ public class DataSynJob {
}
@Async
// @Scheduled(cron = "0 0/3 * * * ?")//数据转发
@Scheduled(cron = "0 0 0/1 * * ?")//数据转发
public void job2() {
if (!scheduledEnabled) return; // 手动拦截
String addstr = "zhuanfa";
System.out.println("开始定时器-----------------" + CommUtil.nowDate() + "-----------------" + addstr);
List<MPoint> list2 = this.mPointService.selectListByWhere("where bizid = '0791CNWS' and SignalType='AI' and MeasureDT>DATE_SUB(NOW(), INTERVAL 5 MINUTE) and source_type='auto' ");
if (list2 != null && list2.size() > 0) {
for (int j = 0; j < list2.size(); ++j) {
// List<MPoint> list2 = this.mPointService.selectListByWhere("where bizid = '0533JS' and SignalType='AI' and MeasureDT>DATE_SUB(NOW(), INTERVAL 5 MINUTE) and source_type='auto' ");
List<MPoint> list2 = this.mPointService.selectListByWhere("where bizid = '0533JS' and SignalType='AI' and source_type='auto' ");
if (list2 != null && !list2.isEmpty()) {
for (MPoint mPoint : list2) {
MPointHistory mPointHistory = new MPointHistory();
mPointHistory.setParmvalue(list2.get(j).getParmvalue());
mPointHistory.setMeasuredt(list2.get(j).getMeasuredt());
mPointHistory.setTbName(list2.get(j).getMpointcode());
mPointHistory.setParmvalue(mPoint.getParmvalue());
mPointHistory.setMeasuredt(mPoint.getMeasuredt());
mPointHistory.setTbName(mPoint.getMpointcode());
mPointHistory.setUserid("data_job");
mPointHistory.setInsdt(CommUtil.nowDate());
mPointHistoryService.saveByCreate(list2.get(j).getBizid(), mPointHistory);
mPointHistory.setInsdt(new Date());
mPointHistoryService.saveByCreate(mPoint.getBizid(), mPointHistory);
}
System.out.println("完成一次(有数据)转发,执行了" + list2.size() + "次点");
} else {

View File

@ -127,7 +127,7 @@ public class PushCallback implements MqttCallbackExtended {
public void messageArrived(String topic, MqttMessage message) {
try {
JSONArray jsonArray = JSONArray.parseArray(message.toString());
// System.out.println(topic + "===开始===" + CommUtil.nowDate() + "===" + jsonArray.size());
System.out.println(topic + "===开始===" + CommUtil.nowDate() + "===" + jsonArray.size());
String unitId = topic.substring(0, 4);//截取topic的前面部分作为厂id
MqttService mqttService = (MqttService) SpringContextUtil.getBean("mqttService");
//正常的主题 -- 数据处理

View File

@ -12,6 +12,7 @@ import com.sipai.entity.mqtt.MqttConfigTopic;
import com.sipai.service.mqtt.MqttConfigService;
import com.sipai.service.mqtt.MqttConfigTopicService;
import com.sipai.tools.CommUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.binary.Base64;
import org.eclipse.paho.client.mqttv3.MqttClient;
import org.eclipse.paho.client.mqttv3.MqttConnectOptions;
@ -37,6 +38,7 @@ import java.util.List;
* @Date: 2021/03/24/16:45
* @Description:
*/
@Slf4j
@Service
public class MqttConfigServiceImpl implements MqttConfigService {
private final MqttProperties mqttProperties;
@ -152,6 +154,7 @@ public class MqttConfigServiceImpl implements MqttConfigService {
mqttClient1.setCallback(new PushCallback(mqttClient1, connOpts, topic, qos));
//订阅
mqttClient1.subscribe(topic, qos);
System.out.println("已连接成功");
} else {
System.out.println("重新连接");
//连接
@ -160,12 +163,15 @@ public class MqttConfigServiceImpl implements MqttConfigService {
mqttClient1.setCallback(new PushCallback(mqttClient1, connOpts, topic, qos));
//订阅
mqttClient1.subscribe(topic, qos);
System.out.println("重新连接成功");
}
} catch (MqttException me) {
log.error("MqttException:",me);
me.printStackTrace();
}
}
System.out.println(clientId);
return clientId;
}

View File

@ -2,6 +2,7 @@ package com.sipai.service.mqtt.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.sipai.dao.scada.MPointHistoryDao;
import com.sipai.entity.mqtt.Mqtt;
import com.sipai.entity.mqtt.MqttProperties;
import com.sipai.entity.scada.MPoint;
@ -29,10 +30,9 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.TimeUnit;
@ -49,6 +49,10 @@ public class MqttServiceImpl implements MqttService {
private ListenerPointService listenerPointService;
@Autowired
private RedissonClient redissonClient;
@Autowired
private MPointHistoryService mPointHistoryService;
@Autowired
MPointHistoryDao mPointHistoryDao;
private static MqttClient mqttClient;
private static String ipStr = "";
@ -90,12 +94,16 @@ public class MqttServiceImpl implements MqttService {
return mqttClient;
}
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
@Async("getAsyncMqttHandle")
@Override
public void doHandle(String bizId, String topic, String ip4, String port, JSONArray jsonArray) {
// System.out.println("MQTT接收: biz=" + bizId + " topic=" + topic + " msgCount=" + jsonArray.size());
System.out.println("MQTT接收: biz=" + bizId + " topic=" + topic + " msgCount=" + jsonArray.size());
// MPointHistoryService mPointHistoryService = (MPointHistoryService) SpringContextUtil.getBean("mPointHistoryService");
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
System.out.println(jsonObject);
// 解析时间戳
String timestamp = jsonObject.getString("timestamp");
String[] times = timestamp.split("\\.");
@ -111,30 +119,49 @@ public class MqttServiceImpl implements MqttService {
List<MPointES> redisList = new ArrayList<>();
List<MPoint> vueList = new ArrayList<>();
String device = jsonObject.getString("Device");
loggger.info("receive device={}", device);
System.out.println("receive device=" + device);
DeviceEnum deviceEnum = DeviceEnum.getByDeviceNumber(device);
String deviceName = deviceEnum == null ? device : deviceEnum.getDeviceName();
// 遍历数据条目
for (String key : data.keySet()) {
String valueStr = data.getString(key);
System.out.println("源 key=" + key + " value=" + data.getString(key));
// 过滤无效值
if (!isValidValue(valueStr)) {
loggger.warn("值无效,跳过: key={} raw={} @{}", key, valueStr, date);
loggger.warn("值无效,跳过: key={} raw={} @{}", key, valueStr, date);
continue;
}
// 获取点位信息
if ("SSLL".equals(key) || "LJLL".equals(key)) {
// 场外点位(定制化)
key = device + "_" + key;
}
System.out.println("标准 key=" + key + " value=" + data.getString(key));
// 获取点位信息 通过MPointID
MPoint mPoint = getMPointCacheOrES(bizId, key);
if (mPoint == null) {
boolean inNotFound = notFoundKeys.contains(key);
loggger.warn("点位不存在,跳过: key={} notFoundCache={} @{}", key, inNotFound, date);
loggger.warn("点位不存在,跳过:标准 key={} notFoundCache={} @{}", key, inNotFound, date);
continue;
}
// 处理数值转换、倍率计算、取反操作、推报警信息、发送Kafka消息
BigDecimal value = handleValueConversion(bizId, valueStr, key, date, vueList);
if (value == null) {
loggger.warn("数值转换失败,跳过: key={} raw={} @{}", key, valueStr, date);
loggger.warn("数值转换失败,跳过:标准 key={} raw={} @{}", key, valueStr, date);
continue;
}
// 处理ES数据
MPointES esPoint = buildEsPoint(mPoint, value, date);
redisList.add(esPoint);
String tableName = "tb_mp_" + mPoint.getMpointcode(); // 建表使用code确保表名唯一
MPointHistory mPointHistory = new MPointHistory();
mPointHistory.setMeasuredt(date);
mPointHistory.setParmvalue(value);
mPointHistory.setTbName(tableName);
mPointHistory.setUserid(deviceName);
mPointHistory.setInsdt(new Date());
insertInsert(mPointHistory);
}
// 推送前端数据
// loggger.info("准备推送前端: topic={} size={} @{}", topic, vueList.size(), date);
@ -146,6 +173,22 @@ public class MqttServiceImpl implements MqttService {
}
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public void insertInsert(MPointHistory mPointHistory) {
try {
int exist = mPointHistoryService.checkTableExist(mPointHistory.getTbName());
if (exist == 0) { // 不存在就新建点位表
loggger.info(String.format("[重要]创建了点位表:%s %s", mPointHistory.getTbName(), DataSourceContextHolder.getDataSourceType()));
mPointHistoryService.createTable(mPointHistory.getTbName());
}
mPointHistoryService.save("", mPointHistory);
loggger.info("保存成功一条数据到历史表:{}", mPointHistory);
} catch (Exception e) {
loggger.error("mPointHistoryService.save error :{}", e.getMessage());
}
}
/**
* 校验值是否有效(非空且长度合法)
*/
@ -528,24 +571,28 @@ public class MqttServiceImpl implements MqttService {
// 查询缓存是否存在
if (mPointCache.containsKey(key)) {
MPoint mp = mPointCache.get(key);
// loggger.debug("缓存命中: key={} id={}", key, mp.getId());
System.out.println("缓存命中: key=" + key + " id=" + mp.getId());
loggger.debug("缓存命中: key={} id={}", key, mp.getId());
return mp;
}
// 点位不存在 新加的点位需要定时清理缓存的时候才会进入缓存不然频繁去查询es
if (notFoundKeys.contains(key)) {
// loggger.debug("已标记未找到跳过ES查询: key={}", key);
System.out.println("已标记未找到跳过ES查询: key=" + key);
loggger.debug("已标记未找到跳过ES查询: key={}", key);
return null;
}
// 从ES查询
MPoint mPoint = mPointService.selectById(unitId, key);
// 查询 MPointID
MPoint mPoint = mPointService.selectByMPointID(key);
if (mPoint != null) {
//添加缓存
mPointCache.put(key, mPoint);
// loggger.debug("ES查询成功并缓存: key={} id={}", key, mPoint.getId());
System.out.println("ES查询成功并缓存: key=" + key + " id=" + mPoint.getId());
loggger.debug("ES查询成功并缓存: key={} id={}", key, mPoint.getId());
} else {
//没有该点位
notFoundKeys.add(key);
// loggger.warn("ES未找到点位加入未找到集合: key={}", key);
System.out.println("ES未找到点位加入未找到集合: key=" + key);
loggger.warn("ES未找到点位加入未找到集合: key={}", key);
}
return mPoint;
}

View File

@ -5,7 +5,7 @@ import com.sipai.entity.scada.MPointHistory;
import java.util.List;
public interface MPointHistoryService {
int save(String bizId, MPointHistory mPointHistory);
Integer save(String bizId, MPointHistory mPointHistory);
List<MPointHistory> selectListByTableAWhere(String bizId, String table, String wherestr);
@ -14,4 +14,8 @@ public interface MPointHistoryService {
int saveByCreate(String bizId, MPointHistory mPointHistory);
List<MPointHistory> selectIndustrialLibrary(String bizId, String IP,String MPointID, String intv, String sdt, String edt);
void createTable(String tbName);
int checkTableExist(String tbName);
}

View File

@ -19,6 +19,20 @@ import java.util.Map;
public interface MPointService {
MPoint selectById(String unitId,String id);
/**
* 根据MPointID查询测点
* @param mpointid 测点ID
* @return MPoint
*/
MPoint selectByMPointID(String mpointid);
/**
* 根据MPointCode查询测点
* @param mpointcode 测点编码
* @return MPoint
*/
MPoint selectByMPointCode(String mpointcode);
MPoint selectById4Es(String id);
List<MPoint> selectListByWhere(String wherestr);

View File

@ -3,6 +3,7 @@ package com.sipai.service.scada.impl;
import com.sipai.dao.scada.MPointBzwDao;
import com.sipai.entity.scada.MPointBzw;
import com.sipai.service.scada.MPointBzwService;
import com.sipai.tools.DataSourceEnum;
import com.sipai.tools.DataSourceTypeAnno;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
@ -22,32 +23,32 @@ public class MPointBzwServiceImpl implements MPointBzwService {
private MPointBzwDao mPointBzwDao;
@Override
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public MPointBzw selectByPrimaryKey(String id) {
return mPointBzwDao.selectByPrimaryKey(id);
}
@Override
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public Integer deleteByPrimaryKey(String id) {
return mPointBzwDao.deleteByPrimaryKey(id);
}
@Override
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public Integer insert(MPointBzw entity) {
return mPointBzwDao.insert(entity);
}
@Async
@Override
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public Integer updateByPrimaryKeySelective(MPointBzw entity) {
return mPointBzwDao.updateByPrimaryKeySelective(entity);
}
@Override
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public List<MPointBzw> selectListByWhere(String wherestr) {
MPointBzw mPoint = new MPointBzw();
mPoint.setWhere(wherestr);
@ -55,7 +56,7 @@ public class MPointBzwServiceImpl implements MPointBzwService {
}
@Override
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public Integer deleteByWhere(String wherestr) {
return mPointBzwDao.deleteByWhere(wherestr);
}

View File

@ -5,10 +5,12 @@ import com.sipai.entity.scada.MPointHistory;
import com.sipai.service.scada.MPointHistoryService;
import com.sipai.tools.CommUtil;
import com.sipai.tools.DataSourceContextHolder;
import com.sipai.tools.DataSourceEnum;
import com.sipai.tools.DataSourceTypeAnno;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.List;
@ -19,11 +21,11 @@ public class MPointHistoryServiceImpl implements MPointHistoryService {
@Autowired
MPointHistoryDao mPointHistoryDao;
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public int save(String bizId, MPointHistory mPointHistory) {
public Integer save(String bizId, MPointHistory mPointHistory) {
try {
int res = mPointHistoryDao.insert(mPointHistory);
Integer res = mPointHistoryDao.insert(mPointHistory);
return res;
} catch (Exception e) {
System.out.println(e);
@ -31,19 +33,19 @@ public class MPointHistoryServiceImpl implements MPointHistoryService {
}
}
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public List<MPointHistory> selectListByTableAWhere(String bizId, String table, String wherestr) {
return mPointHistoryDao.selectListByTableAWhere(table, wherestr);
}
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public int deleteByTableAWhere(String bizId, String table, String wherestr) {
return mPointHistoryDao.deleteByTableAWhere(table, wherestr);
}
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public int saveByCreate(String bizId, MPointHistory mPointHistory) {
mPointHistory.setTbName(CommUtil.getMPointTableName(mPointHistory.getTbName()));
@ -58,11 +60,16 @@ public class MPointHistoryServiceImpl implements MPointHistoryService {
}
// 添加时间判断 todo 将来优化
if (StringUtils.isEmpty(mPointHistory.getMeasuredt())) {
mPointHistory.setWhere(" where MeasureDT IS NULL");
} else {
mPointHistory.setWhere(" where MeasureDT = '" + mPointHistory.getMeasuredt() + "'");
}
Integer count = this.mPointHistoryDao.selectCount(mPointHistory);
int result = count == 0 ? mPointHistoryDao.insert(mPointHistory) : mPointHistoryDao.updateByMeasureDt(mPointHistory);
return result;
// int result = count == 0 ? mPointHistoryDao.insert(mPointHistory) : mPointHistoryDao.updateByMeasureDt(mPointHistory);
// return result;
return 0;
} catch (Exception e) {
System.out.println(DataSourceContextHolder.getDataSourceType() + " | " + e);
// 返回默认值
@ -70,10 +77,21 @@ public class MPointHistoryServiceImpl implements MPointHistoryService {
}
}
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public List<MPointHistory> selectIndustrialLibrary(String bizId, String IP, String MPointID, String intv, String sdt, String edt) {
return mPointHistoryDao.selectIndustrialLibrary(IP, MPointID, intv, sdt, edt);
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public void createTable(String tbName) {
mPointHistoryDao.createTable(tbName);
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public int checkTableExist(String tbName) {
return mPointHistoryDao.checkTableExist(tbName);
}
}

View File

@ -13,6 +13,7 @@ import com.sipai.service.scada.MPointHistoryService;
import com.sipai.service.scada.MPointService;
import com.sipai.tools.CommString;
import com.sipai.tools.CommUtil;
import com.sipai.tools.DataSourceEnum;
import com.sipai.tools.DataSourceTypeAnno;
import lombok.extern.slf4j.Slf4j;
import org.elasticsearch.index.query.BoolQueryBuilder;
@ -81,17 +82,30 @@ public class MPointServiceImpl implements MPointService {
return mPointDao.selectByPrimaryKey(id);
}*/
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public MPoint selectById(String unitId, String id) {
return mPointDao.selectByPrimaryKey(id);
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public MPoint selectByMPointID(String mpointid) {
return mPointDao.selectByMPointID(mpointid);
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public MPoint selectByMPointCode(String mpointcode) {
return mPointDao.selectByMPointCode(mpointcode);
}
/**
* es查询
*
* @param id
* @return
*/
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public MPoint selectById4Es(String id) {
if (id == null || id.isEmpty()) {
@ -122,7 +136,7 @@ public class MPointServiceImpl implements MPointService {
}
// @DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public List<MPoint> selectListByWhere(String wherestr) {
MPoint mpoint = new MPoint();
@ -145,6 +159,7 @@ public class MPointServiceImpl implements MPointService {
}
@Override
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public List<MPoint> selectListByES(Map<String, Object> map, Integer page, Integer rows) {
List<MPoint> mpoints = new ArrayList<>();
try {
@ -187,7 +202,7 @@ public class MPointServiceImpl implements MPointService {
return mpoints;
}
// @DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public int update(MPoint entity) {
try {
@ -199,7 +214,7 @@ public class MPointServiceImpl implements MPointService {
}
}
@DataSourceTypeAnno()
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public int updateValueByKey(String bizId, MPoint entity) {
try {
@ -248,6 +263,7 @@ public class MPointServiceImpl implements MPointService {
* @param entity
* @return
*/
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public int saveInfluxdb(String bizId, MPointHistory entity) {
Map<String, Object> fields = new HashMap<>();
Map<String, String> tags = new HashMap<>();
@ -261,10 +277,10 @@ public class MPointServiceImpl implements MPointService {
long time = Calendar.getInstance().getTimeInMillis();
try {
fields.put("parmvalue", Float.parseFloat(entity.getParmvalue().toString()));
time = longDateFormat.parse(entity.getMeasuredt()).getTime();
// time = longDateFormat.parse(entity.getMeasuredt()).getTime();
// influxDBConfig.insert("tb_mp_" + entity.getTbName(), time, tags, fields);
// System.out.println("===插入数据成功===" + entity.getTbName() + "===" + Float.parseFloat(entity.getParmvalue().toString()));
} catch (ParseException e) {
} catch (Exception e) {
e.printStackTrace();
}
return 1;
@ -276,6 +292,7 @@ public class MPointServiceImpl implements MPointService {
* @param mPointES
*/
// @Async
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public void saveAsync(List<MPointES> mPointES) {
this.mPointRepo.batchUpdate(mPointES);
@ -286,6 +303,7 @@ public class MPointServiceImpl implements MPointService {
*
* @return
*/
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public List<MPoint> selectListByWhere4Es(NativeSearchQueryBuilder nativeSearchQueryBuilder) {
SearchQuery searchQuery = nativeSearchQueryBuilder.build();
Page<MPoint> mPage = mPointRepo.search(searchQuery);
@ -312,6 +330,7 @@ public class MPointServiceImpl implements MPointService {
* @return
* @throws Exception
*/
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public static String formatTimeEight(String time) throws Exception {
Date d = null;
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@ -321,6 +340,7 @@ public class MPointServiceImpl implements MPointService {
return newtime;
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public void sendKafka4OpcUa(String id, Double value, String time) {
JSONObject message = new JSONObject();
message.put("id", id);
@ -365,6 +385,7 @@ public class MPointServiceImpl implements MPointService {
}
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public void saveRedis(String mpcode, Object value, String time) {
RBatch batch = redissonClient.createBatch();
@ -376,6 +397,7 @@ public class MPointServiceImpl implements MPointService {
batch.execute();
}
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
public void sendKafka4UDP(String unitId, String mpcode, Object value, String timePoint, int i, int length) {
JSONObject message = new JSONObject();
@ -408,10 +430,10 @@ public class MPointServiceImpl implements MPointService {
try {
MPointHistory mPointHistory = new MPointHistory();
mPointHistory.setParmvalue(CommUtil.toBigDecimal(value));
mPointHistory.setMeasuredt(timePoint);
// mPointHistory.setMeasuredt(timePoint);
mPointHistory.setTbName(mpcode);
mPointHistory.setUserid("datacollector");
mPointHistory.setInsdt(CommUtil.nowDate());
mPointHistory.setInsdt(new Date());
//写子表
mPointHistoryService.saveByCreate(CommString.BIZID_KCGW, mPointHistory);
} catch (Exception e) {
@ -437,6 +459,7 @@ public class MPointServiceImpl implements MPointService {
}
// @Async
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public void sendKafka4MQTT(String unitId, String mpcode, Object value, String timePoint, int i, int length, String signaltype) {
//写子表
@ -444,10 +467,10 @@ public class MPointServiceImpl implements MPointService {
try {
MPointHistory mPointHistory = new MPointHistory();
mPointHistory.setParmvalue(CommUtil.toBigDecimal(value));
mPointHistory.setMeasuredt(timePoint);
// mPointHistory.setMeasuredt(timePoint);
mPointHistory.setTbName(mpcode);
mPointHistory.setUserid("datacollector");
mPointHistory.setInsdt(CommUtil.nowDate());
mPointHistory.setInsdt(new Date());
mPointHistoryService.saveByCreate(CommString.BIZID_KCGW, mPointHistory);
} catch (Exception e) {
e.printStackTrace();
@ -470,6 +493,7 @@ public class MPointServiceImpl implements MPointService {
}
// @Async
@DataSourceTypeAnno(DataSourceEnum.SCADA_JSWS)
@Override
public void sendKafka4MQTT_Alarm(String mpcode, Object value, String timePoint, int i, int length) {
JSONObject message = new JSONObject();

View File

@ -181,7 +181,7 @@ public class CommUtil {
format = "yyyy-MM-dd HH:mm:ss";
}
SimpleDateFormat sdf = new SimpleDateFormat(format);
return sdf.format(new Date(Long.valueOf(seconds + "000")));
return sdf.format(new Date(Long.valueOf(seconds)));
}
/**

View File

@ -30,22 +30,22 @@ public class DataSourceAspect {
Method method = methodSignature.getMethod();
DataSourceTypeAnno typeAnno = method.getAnnotation(DataSourceTypeAnno.class);
DataSourceEnum sourceEnum = typeAnno.value();
Object[] argusObjects = pjp.getArgs();
Object argus = argusObjects[0];
// if (argus == DataSourceEnum.master) {
// DataSourceContextHolder.setDataSourceType(DataSourceEnum.master);
// } else if (sourceEnum == DataSourceEnum.slaver) {
// DataSourceContextHolder.setDataSourceType(DataSourceEnum.slaver);
// }
if (argus != null && !argus.equals("") && argusObjects.length >= 2) {
//DataSourceContextHolder.setDataSourceType(DataSourceEnum.valueOf("SCADA_" + argus.toString()));
DataSourceContextHolder.setDataSourceType(DataSourceEnum.valueOf("SCADA_" + argus.toString()));
String packageName = method.getDeclaringClass().getName();
if (sourceEnum == DataSourceEnum.SCADA_JSWS || packageName.contains(".scada.")) {
DataSourceContextHolder.setDataSourceType(DataSourceEnum.SCADA_JSWS);
} else {
DataSourceContextHolder.setDataSourceType(DataSourceEnum.master);
}
// if (argus != null && !argus.equals("") && argusObjects.length >= 2) {
// //DataSourceContextHolder.setDataSourceType(DataSourceEnum.valueOf("SCADA_" + argus.toString()));
// DataSourceContextHolder.setDataSourceType(DataSourceEnum.valueOf("SCADA_" + argus.toString()));
// } else {
// DataSourceContextHolder.setDataSourceType(DataSourceEnum.master);
// }
Object result = null;
try {
result = pjp.proceed();

View File

@ -6,5 +6,6 @@ package com.sipai.tools;
public enum DataSourceEnum {
master
//
,SCADA_JS1C,SCADA_JS2C,SCADA_JSBZ
// ,SCADA_JS1C,SCADA_JS2C,SCADA_JSBZ,
,SCADA_JSWS,
}

View File

@ -13,4 +13,5 @@ import java.lang.annotation.Target;
public @interface DataSourceTypeAnno {
//使用方式在service层方法上添加@DataSourceTypeAnno(DataSourceEnum.数据源枚举类型)用于指定所使用的数据源
DataSourceEnum value() default DataSourceEnum.master;
// DataSourceEnum value() default DataSourceEnum.SCADA_JSWS;
}

View File

@ -0,0 +1,297 @@
package com.sipai.tools;
/**
* Device enumeration
* Auto-generated from device configuration files
*/
public enum DeviceEnum {
/** ZQR */
ZQR("DEV001", "ZQR"),
/** 荟百 */
HUI_BAI("DEV002", "荟百"),
/** 静城环境 */
JING_CHENG_HUAN_JING("DEV003", "静城环境"),
/** 岩皇 */
YAN_HUANG("DEV004", "岩皇"),
/** 东睿 */
DONG_RUI("DEV005", "东睿"),
/** 科凯 */
KE_KAI("DEV006", "科凯"),
/** JHRL */
JHRL("DEV007", "JHRL"),
/** 天承 */
TIAN_CHENG("DEV008", "天承"),
/** 上药 */
SHANG_YAO("DEV009", "上药"),
/** 锦江 */
JIN_JIANG("DEV010", "锦江"),
/** 甘甜 */
GAN_TIAN("DEV011", "甘甜"),
/** 金住色母料 */
JIN_ZHU_SE_MU_LIAO("DEV012", "金住色母料"),
/** 试四(东侧) */
SHI_SI_DONG_CE("DEV013", "试四(东侧)"),
/** 扶佳3 */
FU_JIA_3("DEV014", "扶佳3"),
/** 顶煦 */
DING_XU("DEV015", "顶煦"),
/** 北冈 */
BEI_GANG("DEV016", "北冈"),
/** 庄臣 */
ZHUANG_CHEN("DEV017", "庄臣"),
/** 久宙 */
JIU_ZHOU("DEV018", "久宙"),
/** 东方雨虹 */
DONG_FANG_YU_HONG("DEV019", "东方雨虹"),
/** 中科院有机所 */
ZHONG_KE_YUAN_YOU_JI_SUO("DEV020", "中科院有机所"),
/** 巴德士 */
BA_DE_SHI("DEV021", "巴德士"),
/** 仙佳 */
XIAN_JIA("DEV022", "仙佳"),
/** 深日 */
SHEN_RI("DEV023", "深日"),
/** 神马 */
SHEN_MA("DEV024", "神马"),
/** 炼升 */
LIAN_SHENG("DEV025", "炼升"),
/** 瑞年 */
RUI_NIAN("DEV026", "瑞年"),
/** 中远关西 */
ZHONG_YUAN_GUAN_XI("DEV027", "中远关西"),
/** 春宝 */
CHUN_BAO("DEV028", "春宝"),
/** 固创 */
GU_CHUANG("DEV029", "固创"),
/** 美坚 */
MEI_JIAN("DEV030", "美坚"),
/** 紫荆花 */
ZI_JING_HUA("DEV031", "紫荆花"),
/** 普利特 */
PU_LI_TE("DEV032", "普利特"),
/** 成宙 */
CHENG_ZHOU("DEV033", "成宙"),
/** 群力 */
QUN_LI("DEV034", "群力"),
/** 亨斯迈 */
HENG_SI_MAI("DEV035", "亨斯迈"),
/** 欧亚 */
OU_YA("DEV036", "欧亚"),
/** 强盛 */
QIANG_SHENG("DEV037", "强盛"),
/** 共拓 */
GONG_TUO("DEV038", "共拓"),
/** 赫腾 */
HE_TENG("DEV039", "赫腾"),
/** 耀岩 */
YAO_YAN("DEV040", "耀岩"),
/** 宝穗 */
BAO_SUI("DEV041", "宝穗"),
/** 金狮 */
JIN_SHI("DEV042", "金狮"),
/** 万巷 */
WAN_XIANG("DEV043", "万巷"),
/** 联新 */
LIAN_XIN("DEV044", "联新"),
/** 巴斯夫 */
BA_SI_FU("DEV045", "巴斯夫"),
/** 扶佳1 */
FU_JIA_1("DEV046", "扶佳1"),
/** 扶佳2 */
FU_JIA_2("DEV047", "扶佳2"),
/** 嘉宝莉 */
JIA_BAO_LI("DEV048", "嘉宝莉"),
/** 华界 */
HUA_JIE("DEV049", "华界"),
/** 日邦 */
RI_BANG("DEV050", "日邦"),
/** 中芬 */
ZHONG_FEN("DEV051", "中芬"),
/** 雪垠 */
XUE_YIN("DEV052", "雪垠"),
/** 科莱恩 */
KE_LAI_EN("DEV053", "科莱恩"),
/** 立得 */
LI_DE("DEV054", "立得"),
/** 汇得 */
HUI_DE("DEV055", "汇得"),
/** 绿邹 */
LV_ZOU("DEV056", "绿邹"),
/** 良田 */
LIANG_TIAN("DEV057", "良田"),
/** 未来 */
WEI_LAI("DEV058", "未来"),
/** 联乐 */
LIAN_LE("DEV059", "联乐"),
/** 塞夫特 */
SAI_FU_TE("DEV060", "塞夫特"),
/** 立邦 */
LI_BANG("DEV061", "立邦"),
/** 帕克先锐 */
PA_KE_XIAN_RUI("DEV062", "帕克先锐"),
/** 三井 */
SAN_JING("DEV063", "三井"),
/** 帕克表面 */
PA_KE_BIAO_MIAN("DEV064", "帕克表面"),
/** 长光 */
CHANG_GUANG("DEV065", "长光"),
/** 益威 */
YI_WEI("DEV066", "益威"),
/** 奥威 */
AO_WEI("DEV067", "奥威"),
/** 东大 */
DONG_DA("DEV068", "东大"),
/** 上诺 */
SHANG_NUO("DEV069", "上诺"),
/** 圣科莱特 */
SHENG_KE_LAI_TE("DEV070", "圣科莱特"),
/** 华谊 */
HUA_YI("DEV071", "华谊"),
/** 试四 */
SHI_SI("DEV072", "试四"),
/** 欣鑫 */
XIN_XIN("DEV073", "欣鑫"),
/** 彭博 */
PENG_BO("DEV074", "彭博"),
/** 恒安聚酯 */
HENG_AN_JU_ZHI("DEV075", "恒安聚酯"),
/** 峰彩 */
FENG_CAI("DEV076", "峰彩"),
/** 正欧 */
ZHENG_OU("DEV077", "正欧"),
/** 派特 */
PAI_TE("DEV078", "派特"),
/** 宏韵 */
HONG_YUN("DEV079", "宏韵"),
/** 悦联 */
YUE_LIAN("DEV080", "悦联"),
/** 长润发 */
CHANG_RUN_FA("DEV081", "长润发"),
/** 卓艺 */
ZHUO_YI("DEV082", "卓艺"),
/** 奥威二期 */
AO_WEI_ER_QI("DEV083", "奥威二期");
private final String deviceNumber;
private final String deviceName;
DeviceEnum(String deviceNumber, String deviceName) {
this.deviceNumber = deviceNumber;
this.deviceName = deviceName;
}
public String getDeviceNumber() {
return deviceNumber;
}
public String getDeviceName() {
return deviceName;
}
/**
* Get DeviceEnum by deviceNumber
*/
public static DeviceEnum getByDeviceNumber(String deviceNumber) {
for (DeviceEnum device : values()) {
if (device.getDeviceNumber().equals(deviceNumber)) {
return device;
}
}
return null;
}
/**
* Get DeviceEnum by deviceName
*/
public static DeviceEnum getByDeviceName(String deviceName) {
for (DeviceEnum device : values()) {
if (device.getDeviceName().equals(deviceName)) {
return device;
}
}
return null;
}
}

View File

@ -35,28 +35,35 @@ public class MyBatisConfig {
/**
* 下面为管网
*/
@Bean("SCADA_JS1C")
@ConfigurationProperties(prefix = "spring.datasource.js1")
// @Bean("SCADA_JS1C")
// @ConfigurationProperties(prefix = "spring.datasource.js1")
//根据数据源前缀到application.yml读取数据源信息//可以配置更多数据源到前提是application.yml中存在而且也需要在枚举类中添加枚举类型
public DataSource fssk() throws Exception {
return DataSourceBuilder.create().build();
}
// public DataSource fssk() throws Exception {
// return DataSourceBuilder.create().build();
// }
/**
* 下面为管网
*/
@Bean("SCADA_JS2C")
@ConfigurationProperties(prefix = "spring.datasource.js2")
// @Bean("SCADA_JS2C")
// @ConfigurationProperties(prefix = "spring.datasource.js2")
//根据数据源前缀到application.yml读取数据源信息//可以配置更多数据源到前提是application.yml中存在而且也需要在枚举类中添加枚举类型
public DataSource fssk2() throws Exception {
return DataSourceBuilder.create().build();
}
// public DataSource fssk2() throws Exception {
// return DataSourceBuilder.create().build();
// }
/**
* 下面为管网
*/
@Bean("SCADA_JSBZ")
@ConfigurationProperties(prefix = "spring.datasource.js3")
// @Bean("SCADA_JSBZ")
// @ConfigurationProperties(prefix = "spring.datasource.js3")
//根据数据源前缀到application.yml读取数据源信息//可以配置更多数据源到前提是application.yml中存在而且也需要在枚举类中添加枚举类型
// public DataSource fssk3() throws Exception {
// return DataSourceBuilder.create().build();
// }
@Bean("SCADA_JSWS")
@ConfigurationProperties(prefix = "spring.datasource.jsws")
//根据数据源前缀到application.yml读取数据源信息//可以配置更多数据源到前提是application.yml中存在而且也需要在枚举类中添加枚举类型
public DataSource fssk3() throws Exception {
return DataSourceBuilder.create().build();
@ -68,15 +75,18 @@ public class MyBatisConfig {
*/
@Bean("dynamicDataSource")
public DynamicDataSource dynamicDataSource(@Qualifier("masterDataSource") DataSource masterDataSource,
@Qualifier("SCADA_JS1C") DataSource SCADA_JS1C,
@Qualifier("SCADA_JS2C") DataSource SCADA_JS2C,
@Qualifier("SCADA_JSBZ") DataSource SCADA_JSBZ) {
// @Qualifier("SCADA_JS1C") DataSource SCADA_JS1C,
// @Qualifier("SCADA_JS2C") DataSource SCADA_JS2C,
// @Qualifier("SCADA_JSBZ") DataSource SCADA_JSBZ
@Qualifier("SCADA_JSWS") DataSource SCADA_JSWS
) {
Map<Object, Object> targetDataSources = new HashMap<Object, Object>();
targetDataSources.put(DataSourceEnum.master, masterDataSource);
targetDataSources.put(DataSourceEnum.SCADA_JS1C, SCADA_JS1C);
targetDataSources.put(DataSourceEnum.SCADA_JS2C, SCADA_JS2C);
targetDataSources.put(DataSourceEnum.SCADA_JSBZ, SCADA_JSBZ);
// targetDataSources.put(DataSourceEnum.SCADA_JS1C, SCADA_JS1C);
// targetDataSources.put(DataSourceEnum.SCADA_JS2C, SCADA_JS2C);
// targetDataSources.put(DataSourceEnum.SCADA_JSBZ, SCADA_JSBZ);
targetDataSources.put(DataSourceEnum.SCADA_JSWS, SCADA_JSWS);
DynamicDataSource dataSource = new DynamicDataSource();
dataSource.setTargetDataSources(targetDataSources);// 该方法是AbstractRoutingDataSource的方法

View File

@ -13,49 +13,57 @@ server:
spring:
redis:
mode: single #单服务模式
host: 132.120.136.19
port: 6379
host: 122.51.194.184
port: 26739
database: 0
cluster:
nodes: 172.16.242.44:6379,172.16.242.45:6379,172.16.242.46:6379,172.16.242.47:6379,172.16.242.48:6379,172.16.242.49:6379
max-redirects: 3
password: zaqwsx
password: Aa112211
timeout: 100000
data:
elasticsearch:
cluster-name: elasticsearch-sipaiis
cluster-nodes: 132.120.136.19:9200
# cluster-name: elasticsearch-sipaiis
cluster-name: my-application
cluster-nodes: 127.0.0.1:9300
datasource:
master:
username: sa
password: ZAQwsx@2016
jdbc-url: jdbc:sqlserver://132.120.136.19:1433;DatabaseName=JSYW
password: P76XB3nm36aMkN6n
jdbc-url: jdbc:sqlserver://122.51.194.184:1433;DatabaseName=SIPAIIS_WMS_HQAQ
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
type: com.alibaba.druid.pool.DruidDataSource
#生产库
js1:
username: sa
password: ZAQwsx@2016
jdbc-url: jdbc:sqlserver://132.120.136.19:1433;DatabaseName=EIP_PRD_JS1C
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
type: com.alibaba.druid.pool.DruidDataSource
# js1:
# username: sa
# password: P76XB3nm36aMkN6n
# jdbc-url: jdbc:sqlserver://122.51.194.184:1433;DatabaseName=EIP_PRD_HQWS
# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
# type: com.alibaba.druid.pool.DruidDataSource
#生产库
js2:
username: sa
password: ZAQwsx@2016
jdbc-url: jdbc:sqlserver://132.120.136.19:1433;DatabaseName=EIP_PRD_JS1C
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
type: com.alibaba.druid.pool.DruidDataSource
# js2:
# username: sa
# password: P76XB3nm36aMkN6n
# jdbc-url: jdbc:sqlserver://122.51.194.184:1433;DatabaseName=EIP_PRD_HQWS
# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
# type: com.alibaba.druid.pool.DruidDataSource
#生产库
js3:
# js3:
# username: sa
# password: P76XB3nm36aMkN6n
# jdbc-url: jdbc:sqlserver://122.51.194.184:1433;DatabaseName=EIP_PRD_HQWS
# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
# type: com.alibaba.druid.pool.DruidDataSource
jsws:
username: sa
password: ZAQwsx@2016
jdbc-url: jdbc:sqlserver://132.120.136.19:1433;DatabaseName=EIP_PRD_JS1C
password: P76XB3nm36aMkN6n
jdbc-url: jdbc:sqlserver://122.51.194.184:1433;DatabaseName=EIP_PRD_HQWS
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
type: com.alibaba.druid.pool.DruidDataSource
@ -145,10 +153,14 @@ app:
max-points: 200 #实时数据接口一次最多点位数
mqtt:
broker-address: "tcp://192.168.10.17:1883"
dashboard-01: "http://192.168.10.17:18083"
username: "admin"
password: "sipai@64368180"
broker-address: "tcp://122.51.194.184:1883"
dashboard-01: "http://122.51.194.184:18083"
username: "dmbroker"
password: "qwer1234"
# broker-address: "tcp://121.5.164.6:1883"
# dashboard-01: "http://121.5.164.6:18083"
# username: "dmbroker"
# password: "qwer1234"
# udp服务
udp:

View File

@ -1,4 +1,4 @@
spring:
profiles:
# active: dev
active: pro
active: dev
# active: pro

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV007",
"deviceName": "JHRL",
"host": "172.16.15.106",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 40100,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 40108,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV001",
"deviceName": "ZQR",
"host": "172.16.15.10",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV043",
"deviceName": "万巷",
"host": "172.16.15.37",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV063",
"deviceName": "三井",
"host": "172.16.15.57",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV009",
"deviceName": "上药",
"host": "172.16.15.109",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304114,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV069",
"deviceName": "上诺",
"host": "172.16.15.71",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV068",
"deviceName": "东大",
"host": "172.16.15.63",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV019",
"deviceName": "东方雨虹",
"host": "172.16.15.13",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV005",
"deviceName": "东睿",
"host": "172.16.15.104",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV020",
"deviceName": "中科院有机所",
"host": "172.16.15.14",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV051",
"deviceName": "中芬",
"host": "172.16.15.45",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400091,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV027",
"deviceName": "中远关西",
"host": "172.16.15.21",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV018",
"deviceName": "久宙",
"host": "172.16.15.12",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV035",
"deviceName": "亨斯迈",
"host": "172.16.15.29",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV022",
"deviceName": "仙佳",
"host": "172.16.15.16",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV038",
"deviceName": "共拓",
"host": "172.16.15.32",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV016",
"deviceName": "北冈",
"host": "172.16.15.116",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 40001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 40005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV049",
"deviceName": "华界",
"host": "172.16.15.43",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400009,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV071",
"deviceName": "华谊",
"host": "172.16.15.73",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV082",
"deviceName": "卓艺",
"host": "172.16.15.97",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 300001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 300005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV048",
"deviceName": "嘉宝莉",
"host": "172.16.15.42",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV029",
"deviceName": "固创",
"host": "172.16.15.23",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV070",
"deviceName": "圣科莱特",
"host": "172.16.15.72",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV060",
"deviceName": "塞夫特",
"host": "172.16.15.54",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 401801,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 401285,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV008",
"deviceName": "天承",
"host": "172.16.15.108",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304114,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV067",
"deviceName": "奥威",
"host": "172.16.15.62",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV083",
"deviceName": "奥威二期",
"host": "172.16.15.98",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV079",
"deviceName": "宏韵",
"host": "172.16.15.93",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV041",
"deviceName": "宝穗",
"host": "172.16.15.35",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV004",
"deviceName": "岩皇",
"host": "172.16.15.103",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 30000,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 30004,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV076",
"deviceName": "峰彩",
"host": "172.16.15.90",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV021",
"deviceName": "巴德士",
"host": "172.16.15.15",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV045",
"deviceName": "巴斯夫",
"host": "172.16.15.39",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV062",
"deviceName": "帕克先锐",
"host": "172.16.15.56",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 402001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 402007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV064",
"deviceName": "帕克表面",
"host": "172.16.15.58",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400009,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400011,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV017",
"deviceName": "庄臣",
"host": "172.16.15.118",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304128,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV037",
"deviceName": "强盛",
"host": "172.16.15.31",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV074",
"deviceName": "彭博",
"host": "172.16.15.76",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400037,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400039,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV075",
"deviceName": "恒安聚酯",
"host": "172.16.15.77",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 402001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 402007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV080",
"deviceName": "悦联",
"host": "172.16.15.94",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV033",
"deviceName": "成宙",
"host": "172.16.15.27",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV046",
"deviceName": "扶佳1",
"host": "172.16.15.40",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV047",
"deviceName": "扶佳2",
"host": "172.16.15.41",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV014",
"deviceName": "扶佳3",
"host": "172.16.15.114",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV050",
"deviceName": "日邦",
"host": "172.16.15.44",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400100,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400108,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV028",
"deviceName": "春宝",
"host": "172.16.15.22",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV032",
"deviceName": "普利特",
"host": "172.16.15.26",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV058",
"deviceName": "未来",
"host": "172.16.15.52",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 40100,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 40108,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV073",
"deviceName": "欣鑫",
"host": "172.16.15.75",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV036",
"deviceName": "欧亚",
"host": "172.16.15.30",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV077",
"deviceName": "正欧",
"host": "172.16.15.91",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV055",
"deviceName": "汇得",
"host": "172.16.15.49",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV078",
"deviceName": "派特",
"host": "172.16.15.92",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400001,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV023",
"deviceName": "深日",
"host": "172.16.15.17",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV025",
"deviceName": "炼升",
"host": "172.16.15.19",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV026",
"deviceName": "瑞年",
"host": "172.16.15.20",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV011",
"deviceName": "甘甜",
"host": "172.16.15.11",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV066",
"deviceName": "益威",
"host": "172.16.15.61",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV024",
"deviceName": "神马",
"host": "172.16.15.18",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304114,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV006",
"deviceName": "科凯",
"host": "172.16.15.105",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV053",
"deviceName": "科莱恩",
"host": "172.16.15.47",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV054",
"deviceName": "立得",
"host": "172.16.15.48",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV061",
"deviceName": "立邦",
"host": "172.16.15.55",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400100,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400108,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV031",
"deviceName": "紫荆花",
"host": "172.16.15.25",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV056",
"deviceName": "绿邹",
"host": "172.16.15.50",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400595,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400785,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV030",
"deviceName": "美坚",
"host": "172.16.15.24",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV034",
"deviceName": "群力",
"host": "172.16.15.28",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304121,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV040",
"deviceName": "耀岩",
"host": "172.16.15.34",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV059",
"deviceName": "联乐",
"host": "172.16.15.53",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 304113,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 304122,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV044",
"deviceName": "联新",
"host": "172.16.15.38",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV057",
"deviceName": "良田",
"host": "172.16.15.51",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400100,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400108,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV002",
"deviceName": "荟百",
"host": "172.16.15.101",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 41801,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 41285,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV072",
"deviceName": "试四",
"host": "172.16.15.74",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400005,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,21 @@
{
"deviceNumber": "DEV013",
"deviceName": "试四(东侧)",
"host": "172.16.15.113",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 30000,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV039",
"deviceName": "赫腾",
"host": "172.16.15.33",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV012",
"deviceName": "金住色母料",
"host": "172.16.15.112",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 40004,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 40007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

View File

@ -0,0 +1,31 @@
{
"deviceNumber": "DEV042",
"deviceName": "金狮",
"host": "172.16.15.36",
"port": 502,
"slaveId": 1,
"time": 10000,
"enabled": true,
"tags": [
{
"key": "SSLL",
"des": "瞬时流量",
"address": 400003,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
},
{
"key": "LJLL",
"des": "累计流量",
"address": 400007,
"dataType": "TWO_BYTE_INT_UNSIGNED",
"a": 0,
"k": 1,
"b": 0,
"bit": null
}
]
}

Some files were not shown because too many files have changed in this diff Show More