|
@@ -0,0 +1,65 @@
|
|
|
+package com.huimv.admin.timer;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.huimv.admin.entity.EnvDevice;
|
|
|
+import com.huimv.admin.entity.EnvDeviceOnline;
|
|
|
+import com.huimv.admin.entity.EnvWarning;
|
|
|
+import com.huimv.admin.service.IEnvDeviceOnlineService;
|
|
|
+import com.huimv.admin.service.IEnvDeviceService;
|
|
|
+import com.huimv.admin.service.IEnvWarningService;
|
|
|
+import org.springframework.context.annotation.Configuration;
|
|
|
+import org.springframework.scheduling.annotation.EnableScheduling;
|
|
|
+import org.springframework.scheduling.annotation.Scheduled;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.math.RoundingMode;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+@Configuration
|
|
|
+@EnableScheduling
|
|
|
+public class DeviceLive {
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private IEnvDeviceService envDeviceService;
|
|
|
+ @Resource
|
|
|
+ private IEnvWarningService warningService;
|
|
|
+
|
|
|
+ @Scheduled(cron = "0 0/30 * * * ?")
|
|
|
+// @Scheduled(cron = "*/5 * * * * ?")
|
|
|
+ private void saveOnlineDevice(){
|
|
|
+ List<EnvDevice> devices = envDeviceService.list(null);
|
|
|
+ for (EnvDevice device : devices) {
|
|
|
+ EnvWarning warning = new EnvWarning();
|
|
|
+ if (device.getDeviceStatus() == 0) {
|
|
|
+ warning.setWarningContent(device.getDeviceName() + "离线");
|
|
|
+ warning.setUnitId(device.getUnitId());
|
|
|
+ warning.setUpdateTime(LocalDateTime.now());
|
|
|
+ warning.setWarningType(1);
|
|
|
+ warning.setWarningAct(1);
|
|
|
+ warning.setFarmId(device.getFarmId());
|
|
|
+ device.setDeviceStatus(1);
|
|
|
+ }
|
|
|
+ if (device.getDeviceStatus() == 1) {
|
|
|
+ warning.setWarningContent(device.getDeviceName() + "恢复正常");
|
|
|
+ warning.setUnitId(device.getUnitId());
|
|
|
+ warning.setUpdateTime(LocalDateTime.now());
|
|
|
+ warning.setWarningType(1);
|
|
|
+ warning.setWarningAct(2);
|
|
|
+ warning.setFarmId(device.getFarmId());
|
|
|
+ }
|
|
|
+ if (device.getDeviceStatus() == 2) {
|
|
|
+ warning.setWarningContent(device.getDeviceName() + "断电");
|
|
|
+ warning.setUnitId(device.getUnitId());
|
|
|
+ warning.setUpdateTime(LocalDateTime.now());
|
|
|
+ warning.setWarningType(1);
|
|
|
+ warning.setWarningAct(1);
|
|
|
+ warning.setFarmId(device.getFarmId());
|
|
|
+ device.setDeviceStatus(1);
|
|
|
+ }
|
|
|
+ warningService.save(warning);
|
|
|
+ envDeviceService.updateById(device);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|