From 616762daea1e46ace3a8ff2ee8e3975e5bcccd24 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 18 九月 2024 20:14:22 +0800 Subject: [PATCH] 工单取图片定时任务不用线程池 --- ycl-server/src/main/java/com/ycl/task/WorkOrderImgTask.java | 38 ++++++++++++++++++-------------------- 1 files changed, 18 insertions(+), 20 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/task/WorkOrderImgTask.java b/ycl-server/src/main/java/com/ycl/task/WorkOrderImgTask.java index 018a2b0..80a32cc 100644 --- a/ycl-server/src/main/java/com/ycl/task/WorkOrderImgTask.java +++ b/ycl-server/src/main/java/com/ycl/task/WorkOrderImgTask.java @@ -7,6 +7,7 @@ import com.ycl.platform.mapper.DeviceInfoMapper; import com.ycl.platform.mapper.WorkOrderCheckImgMapper; import com.ycl.platform.service.WorkOrderService; +import com.ycl.utils.DateUtils; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.bytedeco.javacv.FFmpegFrameGrabber; @@ -38,13 +39,13 @@ private final DeviceInfoMapper deviceInfoMapper; private final WorkOrderCheckImgMapper workOrderCheckImgMapper; - private static final ExecutorService executorService = new ThreadPoolExecutor(8, - 24, - 5000, - TimeUnit.SECONDS, - new ArrayBlockingQueue<>(600), - new ThreadPoolExecutor.CallerRunsPolicy() - ); +// private static final ExecutorService executorService = new ThreadPoolExecutor(8, +// 10, +// 5000, +// TimeUnit.SECONDS, +// new ArrayBlockingQueue<>(1024), +// new ThreadPoolExecutor.CallerRunsPolicy() +// ); public void run() { // 鏌ュ嚭鏈�杩戜竴鍛ㄧ殑鏁呴殰鐨勮澶� @@ -52,7 +53,7 @@ Calendar ca = Calendar.getInstance(); ca.setTime(now); ca.add(Calendar.DATE, -6); - List<DeviceInfoVO> deviceList = workOrderService.hasErrorWorkOrderList(now, ca.getTime()); + List<DeviceInfoVO> deviceList = workOrderService.hasErrorWorkOrderList(DateUtils.getDayStart(ca.getTime()), DateUtils.getDayEnd(now)); if (CollectionUtils.isEmpty(deviceList)) { return; } @@ -65,19 +66,16 @@ return; } for (DeviceInfoVO deviceInfo : deviceList) { - executorService.submit(() -> { - // 鍥芥爣璁惧鐨勭紪鐮佸氨鏄彇瑙嗛娴佺殑璁惧缂栫爜锛屽浗鏍囪澶囧氨涓�涓�傚浗鏍囪澶囩殑姣忎竴涓�氶亾浠h〃涓�涓憚鍍忓ご锛屼篃灏辨槸璁惧id鏄彇娴佺殑閫氶亾id - String frameImg = workOrderService.getFrameImgByDevice(gbDevices.get(0).getDeviceId(), deviceInfo.getDeviceId(), deviceInfo.getWorkOrderNo()); - if (StringUtils.hasText(frameImg)) { - WorkOrderCheckImg img = new WorkOrderCheckImg(); - img.setWorkOrderNo(deviceInfo.getWorkOrderNo()); - img.setImgUrl(frameImg); - img.setCreateTime(new Date()); - workOrderCheckImgMapper.insert(img); - } - }); + // 鍥芥爣璁惧鐨勭紪鐮佸氨鏄彇瑙嗛娴佺殑璁惧缂栫爜锛屽浗鏍囪澶囧氨涓�涓�傚浗鏍囪澶囩殑姣忎竴涓�氶亾浠h〃涓�涓憚鍍忓ご锛屼篃灏辨槸璁惧id鏄彇娴佺殑閫氶亾id + String frameImg = workOrderService.getFrameImgByDevice(gbDevices.get(0).getDeviceId(), deviceInfo.getDeviceId(), deviceInfo.getWorkOrderNo()); + if (StringUtils.hasText(frameImg)) { + WorkOrderCheckImg img = new WorkOrderCheckImg(); + img.setWorkOrderNo(deviceInfo.getWorkOrderNo()); + img.setImgUrl(frameImg); + img.setCreateTime(new Date()); + workOrderCheckImgMapper.insert(img); + } } - executorService.shutdown(); } } -- Gitblit v1.8.0