From ad1702a7203e59ebf09b4790b3adf6b9366c4fb8 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期五, 28 二月 2025 08:56:11 +0800
Subject: [PATCH] 钉钉获取人员的接口

---
 src/main/java/com/gs/xky/task/ScheduledTasks.java |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/gs/xky/task/ScheduledTasks.java b/src/main/java/com/gs/xky/task/ScheduledTasks.java
index 9135558..410dee3 100644
--- a/src/main/java/com/gs/xky/task/ScheduledTasks.java
+++ b/src/main/java/com/gs/xky/task/ScheduledTasks.java
@@ -1,18 +1,30 @@
 package com.gs.xky.task;
 
 
+import cn.hutool.core.collection.ListUtil;
+import com.gs.xky.config.DingTalkParam;
+import com.gs.xky.config.DingTalkResponse;
+import com.gs.xky.dto.EmployeeInfo;
+import com.gs.xky.service.ApiService;
+import com.gs.xky.service.MesStaffService;
 import com.gs.xky.service.XkyService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
 import java.io.IOException;
+import java.util.List;
+import java.util.stream.Collectors;
 
 @Component
 @RequiredArgsConstructor
 public class ScheduledTasks {
 
     private final XkyService xkyService;
+
+    private final ApiService apiService;
+
+    private final MesStaffService staffService;
 
     /**
      * 姣忎簲鍒嗛挓鎵ц涓�娆�
@@ -27,4 +39,19 @@
     public void getDeviceRealTimeData() throws IOException {
         xkyService.GetSaveDetail();
     }
+
+    @Scheduled(cron = "0 0/53 * * * ?")
+    public void getDinTalkData() throws IOException {
+        DingTalkParam dingTalkParam = new DingTalkParam(1);
+
+        DingTalkResponse<EmployeeInfo> employeeInfoDingTalkResponse = apiService.sendListRequest(dingTalkParam, EmployeeInfo.class, "http://192.168.1.64/eHR/eHRExternalService/Service.ashx");
+
+
+        List<EmployeeInfo> collect = employeeInfoDingTalkResponse.getData().stream().filter(s -> "閫犳ⅵ鑰咃紙娴欐睙锛夌鎶�鏈夐檺鍏徃".equals(s.getCUnitName())).collect(Collectors.toList());
+        System.out.println(collect.size());
+
+        List<List<EmployeeInfo>> partition = ListUtil.partition(collect, 100);
+
+        partition.forEach(staffService::UpdateStaff);
+    }
 }

--
Gitblit v1.9.3