|
@@ -66,144 +66,80 @@ public class OpcAsyncTask {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 将临时数据库表中的原始数据组装为分表中的数据
|
|
|
- *
|
|
|
- * @param item
|
|
|
- * @param sqlCurrentYmdh
|
|
|
- */
|
|
|
- public void packageRawData(Item item, Integer dataSourceId, String sqlCurrentYmdh) {
|
|
|
+ public synchronized void packageRawDataList(List<Item> itemList, Integer dataSourceId, String sqlCurrentYmdh) {
|
|
|
try {
|
|
|
Thread.sleep(5000);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
- Integer itemGroupId = item.getItemGroupId();
|
|
|
- Integer remainder = itemGroupId % ConstantStr.SUB_TABLE_NUM;
|
|
|
- if (Blank.isNotEmpty(item)) {
|
|
|
- RawData oldRawData = rawDataDao.getRawDataList(item, remainder, dataSourceId, sqlCurrentYmdh);
|
|
|
- List<RawData> rawDataList = rawDataDao.getTempRawDataList(item, dataSourceId, sqlCurrentYmdh);
|
|
|
- if (Blank.isNotEmpty(rawDataList)) {
|
|
|
- RawData rawData1 = rawDataList.get(0);
|
|
|
- String itemName = rawData1.getItemName();
|
|
|
- String dataType = rawData1.getDataType();
|
|
|
- if (dataType.equals("boolean")) {
|
|
|
- List<Boolean> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), Boolean[].class))) : new ArrayList<>();
|
|
|
- List<String> dataTimeList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValueTime(), String[].class))) : new ArrayList<>();
|
|
|
- for (RawData rawData : rawDataList) {
|
|
|
- dataList.add(JSON.parseObject(rawData.getDataValue(), Boolean.class));
|
|
|
- dataTimeList.add(rawData.getDataValueTime());
|
|
|
- }
|
|
|
- RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
- JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
- if (Blank.isEmpty(oldRawData)) {
|
|
|
- rawDataDao.addRawData(remainder, rawData);
|
|
|
- } else {
|
|
|
- rawDataDao.updateRawData(remainder, rawData);
|
|
|
- }
|
|
|
- } else {
|
|
|
- List<String> dataTimeList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValueTime(), String[].class))) : new ArrayList<>();
|
|
|
- try {
|
|
|
- List<BigDecimal> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), BigDecimal[].class))) : new ArrayList<>();
|
|
|
- for (RawData rawData : rawDataList) {
|
|
|
- BigDecimal bigDecimal = JSON.parseObject(rawData.getDataValue(), BigDecimal.class);
|
|
|
- dataList.add(bigDecimal);
|
|
|
- dataTimeList.add(rawData.getDataValueTime());
|
|
|
- }
|
|
|
- RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
- JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
- if (Blank.isEmpty(oldRawData)) {
|
|
|
- rawDataDao.addRawData(remainder, rawData);
|
|
|
- } else {
|
|
|
- rawDataDao.updateRawData(remainder, rawData);
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- List<String> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), String[].class))) : new ArrayList<>();
|
|
|
- for (RawData rawData : rawDataList) {
|
|
|
- dataList.add(rawData.getDataValue());
|
|
|
- dataTimeList.add(rawData.getDataValueTime());
|
|
|
- }
|
|
|
- RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
- JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
- if (Blank.isEmpty(oldRawData)) {
|
|
|
- rawDataDao.addRawData(remainder, rawData);
|
|
|
- } else {
|
|
|
- rawDataDao.updateRawData(remainder, rawData);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- rawDataDao.delRawDataList(rawDataList, sqlCurrentYmdh);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- public void packageRawDataList(List<Item> itemList, Integer dataSourceId, String sqlCurrentYmdh) {
|
|
|
- try {
|
|
|
- Thread.sleep(5000);
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
-
|
|
|
+ log.info("我进行了数据组装,归属时间为{}", sqlCurrentYmdh);
|
|
|
if (Blank.isNotEmpty(itemList)) {
|
|
|
- Item item1 = itemList.get(0);
|
|
|
- Integer itemGroupId = item1.getItemGroupId();
|
|
|
- Integer remainder = itemGroupId % ConstantStr.SUB_TABLE_NUM;
|
|
|
- for (Item item : itemList) {
|
|
|
- RawData oldRawData = rawDataDao.getRawDataList(item, remainder, dataSourceId, sqlCurrentYmdh);
|
|
|
- List<RawData> rawDataList = rawDataDao.getTempRawDataList(item, dataSourceId, sqlCurrentYmdh);
|
|
|
- if (Blank.isNotEmpty(rawDataList)) {
|
|
|
- RawData rawData1 = rawDataList.get(0);
|
|
|
- String itemName = rawData1.getItemName();
|
|
|
- String dataType = rawData1.getDataType();
|
|
|
- if (dataType.equals("boolean")) {
|
|
|
- List<Boolean> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), Boolean[].class))) : new ArrayList<>();
|
|
|
- List<String> dataTimeList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValueTime(), String[].class))) : new ArrayList<>();
|
|
|
- for (RawData rawData : rawDataList) {
|
|
|
- dataList.add(JSON.parseObject(rawData.getDataValue(), Boolean.class));
|
|
|
- dataTimeList.add(rawData.getDataValueTime());
|
|
|
- }
|
|
|
- RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
- JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
- if (Blank.isEmpty(oldRawData)) {
|
|
|
- rawDataDao.addRawData(remainder, rawData);
|
|
|
- } else {
|
|
|
- rawDataDao.updateRawData(remainder, rawData);
|
|
|
- }
|
|
|
- } else {
|
|
|
- List<String> dataTimeList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValueTime(), String[].class))) : new ArrayList<>();
|
|
|
- try {
|
|
|
- List<BigDecimal> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), BigDecimal[].class))) : new ArrayList<>();
|
|
|
- for (RawData rawData : rawDataList) {
|
|
|
- BigDecimal bigDecimal = JSON.parseObject(rawData.getDataValue(), BigDecimal.class);
|
|
|
- dataList.add(bigDecimal);
|
|
|
- dataTimeList.add(rawData.getDataValueTime());
|
|
|
- }
|
|
|
- RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
- JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
- if (Blank.isEmpty(oldRawData)) {
|
|
|
- rawDataDao.addRawData(remainder, rawData);
|
|
|
- } else {
|
|
|
- rawDataDao.updateRawData(remainder, rawData);
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- List<String> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), String[].class))) : new ArrayList<>();
|
|
|
- for (RawData rawData : rawDataList) {
|
|
|
- dataList.add(rawData.getDataValue());
|
|
|
- dataTimeList.add(rawData.getDataValueTime());
|
|
|
- }
|
|
|
- RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
- JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
- if (Blank.isEmpty(oldRawData)) {
|
|
|
- rawDataDao.addRawData(remainder, rawData);
|
|
|
- } else {
|
|
|
- rawDataDao.updateRawData(remainder, rawData);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- rawDataDao.delRawDataList(rawDataList, sqlCurrentYmdh);
|
|
|
- }
|
|
|
- }
|
|
|
+ Item item = itemList.get(0);
|
|
|
+ Integer itemGroupId = item.getItemGroupId();
|
|
|
+ int remainder = itemGroupId % ConstantStr.SUB_TABLE_NUM;
|
|
|
+ //获取原始数据表中,满足记录的数据
|
|
|
+ List<Long> indexList = rawDataDao.getMeetIndexList(itemGroupId, dataSourceId, itemList, sqlCurrentYmdh, ConstantStr.NOT_MEET_CHANGE);
|
|
|
}
|
|
|
+// if (Blank.isNotEmpty(itemList)) {
|
|
|
+// Item item1 = itemList.get(0);
|
|
|
+// Integer itemGroupId = item1.getItemGroupId();
|
|
|
+// Integer remainder = itemGroupId % ConstantStr.SUB_TABLE_NUM;
|
|
|
+// for (Item item : itemList) {
|
|
|
+// RawData oldRawData = rawDataDao.getRawDataList(item, remainder, dataSourceId, sqlCurrentYmdh);
|
|
|
+// List<RawData> rawDataList = rawDataDao.getTempRawDataList(item, dataSourceId, sqlCurrentYmdh);
|
|
|
+// if (Blank.isNotEmpty(rawDataList)) {
|
|
|
+// RawData rawData1 = rawDataList.get(0);
|
|
|
+// String itemName = rawData1.getItemName();
|
|
|
+// String dataType = rawData1.getDataType();
|
|
|
+// if (dataType.equals("boolean")) {
|
|
|
+// List<Boolean> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), Boolean[].class))) : new ArrayList<>();
|
|
|
+// List<String> dataTimeList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValueTime(), String[].class))) : new ArrayList<>();
|
|
|
+// for (RawData rawData : rawDataList) {
|
|
|
+// dataList.add(JSON.parseObject(rawData.getDataValue(), Boolean.class));
|
|
|
+// dataTimeList.add(rawData.getDataValueTime());
|
|
|
+// }
|
|
|
+// RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
+// JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
+// if (Blank.isEmpty(oldRawData)) {
|
|
|
+// rawDataDao.addRawData(remainder, rawData);
|
|
|
+// } else {
|
|
|
+// rawDataDao.updateRawData(remainder, rawData);
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// List<String> dataTimeList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValueTime(), String[].class))) : new ArrayList<>();
|
|
|
+// try {
|
|
|
+// List<BigDecimal> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), BigDecimal[].class))) : new ArrayList<>();
|
|
|
+// for (RawData rawData : rawDataList) {
|
|
|
+// BigDecimal bigDecimal = JSON.parseObject(rawData.getDataValue(), BigDecimal.class);
|
|
|
+// dataList.add(bigDecimal);
|
|
|
+// dataTimeList.add(rawData.getDataValueTime());
|
|
|
+// }
|
|
|
+// RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
+// JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
+// if (Blank.isEmpty(oldRawData)) {
|
|
|
+// rawDataDao.addRawData(remainder, rawData);
|
|
|
+// } else {
|
|
|
+// rawDataDao.updateRawData(remainder, rawData);
|
|
|
+// }
|
|
|
+// } catch (Exception e) {
|
|
|
+// List<String> dataList = Blank.isNotEmpty(oldRawData) ? new ArrayList<>(Arrays.asList(JSON.parseObject(oldRawData.getDataValue(), String[].class))) : new ArrayList<>();
|
|
|
+// for (RawData rawData : rawDataList) {
|
|
|
+// dataList.add(rawData.getDataValue());
|
|
|
+// dataTimeList.add(rawData.getDataValueTime());
|
|
|
+// }
|
|
|
+// RawData rawData = new RawData(itemGroupId, dataSourceId, itemName, dataType, JSON.toJSONString(dataList),
|
|
|
+// JSON.toJSONString(dataTimeList), sqlCurrentYmdh, new Date());
|
|
|
+// if (Blank.isEmpty(oldRawData)) {
|
|
|
+// rawDataDao.addRawData(remainder, rawData);
|
|
|
+// } else {
|
|
|
+// rawDataDao.updateRawData(remainder, rawData);
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// rawDataDao.delRawDataList(rawDataList, sqlCurrentYmdh);
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
public void addEventRawData(EventRawData eventRawData) {
|
|
@@ -285,7 +221,7 @@ public class OpcAsyncTask {
|
|
|
Item eventItem = null;
|
|
|
if (Blank.isNotEmpty(itemList)) {
|
|
|
for (Item item : itemList) {
|
|
|
- if (Blank.isNotEmpty(item.getEventMode()) && Blank.isNotEmpty(item.getEventValue()) && Blank.isNotEmpty(item.getTableReportId())) {
|
|
|
+ if (Blank.isNotEmpty(item.getTableReportId())) {
|
|
|
tableReportId = item.getTableReportId();
|
|
|
eventItem = item;
|
|
|
break;
|
|
@@ -293,8 +229,8 @@ public class OpcAsyncTask {
|
|
|
}
|
|
|
}
|
|
|
List<Long> eventRawDataIndexList = rawDataDao.getEventRawDataIndexList(eventItem, dataSourceId, sqlCurrentYmdh);
|
|
|
- if (Blank.isNotEmpty(itemList)){
|
|
|
- for (Item item:itemList) {
|
|
|
+ if (Blank.isNotEmpty(itemList)) {
|
|
|
+ for (Item item : itemList) {
|
|
|
rawDataDao.delEventRawDataListByIndex(item, dataSourceId, sqlCurrentYmdh, eventRawDataIndexList);
|
|
|
}
|
|
|
}
|
|
@@ -320,7 +256,7 @@ public class OpcAsyncTask {
|
|
|
for (EventRawData eventRawData1 : eventRawDataList) {
|
|
|
dataList.add(JSON.parseObject(eventRawData1.getDataValue(), Boolean.class));
|
|
|
dataTimeList.add(eventRawData1.getDataValueTime());
|
|
|
- dataIndexList.add(eventRawData1.getItemIndex());
|
|
|
+// dataIndexList.add(eventRawData1.getItemIndex());
|
|
|
idList.add(eventRawData1.getId());
|
|
|
}
|
|
|
jsonObject1.put("itemGroupId", eventRawData.getItemGroupId());
|
|
@@ -341,7 +277,7 @@ public class OpcAsyncTask {
|
|
|
for (EventRawData eventRawData1 : eventRawDataList) {
|
|
|
dataList.add(JSON.parseObject(eventRawData1.getDataValue(), BigDecimal.class));
|
|
|
dataTimeList.add(eventRawData1.getDataValueTime());
|
|
|
- dataIndexList.add(eventRawData1.getItemIndex());
|
|
|
+// dataIndexList.add(eventRawData1.getItemIndex());
|
|
|
idList.add(eventRawData1.getId());
|
|
|
}
|
|
|
jsonObject1.put("itemGroupId", eventRawData.getItemGroupId());
|
|
@@ -361,7 +297,7 @@ public class OpcAsyncTask {
|
|
|
for (EventRawData eventRawData1 : eventRawDataList) {
|
|
|
dataList.add(eventRawData1.getDataValue());
|
|
|
dataTimeList.add(eventRawData1.getDataValueTime());
|
|
|
- dataIndexList.add(eventRawData1.getItemIndex());
|
|
|
+// dataIndexList.add(eventRawData1.getItemIndex());
|
|
|
idList.add(eventRawData1.getId());
|
|
|
}
|
|
|
jsonObject1.put("itemGroupId", eventRawData.getItemGroupId());
|