|
|
@@ -472,10 +472,31 @@ public class YbqScheduler {
|
|
|
log.warn("设备ID [{}] 的设备类型未知,无法识别处理", devId);
|
|
|
}
|
|
|
if(ybqTypeConst != null){
|
|
|
- // 更新监测环境数据
|
|
|
- createEnvData(iotDevice, ybqTypeConst, startDate, endDate);
|
|
|
- // 插入预测数据
|
|
|
- createDelaYbqPredictedData(iotDevice, ybqTypeConst, startDate, endDate);
|
|
|
+ String devCreateddate = iotDevice.getDevCreateddate();
|
|
|
+ long createTime = DateUtils.parseDate(devCreateddate).getTime();
|
|
|
+ long nowTime = DateUtils.getNowDate().getTime();
|
|
|
+ // 如果设备创建时间在30分钟内,走创建流程,否则走更新流程
|
|
|
+ if (nowTime - createTime < 30 * 60 * 1000) {
|
|
|
+ log.info("[YBQ]开始首次激活 设备ID [{}] ", devId);
|
|
|
+ // 更新监测环境数据
|
|
|
+ createEnvData(iotDevice, ybqTypeConst, startDate, endDate);
|
|
|
+ // 插入预测数据
|
|
|
+ createDelaYbqPredictedData(iotDevice, ybqTypeConst, startDate, endDate);
|
|
|
+
|
|
|
+ }else{
|
|
|
+ log.info("[YBQ]开始更新 设备ID [{}] ", devId);
|
|
|
+ startDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, DateUtils.addMinutes(new Date(), -20));
|
|
|
+ endDate = DateUtils.dateTimeNow();
|
|
|
+
|
|
|
+ List<IotDevice> iotDevices = new ArrayList<>();
|
|
|
+ iotDevices.add(iotDevice);
|
|
|
+
|
|
|
+ syncEnvDataByDevice(iotDevices, ybqTypeConst, startDate, endDate);
|
|
|
+ String predictedDate = DateUtils.dateTime();
|
|
|
+ syncDelaYbqPredictedData(iotDevices, ybqTypeConst, predictedDate, predictedDate, false);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
log.error("处理设备ID [{}] 上报数据时发生异常", devId, e);
|