From a8b4a9615bb53fc3873a8c53a5fa158a792d263a Mon Sep 17 00:00:00 2001 From: hzj <826100833@qq.com> Date: Tue, 6 May 2025 14:23:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=BD=AE=E6=9C=BA=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../njcn/device/pq/job/ScheduledTasks.java | 204 +++++++++--------- 1 file changed, 102 insertions(+), 102 deletions(-) diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/job/ScheduledTasks.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/job/ScheduledTasks.java index 6566e89da..541b6776d 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/job/ScheduledTasks.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/job/ScheduledTasks.java @@ -1,102 +1,102 @@ -package com.njcn.device.pq.job; - -import com.njcn.device.pq.constant.Param; -import com.njcn.device.pq.pojo.po.Line; -import com.njcn.device.pq.pojo.po.PqsTerminalLogs; -import com.njcn.device.pq.service.IPqsTerminalLogsService; -import com.njcn.device.pq.service.TerminalBaseService; -import com.njcn.message.constant.DeviceRebootType; -import com.njcn.redis.utils.RedisUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; -import org.springframework.util.CollectionUtils; - -import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import java.util.stream.Collectors; - -/** - * Description: - * Date: 2025/04/09 上午 10:11【需求编号】 - *定时扫描终端日志表是否需要通知前置重启 - * @author clam - * @version V1.0.0 - */ -//@Component -//@EnableScheduling -public class ScheduledTasks { - - @Autowired - private IPqsTerminalLogsService iPqsTerminalLogsService; - - @Autowired - private TerminalBaseService terminalBaseService; - - @Scheduled(fixedRate = 1000*60*10) // 每10分钟执行一次 - public void reportCurrentTime() { - LocalDateTime now =LocalDateTime.now(); - LocalDateTime tenMinutesAgo = now.minusMinutes(-10); - List list = iPqsTerminalLogsService.lambdaQuery() - // .between(PqsTerminalLogs::getCreateTime, tenMinutesAgo, now) - .eq(PqsTerminalLogs::getState, 1).eq(PqsTerminalLogs::getIsPush, 1).list(); - if(!CollectionUtils.isEmpty(list)){ - //一个是删除操作,其余都算终端设备更新操作 - List delDevice = list.stream().filter(temp -> Objects.equals(temp.getOperateType(), Param.DEL) && Objects.equals(temp.getTerminalType(), 4)).distinct().collect(Collectors.toList()); - List delDevIds = new ArrayList<>(); - if(!CollectionUtils.isEmpty(delDevice)){ - delDevice.forEach(temp->{ - terminalBaseService.askRestartDevice(temp.getObjIndex(), DeviceRebootType.DELETE_TERMINAL); - delDevIds.add(temp.getObjIndex()); - } - ); - } - List updateDevIds = new ArrayList<>(); - List lineIds = list.stream().filter(temp -> Objects.equals(temp.getTerminalType(), 6)).map(PqsTerminalLogs::getObjIndex).distinct().collect(Collectors.toList()); - List devIds = list.stream().filter(temp -> Objects.equals(temp.getTerminalType(), 4)).map(PqsTerminalLogs::getObjIndex).distinct().collect(Collectors.toList()); - - //更新的终端 - List lineById = terminalBaseService.getLineById(lineIds); - List devIdList = lineById.stream().map(temp -> { - return temp.getPids().split(",")[4]; - }).distinct().collect(Collectors.toList()); - updateDevIds.addAll(devIdList); - updateDevIds.addAll(devIds); - if(!CollectionUtils.isEmpty(delDevIds)){ - updateDevIds.removeAll(delDevIds); - } - updateDevIds.stream().distinct().forEach(temp->{ - terminalBaseService.askRestartDevice(temp, DeviceRebootType.LEDGER_MODIFY); - } - ); - - } - - } - - public static void main(String[] args) { - List updateDevIds = new ArrayList<>(); - List list1 = new ArrayList<>(); - List list2 = new ArrayList<>(); - List list3 = new ArrayList<>(); - list1.add("1"); - list1.add("2"); - list1.add("3"); - list1.add("3"); - list2.add("3"); - list2.add("4"); - list2.add("5"); - list3.add("3"); - updateDevIds.addAll(list1); - updateDevIds.addAll(list2); - updateDevIds.removeAll(list3); - System.out.println(updateDevIds); - - - - } - -} +//package com.njcn.device.pq.job; +// +//import com.njcn.device.pq.constant.Param; +//import com.njcn.device.pq.pojo.po.Line; +//import com.njcn.device.pq.pojo.po.PqsTerminalLogs; +//import com.njcn.device.pq.service.IPqsTerminalLogsService; +//import com.njcn.device.pq.service.TerminalBaseService; +//import com.njcn.message.constant.DeviceRebootType; +//import com.njcn.redis.utils.RedisUtil; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.scheduling.annotation.EnableScheduling; +//import org.springframework.scheduling.annotation.Scheduled; +//import org.springframework.stereotype.Component; +//import org.springframework.util.CollectionUtils; +// +//import java.time.LocalDateTime; +//import java.util.ArrayList; +//import java.util.List; +//import java.util.Objects; +//import java.util.stream.Collectors; +// +///** +// * Description: +// * Date: 2025/04/09 上午 10:11【需求编号】 +// *定时扫描终端日志表是否需要通知前置重启 +// * @author clam +// * @version V1.0.0 +// */ +////@Component +////@EnableScheduling +//public class ScheduledTasks { +// +// @Autowired +// private IPqsTerminalLogsService iPqsTerminalLogsService; +// +// @Autowired +// private TerminalBaseService terminalBaseService; +// +// @Scheduled(fixedRate = 1000*60*10) // 每10分钟执行一次 +// public void reportCurrentTime() { +// LocalDateTime now =LocalDateTime.now(); +// LocalDateTime tenMinutesAgo = now.minusMinutes(-10); +// List list = iPqsTerminalLogsService.lambdaQuery() +// // .between(PqsTerminalLogs::getCreateTime, tenMinutesAgo, now) +// .eq(PqsTerminalLogs::getState, 1).eq(PqsTerminalLogs::getIsPush, 1).list(); +// if(!CollectionUtils.isEmpty(list)){ +// //一个是删除操作,其余都算终端设备更新操作 +// List delDevice = list.stream().filter(temp -> Objects.equals(temp.getOperateType(), Param.DEL) && Objects.equals(temp.getTerminalType(), 4)).distinct().collect(Collectors.toList()); +// List delDevIds = new ArrayList<>(); +// if(!CollectionUtils.isEmpty(delDevice)){ +// delDevice.forEach(temp->{ +// terminalBaseService.askRestartDevice(temp.getObjIndex(), DeviceRebootType.DELETE_TERMINAL); +// delDevIds.add(temp.getObjIndex()); +// } +// ); +// } +// List updateDevIds = new ArrayList<>(); +// List lineIds = list.stream().filter(temp -> Objects.equals(temp.getTerminalType(), 6)).map(PqsTerminalLogs::getObjIndex).distinct().collect(Collectors.toList()); +// List devIds = list.stream().filter(temp -> Objects.equals(temp.getTerminalType(), 4)).map(PqsTerminalLogs::getObjIndex).distinct().collect(Collectors.toList()); +// +// //更新的终端 +// List lineById = terminalBaseService.getLineById(lineIds); +// List devIdList = lineById.stream().map(temp -> { +// return temp.getPids().split(",")[4]; +// }).distinct().collect(Collectors.toList()); +// updateDevIds.addAll(devIdList); +// updateDevIds.addAll(devIds); +// if(!CollectionUtils.isEmpty(delDevIds)){ +// updateDevIds.removeAll(delDevIds); +// } +// updateDevIds.stream().distinct().forEach(temp->{ +// terminalBaseService.askRestartDevice(temp, DeviceRebootType.LEDGER_MODIFY); +// } +// ); +// +// } +// +// } +// +// public static void main(String[] args) { +// List updateDevIds = new ArrayList<>(); +// List list1 = new ArrayList<>(); +// List list2 = new ArrayList<>(); +// List list3 = new ArrayList<>(); +// list1.add("1"); +// list1.add("2"); +// list1.add("3"); +// list1.add("3"); +// list2.add("3"); +// list2.add("4"); +// list2.add("5"); +// list3.add("3"); +// updateDevIds.addAll(list1); +// updateDevIds.addAll(list2); +// updateDevIds.removeAll(list3); +// System.out.println(updateDevIds); +// +// +// +// } +// +//}