|
@@ -81,15 +81,13 @@ public class IOTWebSocketClient extends WebSocketClient {
|
|
|
String value = splits[i + 3];
|
|
|
String point = meter + "-" + funcid;
|
|
|
try {
|
|
|
- SceneDataValue sdvInner = new SceneDataValue(null, null, null, null);
|
|
|
- sdvInner.finish = true;
|
|
|
- sdvInner.value_prim = new SceneDataPrimitive();
|
|
|
- sdvInner.value_prim.change = true;
|
|
|
- SceneDataValue exist_sdv = RepositoryContainer.RepositoryProject.point2sdv.putIfAbsent(point, sdvInner);
|
|
|
+ SceneDataPrimitive sdvInner = new SceneDataPrimitive();
|
|
|
+ sdvInner.change = true;
|
|
|
+ SceneDataPrimitive exist_sdv = RepositoryContainer.RepositoryProject.point2sdv.putIfAbsent(point, sdvInner);
|
|
|
if (exist_sdv == null) {
|
|
|
RepositoryContainer.RepositoryProject.sdv2point.putIfAbsent(sdvInner, point);
|
|
|
}
|
|
|
- SceneDataValue data = RepositoryContainer.RepositoryProject.point2sdv.get(point);
|
|
|
+ SceneDataPrimitive data = RepositoryContainer.RepositoryProject.point2sdv.get(point);
|
|
|
if (type.equals("iot")) {
|
|
|
if (value.endsWith(".0")) {
|
|
|
value = value.substring(0, value.length() - ".0".length());
|
|
@@ -104,8 +102,8 @@ public class IOTWebSocketClient extends WebSocketClient {
|
|
|
valueNew = value;
|
|
|
}
|
|
|
}
|
|
|
- boolean valueEqual = valueNew.equals(data.value_prim.value);
|
|
|
- data.value_prim.value = valueNew;
|
|
|
+ boolean valueEqual = valueNew.equals(data.value);
|
|
|
+ data.value = valueNew;
|
|
|
// 加入计算队列
|
|
|
if (!valueEqual) {
|
|
|
Repository.ProcessIOT(point);
|
|
@@ -149,7 +147,7 @@ public class IOTWebSocketClient extends WebSocketClient {
|
|
|
{
|
|
|
SceneDataValue existItem_sdv = new SceneDataValue(null, existItem, "连接状态", null);
|
|
|
existItem_sdv.value_prim = new SceneDataPrimitive();
|
|
|
- existItem.put("连接状态", sdvInner);
|
|
|
+ existItem.put("连接状态", existItem_sdv);
|
|
|
}
|
|
|
sdv_connect.value_array.set.add(existItem);
|
|
|
}
|
|
@@ -164,7 +162,7 @@ public class IOTWebSocketClient extends WebSocketClient {
|
|
|
}
|
|
|
}
|
|
|
} else if (type.equals("text")) {
|
|
|
- data.value_prim.value = value;
|
|
|
+ data.value = value;
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
log.error(e.getMessage(), e);
|
|
@@ -182,15 +180,13 @@ public class IOTWebSocketClient extends WebSocketClient {
|
|
|
String value = splits[i + 3];
|
|
|
String point = meter + "-" + funcid;
|
|
|
try {
|
|
|
- SceneDataValue sdvInner = new SceneDataValue(null, null, null, null);
|
|
|
- sdvInner.finish = true;
|
|
|
- sdvInner.value_prim = new SceneDataPrimitive();
|
|
|
- sdvInner.value_prim.change = true;
|
|
|
- SceneDataValue exist_sdv = RepositoryContainer.RepositoryProject.set2sdv.putIfAbsent(point, sdvInner);
|
|
|
+ SceneDataPrimitive sdvInner = new SceneDataPrimitive();
|
|
|
+ sdvInner.change = true;
|
|
|
+ SceneDataPrimitive exist_sdv = RepositoryContainer.RepositoryProject.set2sdv.putIfAbsent(point, sdvInner);
|
|
|
if (exist_sdv == null) {
|
|
|
RepositoryContainer.RepositoryProject.sdv2set.putIfAbsent(sdvInner, point);
|
|
|
}
|
|
|
- SceneDataValue data = RepositoryContainer.RepositoryProject.set2sdv.get(point);
|
|
|
+ SceneDataPrimitive data = RepositoryContainer.RepositoryProject.set2sdv.get(point);
|
|
|
if (value.endsWith(".0")) {
|
|
|
value = value.substring(0, value.length() - ".0".length());
|
|
|
}
|
|
@@ -204,8 +200,8 @@ public class IOTWebSocketClient extends WebSocketClient {
|
|
|
valueNew = value;
|
|
|
}
|
|
|
}
|
|
|
- boolean valueEqual = valueNew.equals(data.value_prim.value);
|
|
|
- data.value_prim.value = valueNew;
|
|
|
+ boolean valueEqual = valueNew.equals(data.value);
|
|
|
+ data.value = valueNew;
|
|
|
// 加入计算队列
|
|
|
if (!valueEqual) {
|
|
|
Repository.ProcessIOT(point);
|