From 5f29dc8a00531c8838e508474b63e6983c1c5b31 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Fri, 06 Nov 2020 10:29:40 +0800
Subject: [PATCH] 变更校准值定时任务
---
src/main/java/com/moral/task/DeviceAdjustValueTimingTask.java | 69 +++++++++++++++++++++++++++++++++-
1 files changed, 67 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/moral/task/DeviceAdjustValueTimingTask.java b/src/main/java/com/moral/task/DeviceAdjustValueTimingTask.java
index 2eebe5e..38a31fe 100644
--- a/src/main/java/com/moral/task/DeviceAdjustValueTimingTask.java
+++ b/src/main/java/com/moral/task/DeviceAdjustValueTimingTask.java
@@ -1,20 +1,85 @@
package com.moral.task;
+import com.moral.service.DeviceAdjustValueService;
+import com.moral.service.DeviceAdjustValueTimingService;
import com.moral.util.AlarmUtils_2;
+import com.moral.util.LengthOfTimeUtils;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
+import com.xxl.job.core.log.XxlJobLogger;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
@Component
public class DeviceAdjustValueTimingTask {
private static transient Logger logger = LoggerFactory.getLogger(DeviceAdjustValueTimingTask.class);
+ @Resource
+ private DeviceAdjustValueTimingService deviceAdjustValueTimingService;
+
+ @Resource
+ private DeviceAdjustValueService deviceAdjustValueService;
+
@XxlJob("DeviceAdjustValueTiming")
public ReturnT DeviceAdjustValueTiming(String params) {
- AlarmUtils_2.sendMail("357328213@qq.com","���������������������","���������������������");
- ReturnT returnT = new ReturnT(500, "dayinxinxi");
+ //������������������������������������������
+ DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+ LocalDateTime time = LocalDateTime.now();
+ String endTime = df.format(time);
+ // ������������ -5������
+ String startTime = df.format(time.minusMinutes(5));
+
+ try {
+ //���device_adjust_value���������������������������������������������������
+ int startTimeSeconds = LengthOfTimeUtils.Seconds(startTime);
+ int endTimeSeconds = LengthOfTimeUtils.Seconds(endTime);
+ //������list������������������������������������������������
+ List<Map<String, Object>> deviceAdjusTimingList = new ArrayList();
+ //������������������������������������������������������
+ if (startTimeSeconds>86100&&endTimeSeconds<300){
+ List<Map<String, Object>> dayBeforeList = deviceAdjustValueTimingService.selectDataBySecondSolt(startTimeSeconds,86400);
+ List<Map<String, Object>> dayNextList = deviceAdjustValueTimingService.selectDataBySecondSolt(0,endTimeSeconds);
+ deviceAdjusTimingList.addAll(dayBeforeList);
+ deviceAdjusTimingList.addAll(dayNextList);
+ }else {
+ List<Map<String, Object>> list = deviceAdjustValueTimingService.selectDataBySecondSolt(startTimeSeconds,endTimeSeconds);
+ deviceAdjusTimingList.addAll(list);
+ }
+ //������deviceAdjustimingList������������������
+ if (deviceAdjusTimingList.isEmpty()){
+ ReturnT returnT = new ReturnT(500, "���������������������������!");
+ return returnT;
+ }else {
+ //������deviceAdjustimingList������������������������������������device_adjust_value���������������������������
+ for (Map<String, Object> deviceAdjustimingMap:deviceAdjusTimingList) {
+ int device_id = Integer.parseInt(deviceAdjustimingMap.get("device_id").toString());
+ String value = deviceAdjustimingMap.get("value").toString();
+ //������device_id������device_adjust_value������������������������
+ List<Map<String, Object>> deviceAdjustValueList = deviceAdjustValueService.getDataByDevice_id(device_id);
+ //���������������������������������������������������������������������������
+ if (deviceAdjustValueList.isEmpty()){
+ deviceAdjustValueService.insertData(device_id,value,endTime);
+ }else {
+ deviceAdjustValueService.updateValueByDeviceID(device_id,value);
+ }
+ ReturnT returnT = new ReturnT(500, "������������������������");
+ return returnT;
+ }
+ }
+ }catch (Exception e){
+ XxlJobLogger.log("DeviceAdjustValueTimingException:" + e.getMessage());
+ logger.error(e.getMessage());
+ e.printStackTrace();
+ }
+ ReturnT returnT = new ReturnT(500, "������������������������");
return returnT;
}
--
Gitblit v1.8.0