From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-flowable/jnpf-flowable-biz/src/main/java/jnpf/flowable/job/JobRunner.java |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 49 insertions(+), 0 deletions(-)

diff --git a/jnpf-flowable/jnpf-flowable-biz/src/main/java/jnpf/flowable/job/JobRunner.java b/jnpf-flowable/jnpf-flowable-biz/src/main/java/jnpf/flowable/job/JobRunner.java
new file mode 100644
index 0000000..2e6214a
--- /dev/null
+++ b/jnpf-flowable/jnpf-flowable-biz/src/main/java/jnpf/flowable/job/JobRunner.java
@@ -0,0 +1,49 @@
+package jnpf.flowable.job;
+
+import jnpf.flowable.model.time.FlowTimeModel;
+import jnpf.flowable.util.TimeUtil;
+import jnpf.util.JsonUtil;
+import jnpf.util.RandomUtil;
+import jnpf.util.RedisUtil;
+import lombok.RequiredArgsConstructor;
+import org.quartz.JobDataMap;
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 绫荤殑鎻忚堪
+ *
+ * @author JNPF@YinMai Info. Co., Ltd
+ * @version 5.0.x
+ * @since 2024/5/23 17:49
+ */
+//@Component
+@RequiredArgsConstructor
+public class JobRunner implements ApplicationRunner {
+
+    private final RedisUtil redisUtil;
+
+    @Override
+    public void run(ApplicationArguments args) throws Exception {
+        // 鑾峰彇缂撳瓨涓畾鏃剁浉鍏充俊鎭�
+        List<FlowTimeModel> list = FlowJobUtil.getOperator(redisUtil);
+        for (FlowTimeModel timeModel : list) {
+            Date date = new Date();
+            // 鍒ゆ柇褰撳墠鏃堕棿鏄惁宸茬粡 瓒呰繃浜嗙粨鏉熸椂闂�
+            if (date.getTime() > timeModel.getEndDate().getTime()) {
+                continue;
+            }
+            if (timeModel.getOn().equals(Boolean.TRUE)) {
+                timeModel.setId(RandomUtil.uuId());
+                JobDataMap jobDataMap = new JobDataMap();
+                jobDataMap.putAll(JsonUtil.entityToMap(timeModel));
+                FlowJobUtil.insertModel(timeModel, redisUtil);
+                TimeUtil.addJob(timeModel.getId(), timeModel.getDuring(), FlowTime.class, jobDataMap, timeModel.getStartDate(), timeModel.getEndDate());
+            }
+        }
+
+    }
+}

--
Gitblit v1.8.0