From 2c86a8bd60deed0dd0e044bad6fb83f75d19a332 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期日, 26 十月 2025 15:05:50 +0800
Subject: [PATCH] Merge branch 'feature-task'

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/DepartmentSyncTask.java |   94 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 94 insertions(+), 0 deletions(-)

diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/DepartmentSyncTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/DepartmentSyncTask.java
new file mode 100644
index 0000000..b3bdca1
--- /dev/null
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/DepartmentSyncTask.java
@@ -0,0 +1,94 @@
+package com.ruoyi.quartz.task;
+
+import com.ruoyi.system.domain.DepartmentSyncDTO;
+import com.ruoyi.system.domain.OrderClassDTO;
+import com.ruoyi.system.service.IDepartmentSyncDataService;
+import com.ruoyi.system.service.IOrderClassDataService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.system.service.IDepartmentSyncService;
+
+import java.util.List;
+
+/**
+ * 閮ㄩ棬鍚屾瀹氭椂浠诲姟
+ * 
+ * @author ruoyi
+ * @date 2025-10-18
+ */
+@Component("departmentSyncTask")
+public class DepartmentSyncTask
+{
+    private static final Logger log = LoggerFactory.getLogger(DepartmentSyncTask.class);
+
+    @Autowired
+    private IDepartmentSyncDataService departmentSyncDataService;
+
+    @Autowired
+    private IDepartmentSyncService departmentSyncService;
+
+    private List<DepartmentSyncDTO> getDepartment(){
+        return departmentSyncDataService.getBranchDepartments();
+    }
+
+    private List<DepartmentSyncDTO> getTransportDept(){
+        return departmentSyncDataService.getTransportDepartments();
+    }
+    @Autowired
+    private IOrderClassDataService orderClassDataService;
+private List<OrderClassDTO> getServiceOrdCode() {
+    return orderClassDataService.getServiceOrderClass();
+}
+private List<OrderClassDTO> getDispatchOrdCode() {
+    return orderClassDataService.getDispatchOrderClass();
+}
+
+    /**
+     * 鍚屾鍒嗗叕鍙稿拰閮ㄩ棬鏁版嵁
+     * 
+     * 浣跨敤绀轰緥锛�
+     * - 浠诲姟鍚嶇О锛氬垎鍏徃鍚屾
+     * - 璋冪敤鐩爣锛歞epartmentSyncTask.syncDepartments
+     * - cron琛ㄨ揪寮忥細0 0 2 * * ?锛堟瘡澶╁噷鏅�2鐐规墽琛岋級
+     */
+    public void syncDepartments()
+    {
+        try
+        {
+            log.info("==========寮�濮嬫墽琛岄儴闂ㄥ悓姝ュ畾鏃朵换鍔�==========");
+            
+            AjaxResult result = departmentSyncService.syncBranchDepartments(this.getDepartment(), this.getServiceOrdCode(),this.getDispatchOrdCode());
+
+            departmentSyncService.syncTransportDepartments(this.getTransportDept());
+            
+            if (result.get("code").equals(200))
+            {
+                log.info("閮ㄩ棬鍚屾鎴愬姛: {}", result.get("msg"));
+            }
+            else
+            {
+                log.error("閮ㄩ棬鍚屾澶辫触: {}", result.get("msg"));
+            }
+            
+            log.info("==========閮ㄩ棬鍚屾瀹氭椂浠诲姟鎵ц瀹屾垚==========");
+        }
+        catch (Exception e)
+        {
+            log.error("閮ㄩ棬鍚屾瀹氭椂浠诲姟鎵ц寮傚父", e);
+        }
+    }
+
+    /**
+     * 鍚屾鍒嗗叕鍙稿拰閮ㄩ棬鏁版嵁锛堝甫鍙傛暟锛�
+     * 
+     * @param params 鍙傛暟锛堥鐣欙紝鏆傛湭浣跨敤锛�
+     */
+    public void syncDepartments(String params)
+    {
+        log.info("閮ㄩ棬鍚屾浠诲姟鍙傛暟: {}", params);
+        syncDepartments();
+    }
+}

--
Gitblit v1.9.1