|
@@ -38,6 +38,8 @@ public class OpcUaLowerTask extends TimerTask {
|
|
|
|
|
|
private final String timeFormat;
|
|
|
|
|
|
+ private Boolean eventFlage = false;
|
|
|
+
|
|
|
public OpcUaLowerTask(RedisUtil redisUtil,
|
|
|
OpcAsyncTask opcAsyncTask,
|
|
|
ItemGroupDao itemGroupDao,
|
|
@@ -74,6 +76,7 @@ public class OpcUaLowerTask extends TimerTask {
|
|
|
NodeId n = new NodeId(item.getNodeIndex(), itemId);
|
|
|
DataModel dm = map.get(itemId);
|
|
|
BigDecimal bigModeValue = new BigDecimal(itemGroup.getModeValue());
|
|
|
+ String sqlCurrentYmdh = String.valueOf(redisUtil.get(ConstantStr.VALUE_BELONG_TIME + id + itemId));
|
|
|
try {
|
|
|
DataValue dataValue = opcUaClient.readValue(0.0, TimestampsToReturn.Both, n).get();
|
|
|
if (!dataValue.getStatusCode().isGood()) {
|
|
@@ -81,12 +84,19 @@ public class OpcUaLowerTask extends TimerTask {
|
|
|
}
|
|
|
Object value = dataValue.getValue().getValue();
|
|
|
String javaType = OpcUaUtil.getValType(dataValue);
|
|
|
- redisUtil.set(ConstantStr.JAVA_TYPE + id + itemId, javaType, ConstantStr.TWO_HOUR);
|
|
|
Date time = dataValue.getServerTime().getJavaDate();
|
|
|
|
|
|
- //归属时间
|
|
|
- String storageYmdh = String.valueOf(redisUtil.get(ConstantStr.VALUE_BELONG_TIME + id + itemId));
|
|
|
String currentYmdh = DateUtil.dateChangeStr(time, timeFormat);
|
|
|
+ if (Blank.isEmpty(sqlCurrentYmdh)) {
|
|
|
+ sqlCurrentYmdh = currentYmdh;
|
|
|
+ redisUtil.set(ConstantStr.VALUE_BELONG_TIME + id, currentYmdh, ConstantStr.TWO_HOUR);
|
|
|
+ } else {
|
|
|
+ if (!sqlCurrentYmdh.equals(currentYmdh)) {
|
|
|
+ //组装相应的数据
|
|
|
+ opcAsyncTask.packageRawData(item, dataSourceId, sqlCurrentYmdh);
|
|
|
+ redisUtil.set(ConstantStr.VALUE_BELONG_TIME + id, currentYmdh, ConstantStr.TWO_HOUR);
|
|
|
+ }
|
|
|
+ }
|
|
|
String currentYmdhmss = DateUtil.dateChangeStrYmdhmss(time);
|
|
|
if (!javaType.toLowerCase().equals("boolean")) {
|
|
|
try {
|
|
@@ -94,203 +104,63 @@ public class OpcUaLowerTask extends TimerTask {
|
|
|
BigDecimal dmData = Blank.isNotEmpty(dm) ?
|
|
|
MathUtil.quadricOperation(dm.getMathParameter(), dm.getOperationRule(), bigDecimal) :
|
|
|
bigDecimal;
|
|
|
- if (Blank.isEmpty(storageYmdh)) {
|
|
|
- if (dmData.compareTo(bigModeValue) == -1) {
|
|
|
- redisUtil.set(ConstantStr.VALUE_BELONG_TIME + id + itemId, currentYmdh, ConstantStr.TWO_HOUR);
|
|
|
-
|
|
|
- List<BigDecimal> dataValueList = new ArrayList<>();
|
|
|
- dataValueList.add(dmData);
|
|
|
- redisUtil.set(ConstantStr.DATA_VALUE + id + itemId, dataValueList, ConstantStr.TWO_HOUR);
|
|
|
+ if (dmData.compareTo(bigModeValue) == -1) {
|
|
|
+ RawData rawData = new RawData(id, dataSourceId, itemId, javaType, JSON.toJSONString(dmData),
|
|
|
+ currentYmdhmss, currentYmdh, new Date());
|
|
|
+ opcAsyncTask.addTempRawData(rawData);
|
|
|
|
|
|
- List<String> dataValueTimeList = new ArrayList<>();
|
|
|
- dataValueTimeList.add(currentYmdhmss);
|
|
|
- redisUtil.set(ConstantStr.DATA_VALUE_TIME + id + itemId, dataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- }
|
|
|
if (Blank.isNotEmpty(eventMode) && Blank.isNotEmpty(eventValue) && Blank.isNotEmpty(tableReportId)) {
|
|
|
BigDecimal bigEventValue = new BigDecimal(eventValue);
|
|
|
if (eventMode.equals(ConstantStr.EVENT_MODEL_EXCEED)) {
|
|
|
if (dmData.compareTo(bigEventValue) == 1) {
|
|
|
- List<BigDecimal> eventDataValueList = new ArrayList<>();
|
|
|
- eventDataValueList.add(dmData);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE + id + itemId, eventDataValueList, ConstantStr.TWO_HOUR);
|
|
|
-
|
|
|
- List<String> eventDataValueTimeList = new ArrayList<>();
|
|
|
- eventDataValueTimeList.add(currentYmdhmss);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId, eventDataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
+ eventFlage = true;
|
|
|
+ opcAsyncTask.addEventRawData(rawData);
|
|
|
+ } else {
|
|
|
+ eventFlage = false;
|
|
|
}
|
|
|
} else if (eventMode.equals(ConstantStr.EVENT_MODEL_LOWER)) {
|
|
|
if (dmData.compareTo(bigEventValue) == -1) {
|
|
|
- List<BigDecimal> eventDataValueList = new ArrayList<>();
|
|
|
- eventDataValueList.add(dmData);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE + id + itemId, eventDataValueList, ConstantStr.TWO_HOUR);
|
|
|
-
|
|
|
- List<String> eventDataValueTimeList = new ArrayList<>();
|
|
|
- eventDataValueTimeList.add(currentYmdhmss);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId, eventDataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- if (DateUtil.strChangeDate(storageYmdh, timeFormat).getTime() == DateUtil.strChangeDate(currentYmdh, timeFormat).getTime()) {
|
|
|
- if (dmData.compareTo(bigModeValue) == -1) {
|
|
|
- Object dataValueObject = redisUtil.get(ConstantStr.DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> dataValueList = JavaTypeUtil.objChangeListBig(dataValueObject);
|
|
|
- dataValueList.add(dmData);
|
|
|
- redisUtil.set(ConstantStr.DATA_VALUE + id + itemId, dataValueList, ConstantStr.TWO_HOUR);
|
|
|
-
|
|
|
- Object dataValueTimeObject = redisUtil.get(ConstantStr.DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> dataValueTimeList = JavaTypeUtil.objChangeListStr(dataValueTimeObject);
|
|
|
- dataValueTimeList.add(currentYmdhmss);
|
|
|
- redisUtil.set(ConstantStr.DATA_VALUE_TIME + id + itemId, dataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- }
|
|
|
-
|
|
|
- if (Blank.isNotEmpty(eventMode) && Blank.isNotEmpty(eventValue) && Blank.isNotEmpty(tableReportId)) {
|
|
|
- BigDecimal bigEventValue = new BigDecimal(eventValue);
|
|
|
- if (eventMode.equals(ConstantStr.EVENT_MODEL_EXCEED)) {
|
|
|
- if (dmData.compareTo(bigEventValue) == 1) {
|
|
|
- Object eventDataValueObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> eventDataValueList = JavaTypeUtil.objChangeListBig(eventDataValueObject);
|
|
|
- eventDataValueList.add(dmData);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE + id + itemId, eventDataValueList, ConstantStr.TWO_HOUR);
|
|
|
-
|
|
|
- Object eventDataValueTimeObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> eventDataValueTimeList = JavaTypeUtil.objChangeListStr(eventDataValueTimeObject);
|
|
|
- eventDataValueTimeList.add(currentYmdhmss);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId, eventDataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- }
|
|
|
- } else if (eventMode.equals(ConstantStr.EVENT_MODEL_LOWER)) {
|
|
|
- if (dmData.compareTo(bigEventValue) == -1) {
|
|
|
- Object eventDataValueObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> eventDataValueList = JavaTypeUtil.objChangeListBig(eventDataValueObject);
|
|
|
- eventDataValueList.add(dmData);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE + id + itemId, eventDataValueList, ConstantStr.TWO_HOUR);
|
|
|
-
|
|
|
- Object eventDataValueTimeObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> eventDataValueTimeList = JavaTypeUtil.objChangeListStr(eventDataValueTimeObject);
|
|
|
- eventDataValueTimeList.add(currentYmdhmss);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId, eventDataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- }
|
|
|
+ eventFlage = true;
|
|
|
+ opcAsyncTask.addEventRawData(rawData);
|
|
|
+ } else {
|
|
|
+ eventFlage = false;
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
- String valueBelongTime = String.valueOf(redisUtil.get(ConstantStr.VALUE_BELONG_TIME + id + itemId));
|
|
|
-
|
|
|
- Object dataValueObject = redisUtil.get(ConstantStr.DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> dataValueList = JavaTypeUtil.objChangeListBig(dataValueObject);
|
|
|
-
|
|
|
- Object dataValueTimeObject = redisUtil.get(ConstantStr.DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> dataValueTimeList = JavaTypeUtil.objChangeListStr(dataValueTimeObject);
|
|
|
-
|
|
|
- //存数据
|
|
|
- RawData rawData = new RawData(id, dataSourceId,
|
|
|
- itemId,
|
|
|
- javaType,
|
|
|
- JSON.toJSONString(dataValueList),
|
|
|
- String.valueOf(dataValueTimeList),
|
|
|
- String.valueOf(valueBelongTime),
|
|
|
- new Date());
|
|
|
- opcAsyncTask.addRawData(id, rawData);
|
|
|
-
|
|
|
- if (Blank.isNotEmpty(eventMode) && Blank.isNotEmpty(eventValue) && Blank.isNotEmpty(tableReportId)) {
|
|
|
- BigDecimal bigEventValue = new BigDecimal(eventValue);
|
|
|
- if (eventMode.equals(ConstantStr.EVENT_MODEL_EXCEED)) {
|
|
|
- Object eventDataValueObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> eventDataValueList = JavaTypeUtil.objChangeListBig(eventDataValueObject);
|
|
|
-
|
|
|
- Object eventDataValueTimeObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> eventDataValueTimeList = JavaTypeUtil.objChangeListStr(eventDataValueTimeObject);
|
|
|
- opcAsyncTask.addEventTable(tableReportId, eventDataValueList, eventDataValueTimeList);
|
|
|
- eventDataValueList = new ArrayList<>();
|
|
|
- eventDataValueTimeList = new ArrayList<>();
|
|
|
- if (dmData.compareTo(bigEventValue) == 1) {
|
|
|
- eventDataValueList.add(dmData);
|
|
|
- eventDataValueTimeList.add(currentYmdhmss);
|
|
|
- }
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE + id + itemId, eventDataValueList, ConstantStr.TWO_HOUR);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId, eventDataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- } else if (eventMode.equals(ConstantStr.EVENT_MODEL_LOWER)) {
|
|
|
- Object eventDataValueObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> eventDataValueList = JavaTypeUtil.objChangeListBig(eventDataValueObject);
|
|
|
-
|
|
|
- Object eventDataValueTimeObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> eventDataValueTimeList = JavaTypeUtil.objChangeListStr(eventDataValueTimeObject);
|
|
|
- opcAsyncTask.addEventTable(tableReportId, eventDataValueList, eventDataValueTimeList);
|
|
|
- eventDataValueList = new ArrayList<>();
|
|
|
- eventDataValueTimeList = new ArrayList<>();
|
|
|
- if (dmData.compareTo(bigEventValue) == -1) {
|
|
|
- eventDataValueList.add(dmData);
|
|
|
- eventDataValueTimeList.add(currentYmdhmss);
|
|
|
- }
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE + id + itemId, eventDataValueList, ConstantStr.TWO_HOUR);
|
|
|
- redisUtil.set(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId, eventDataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- dataValueList = new ArrayList<>();
|
|
|
- dataValueTimeList = new ArrayList<>();
|
|
|
- if (dmData.compareTo(bigModeValue) == -1) {
|
|
|
- dataValueList.add(dmData);
|
|
|
- dataValueTimeList.add(currentYmdhmss);
|
|
|
+ if (eventFlage) {
|
|
|
+ opcAsyncTask.addEventRawData(rawData);
|
|
|
}
|
|
|
- redisUtil.set(ConstantStr.DATA_VALUE + id + itemId, dataValueList, ConstantStr.TWO_HOUR);
|
|
|
- redisUtil.set(ConstantStr.VALUE_BELONG_TIME + id + itemId, currentYmdh, ConstantStr.TWO_HOUR);
|
|
|
- redisUtil.set(ConstantStr.DATA_VALUE_TIME + id + itemId, dataValueTimeList, ConstantStr.TWO_HOUR);
|
|
|
}
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
+ RawData rawData = new RawData(id, dataSourceId, itemId, javaType, JSON.toJSONString(value.toString()),
|
|
|
+ currentYmdhmss, currentYmdh, new Date());
|
|
|
+ opcAsyncTask.addTempRawData(rawData);
|
|
|
|
|
|
- }
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- //存入已有的数据
|
|
|
- String valueBelongTime = String.valueOf(redisUtil.get(ConstantStr.VALUE_BELONG_TIME + id + itemId));
|
|
|
-
|
|
|
- Object dataValueTimeObject = redisUtil.get(ConstantStr.DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> dataValueTimeList = JavaTypeUtil.objChangeListStr(dataValueTimeObject);
|
|
|
-
|
|
|
- String javaType = String.valueOf(redisUtil.get(ConstantStr.JAVA_TYPE + id + itemId));
|
|
|
- if (!javaType.toLowerCase().equals("boolean")) {
|
|
|
- try {
|
|
|
- Object dataValueObject = redisUtil.get(ConstantStr.DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> dataValueList = JavaTypeUtil.objChangeListBig(dataValueObject);
|
|
|
- //存数据
|
|
|
- RawData rawData = new RawData(id, dataSourceId,
|
|
|
- itemId,
|
|
|
- javaType,
|
|
|
- JSON.toJSONString(dataValueList),
|
|
|
- String.valueOf(dataValueTimeList),
|
|
|
- String.valueOf(valueBelongTime),
|
|
|
- new Date());
|
|
|
- opcAsyncTask.addRawData(id, rawData);
|
|
|
-
|
|
|
- if (Blank.isNotEmpty(eventMode) && Blank.isNotEmpty(eventValue) && Blank.isNotEmpty(tableReportId)) {
|
|
|
- BigDecimal bigEventValue = new BigDecimal(eventValue);
|
|
|
- if (eventMode.equals(ConstantStr.EVENT_MODEL_EXCEED) ||
|
|
|
- eventMode.equals(ConstantStr.EVENT_MODEL_LOWER)) {
|
|
|
- Object eventDataValueObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> eventDataValueList = JavaTypeUtil.objChangeListBig(eventDataValueObject);
|
|
|
-
|
|
|
- Object eventDataValueTimeObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> eventDataValueTimeList = JavaTypeUtil.objChangeListStr(eventDataValueTimeObject);
|
|
|
- opcAsyncTask.addEventTable(tableReportId, eventDataValueList, eventDataValueTimeList);
|
|
|
+ if (Blank.isEmpty(eventMode, eventValue, tableReportId)) {
|
|
|
+ if (eventFlage) {
|
|
|
+ opcAsyncTask.addEventRawData(rawData);
|
|
|
}
|
|
|
}
|
|
|
- } catch (Exception e1) {
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
- redisUtil.del(ConstantStr.DATA_VALUE + id + itemId);
|
|
|
- redisUtil.del(ConstantStr.DATA_VALUE_TIME + id + itemId);
|
|
|
- redisUtil.del(ConstantStr.VALUE_BELONG_TIME + id + itemId);
|
|
|
-
|
|
|
- redisUtil.del(ConstantStr.ITEM_GROUP + id + itemId);
|
|
|
+ } catch (Exception e) {
|
|
|
+ //执行组装数据库的数据,以及生成驱动报表
|
|
|
+ opcAsyncTask.packageRawDataList(itemList, dataSourceId, sqlCurrentYmdh);
|
|
|
+ redisUtil.del(ConstantStr.VALUE_BELONG_TIME + id);
|
|
|
|
|
|
messageNoticeDao.addMessageNotice(new MessageNotice(itemGroup.getUserId(),
|
|
|
itemGroup.getGroupName() + "-" + itemId + DateUtil.dateChangeStrYmdhms(new Date()) + "运行失败",
|
|
|
e.getMessage(),
|
|
|
ConstantStr.NO_READ));
|
|
|
|
|
|
- redisUtil.set(ConstantStr.ITEM_GROUP + id, false);
|
|
|
+ if (Blank.isNotEmpty(opcUaClient)) {
|
|
|
+ opcUaClient.disconnect();
|
|
|
+ }
|
|
|
+
|
|
|
+ redisUtil.del(ConstantStr.ITEM_GROUP + id);
|
|
|
+ itemGroupDao.runItemGroupById(id, ConstantStr.STOP_IT);
|
|
|
+ timer.cancel();
|
|
|
}
|
|
|
}
|
|
|
Boolean flage = (Boolean) redisUtil.get(ConstantStr.ITEM_GROUP + id);
|
|
@@ -298,53 +168,15 @@ public class OpcUaLowerTask extends TimerTask {
|
|
|
flage = false;
|
|
|
}
|
|
|
if (!flage) {
|
|
|
- for (Item item : itemList) {
|
|
|
- String itemId = item.getItemReadName();
|
|
|
- Integer eventMode = item.getEventMode();
|
|
|
- Double eventValue = item.getEventValue();
|
|
|
- Integer tableReportId = item.getTableReportId();
|
|
|
- String valueBelongTime = String.valueOf(redisUtil.get(ConstantStr.VALUE_BELONG_TIME + id + itemId));
|
|
|
-
|
|
|
- Object dataValueTimeObject = redisUtil.get(ConstantStr.DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> dataValueTimeList = JavaTypeUtil.objChangeListStr(dataValueTimeObject);
|
|
|
-
|
|
|
- String javaType = String.valueOf(redisUtil.get(ConstantStr.JAVA_TYPE + id + itemId));
|
|
|
- if (!javaType.toLowerCase().equals("boolean")) {
|
|
|
- try {
|
|
|
- Object dataValueObject = redisUtil.get(ConstantStr.DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> dataValueList = JavaTypeUtil.objChangeListBig(dataValueObject);
|
|
|
- //存数据
|
|
|
- RawData rawData = new RawData(id, dataSourceId,
|
|
|
- itemId,
|
|
|
- javaType,
|
|
|
- JSON.toJSONString(dataValueList),
|
|
|
- String.valueOf(dataValueTimeList),
|
|
|
- String.valueOf(valueBelongTime),
|
|
|
- new Date());
|
|
|
- opcAsyncTask.addRawData(id, rawData);
|
|
|
-
|
|
|
- if (Blank.isNotEmpty(eventMode) && Blank.isNotEmpty(eventValue) && Blank.isNotEmpty(tableReportId)) {
|
|
|
- BigDecimal bigEventValue = new BigDecimal(eventValue);
|
|
|
- if (eventMode.equals(ConstantStr.EVENT_MODEL_EXCEED) ||
|
|
|
- eventMode.equals(ConstantStr.EVENT_MODEL_LOWER)) {
|
|
|
- Object eventDataValueObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE + id + itemId);
|
|
|
- List<BigDecimal> eventDataValueList = JavaTypeUtil.objChangeListBig(eventDataValueObject);
|
|
|
-
|
|
|
- Object eventDataValueTimeObject = redisUtil.get(ConstantStr.EVENT_DATA_VALUE_TIME + id + itemId);
|
|
|
- List<String> eventDataValueTimeList = JavaTypeUtil.objChangeListStr(eventDataValueTimeObject);
|
|
|
- opcAsyncTask.addEventTable(tableReportId, eventDataValueList, eventDataValueTimeList);
|
|
|
- }
|
|
|
- }
|
|
|
- } catch (Exception e1) {
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- redisUtil.del(ConstantStr.DATA_VALUE + id + itemId);
|
|
|
- redisUtil.del(ConstantStr.DATA_VALUE_TIME + id + itemId);
|
|
|
- redisUtil.del(ConstantStr.VALUE_BELONG_TIME + id + itemId);
|
|
|
-
|
|
|
- redisUtil.del(ConstantStr.ITEM_GROUP + id + itemId);
|
|
|
- }
|
|
|
+ //执行组装数据库的数据,以及生成驱动报表
|
|
|
+ String sqlCurrentYmdh = String.valueOf(redisUtil.get(ConstantStr.VALUE_BELONG_TIME + id));
|
|
|
+ opcAsyncTask.packageRawDataList(itemList, dataSourceId, sqlCurrentYmdh);
|
|
|
+ redisUtil.del(ConstantStr.VALUE_BELONG_TIME + id);
|
|
|
+
|
|
|
+ messageNoticeDao.addMessageNotice(new MessageNotice(itemGroup.getUserId(),
|
|
|
+ itemGroup.getGroupName() + DateUtil.dateChangeStrYmdhms(new Date()) + "运行停止",
|
|
|
+ "请刷新检查组的运行状态",
|
|
|
+ ConstantStr.NO_READ));
|
|
|
|
|
|
if (Blank.isNotEmpty(opcUaClient)) {
|
|
|
opcUaClient.disconnect();
|