|
@@ -9,6 +9,9 @@ import com.ruoyi.biz.service.ITwinRecordAlarmsService;
|
|
|
import com.ruoyi.common.core.text.Convert;
|
|
|
import com.ruoyi.common.utils.bean.BeanUtils;
|
|
|
import com.ruoyi.system.service.ISysConfigService;
|
|
|
+import org.apache.ibatis.session.ExecutorType;
|
|
|
+import org.apache.ibatis.session.SqlSession;
|
|
|
+import org.apache.ibatis.session.SqlSessionFactory;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
@@ -31,6 +34,8 @@ public class TwinCalcAlarmsServiceImpl implements ITwinCalcAlarmsService {
|
|
|
private ITwinRecordAlarmsService alarmsService;
|
|
|
@Resource
|
|
|
private ISysConfigService configService;
|
|
|
+ @Resource
|
|
|
+ private SqlSessionFactory factory;
|
|
|
|
|
|
/**
|
|
|
* 查询告警数据统计
|
|
@@ -111,6 +116,8 @@ public class TwinCalcAlarmsServiceImpl implements ITwinCalcAlarmsService {
|
|
|
|
|
|
Date date = Date.from(startTime.toLocalDate().atStartOfDay(ZoneOffset.of("+8")).toInstant());
|
|
|
String oldStr = "old";
|
|
|
+ List<TwinCalcAlarms> insertList = new ArrayList<>();
|
|
|
+ List<TwinCalcAlarms> updateList = new ArrayList<>();
|
|
|
deviceList.forEach(device -> {
|
|
|
//先处理上次未统计完整的数据
|
|
|
TwinCalcAlarms calcSearch = new TwinCalcAlarms();
|
|
@@ -167,17 +174,38 @@ public class TwinCalcAlarmsServiceImpl implements ITwinCalcAlarmsService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- recordList.forEach(stop -> {
|
|
|
+// recordList.forEach(stop -> {
|
|
|
+// TwinCalcAlarms v = new TwinCalcAlarms();
|
|
|
+// BeanUtils.copyProperties(stop, v);
|
|
|
+// if (oldStr.equals(stop.getRemark())) {
|
|
|
+// updateTwinCalcAlarms(v);
|
|
|
+// } else {
|
|
|
+// v.setId(null);
|
|
|
+// insertTwinCalcAlarms(v);
|
|
|
+// }
|
|
|
+// });
|
|
|
+
|
|
|
+
|
|
|
+ for (TwinRecordAlarms stop : recordList) {
|
|
|
TwinCalcAlarms v = new TwinCalcAlarms();
|
|
|
BeanUtils.copyProperties(stop, v);
|
|
|
if (oldStr.equals(stop.getRemark())) {
|
|
|
- updateTwinCalcAlarms(v);
|
|
|
+ updateList.add(v);
|
|
|
+// updateTwinCalcStop(v);
|
|
|
} else {
|
|
|
v.setId(null);
|
|
|
- insertTwinCalcAlarms(v);
|
|
|
+ insertList.add(v);
|
|
|
+// insertTwinCalcStop(v);
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
+
|
|
|
});
|
|
|
+ try (SqlSession sqlSession = factory.openSession(ExecutorType.BATCH, false)) {
|
|
|
+ TwinCalcAlarmsMapper mapper = sqlSession.getMapper(TwinCalcAlarmsMapper.class);
|
|
|
+ insertList.forEach(mapper::insertTwinCalcAlarms);
|
|
|
+ updateList.forEach(mapper::updateTwinCalcAlarms);
|
|
|
+ sqlSession.commit();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|