From f84ad7db2a9eb863404be1da330178df6c2b7fb9 Mon Sep 17 00:00:00 2001
From: Administrator <2856754968@qq.com>
Date: 星期三, 26 十一月 2025 10:53:23 +0800
Subject: [PATCH] 增加企业微信的实体
---
src/test/java/com/gs/xky/XkyApplicationTests.java | 197 +++++++++++++++++++++++++++++++++++-------------
1 files changed, 143 insertions(+), 54 deletions(-)
diff --git a/src/test/java/com/gs/xky/XkyApplicationTests.java b/src/test/java/com/gs/xky/XkyApplicationTests.java
index f09e1ea..46b1b93 100644
--- a/src/test/java/com/gs/xky/XkyApplicationTests.java
+++ b/src/test/java/com/gs/xky/XkyApplicationTests.java
@@ -1,93 +1,182 @@
package com.gs.xky;
-import cn.hutool.core.collection.ListUtil;
-import com.alibaba.fastjson2.JSON;
-import com.gs.xky.config.*;
-import com.gs.xky.dto.EmployeeInfo;
-import com.gs.xky.dto.XkyDetail;
-import com.gs.xky.service.ApiService;
-import com.gs.xky.service.MesStaffService;
-import com.gs.xky.service.XkyService;
+import com.gs.xky.service.VwCjScSjTsBbService;
+import com.gs.xky.service.WorkWXService;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
-import java.util.stream.Collectors;
@SpringBootTest
class XkyApplicationTests {
@Autowired
- private XkyService xkyService;
+ private VwCjScSjTsBbService vwCjScSjTsBbService;
@Autowired
- private ApiService apiService;
+ private WorkWXService workWXService;
- @Autowired
- private MesStaffService staffService;
-
+ /**
+ * 娴嬭瘯瀵煎嚭鐢熶骇鏁版嵁骞跺彂閫侀拤閽夋秷鎭�
+ * 鍔熻兘锛氭煡璇W_CJ_SC_SJ_TS_BB琛ㄦ暟鎹� -> 瀵煎嚭Excel -> 鍙戦�侀拤閽夋枃浠舵秷鎭�
+ */
@Test
- void contextLoads() throws IOException {
+ void testExportAndSendProductionData() throws Exception {
+ System.out.println("=== 寮�濮嬫祴璇曞鍑虹敓浜ф暟鎹苟鍙戦�侀拤閽� ===");
- xkyService.GetSaveDetail();
+// try {
+// boolean result = vwCjScSjTsBbService.exportAndSendToDingtalk();
+//
+// if (result) {
+// System.out.println("鉁� 鐢熶骇鏁版嵁瀵煎嚭骞跺彂閫佹垚鍔�");
+// System.out.println(" - 鏁版嵁宸蹭粠 VW_CJ_SC_SJ_TS_BB 琛ㄦ煡璇�");
+// System.out.println(" - Excel 鏂囦欢宸茬敓鎴愬苟淇濆瓨鍒� D:\\BIFile\\");
+// System.out.println(" - 閽夐拤鏂囦欢娑堟伅宸插彂閫�");
+// } else {
+// System.out.println("鉁� 鐢熶骇鏁版嵁瀵煎嚭鎴栧彂閫佸け璐�");
+// }
+// } catch (Exception e) {
+// System.out.println("鉁� 瀵煎嚭骞跺彂閫佹椂鍙戠敓寮傚父: " + e.getMessage());
+// e.printStackTrace();
+// }
+
+ System.out.println("=== 娴嬭瘯缁撴潫 ===");
}
+ /**
+ * 娴嬭瘯鑾峰彇浼佷笟寰俊access_token
+ * 鍔熻兘锛氳皟鐢ㄤ紒涓氬井淇PI鑾峰彇access_token
+ */
@Test
- void cs() throws IOException {
- XkyCommonParam param = XkyCommonParam.GetInit();
+ void testGetWorkWXAccessToken() {
+ System.out.println("=== 寮�濮嬫祴璇曡幏鍙栦紒涓氬井淇ccess_token ===");
- // 鍒涘缓 BodyParam 瀵硅薄骞惰祴鍊�
- BodyParam bodyParam = new BodyParam();
+ try {
+ String accessToken = workWXService.getAccessToken();
- bodyParam.setErpCode(DataAcquisitionConfiguration.TEST_ERP_CODE);
- bodyParam.setDeliveryNo("22250212VVWU");
+ if (accessToken != null && !accessToken.isEmpty()) {
+ System.out.println("鉁� 鎴愬姛鑾峰彇浼佷笟寰俊access_token");
+ System.out.println(" - access_token: " + accessToken);
+ System.out.println(" - token闀垮害: " + accessToken.length());
+ } else {
+ System.out.println("鉁� 鑾峰彇鐨刟ccess_token涓虹┖");
+ }
+ } catch (IOException e) {
+ System.out.println("鉁� 鑾峰彇access_token澶辫触: " + e.getMessage());
+ e.printStackTrace();
+ }
- param.setBody(bodyParam);
-
- ApiResponse<XkyDetail> noList = apiService.sendListRequest(param, XkyDetail.class, "https://openapi.xiekeyun.com/delivery/getDetail.json");
-
- System.out.println(JSON.toJSONString(noList.getData()));
+ System.out.println("=== 娴嬭瘯缁撴潫 ===");
}
+ /**
+ * 娴嬭瘯閫氳繃鎵嬫満鍙疯幏鍙杣serid
+ * 鍔熻兘锛氳皟鐢ㄤ紒涓氬井淇PI閫氳繃鎵嬫満鍙锋煡璇serid
+ */
@Test
- void cs1() throws IOException {
-// DingTalkParam dingTalkParam = new DingTalkParam(0);
-//
-// DingTalkResponse<EmployeeInfo> employeeInfoDingTalkResponse = apiService.sendListRequest(dingTalkParam, EmployeeInfo.class, "http://192.168.1.64/eHR/eHRExternalService/Service.ashx");
-//
-// //閫犳ⅵ鑰咃紙娴欐睙锛夌鎶�鏈夐檺鍏徃 cUnitName
-// //http://192.168.1.64/eHR
-// 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, 500);
-//
-// partition.forEach(list -> {
-// staffService.SaveStaff(list);
-// });
+ void testGetUserIdByMobile() {
+ System.out.println("=== 寮�濮嬫祴璇曢�氳繃鎵嬫満鍙疯幏鍙杣serid ===");
+ try {
+ String mobile = "13335712023";
+ String userid = workWXService.getUserIdByMobile(mobile);
+
+ if (userid != null && !userid.isEmpty()) {
+ System.out.println("鉁� 鎴愬姛閫氳繃鎵嬫満鍙疯幏鍙杣serid");
+ System.out.println(" - 鎵嬫満鍙�: " + mobile);
+ System.out.println(" - userid: " + userid);
+ } else {
+ System.out.println("鉁� 鑾峰彇鐨剈serid涓虹┖");
+ }
+ } catch (IOException e) {
+ System.out.println("鉁� 鑾峰彇userid澶辫触: " + e.getMessage());
+ e.printStackTrace();
+ }
+
+ System.out.println("=== 娴嬭瘯缁撴潫 ===");
}
-
+ /**
+ * 娴嬭瘯鑾峰彇浼佷笟寰俊鐢ㄦ埛鍒楄〃
+ * 鍔熻兘锛氳皟鐢ㄤ紒涓氬井淇PI鑾峰彇鎵�鏈夌敤鎴风殑userid鍜岄儴闂ㄤ俊鎭�
+ */
@Test
- void cs2() throws IOException {
- DingTalkParam dingTalkParam = new DingTalkParam(1);
+ void testGetWorkWXUserList() {
+ System.out.println("=== 寮�濮嬫祴璇曡幏鍙栦紒涓氬井淇$敤鎴峰垪琛� ===");
- DingTalkResponse<EmployeeInfo> employeeInfoDingTalkResponse = apiService.sendListRequest(dingTalkParam, EmployeeInfo.class, "http://192.168.1.64/eHR/eHRExternalService/Service.ashx");
+ try {
+ List<WorkWXService.WorkWXUser> userList = workWXService.getUserList();
- //閫犳ⅵ鑰咃紙娴欐睙锛夌鎶�鏈夐檺鍏徃 cUnitName
- //http://192.168.1.64/eHR
- List<EmployeeInfo> collect = employeeInfoDingTalkResponse.getData().stream().filter(s -> "閫犳ⅵ鑰咃紙娴欐睙锛夌鎶�鏈夐檺鍏徃".equals(s.getCUnitName())).collect(Collectors.toList());
- System.out.println(collect.size());
+ if (userList != null && !userList.isEmpty()) {
+ System.out.println("鉁� 鎴愬姛鑾峰彇浼佷笟寰俊鐢ㄦ埛鍒楄〃");
+ System.out.println(" - 鐢ㄦ埛鎬绘暟: " + userList.size());
+ System.out.println(" - 鍓�5鏉℃暟鎹�:");
+ userList.stream().limit(5).forEach(user -> {
+ System.out.println(" * userid: " + user.getUserid() +
+ ", name: " + user.getName() +
+ ", department: " + user.getDepartment());
+ });
+ } else {
+ System.out.println("鉁� 鑾峰彇鐨勭敤鎴峰垪琛ㄤ负绌�");
+ }
+ } catch (IOException e) {
+ System.out.println("鉁� 鑾峰彇鐢ㄦ埛鍒楄〃澶辫触: " + e.getMessage());
+ e.printStackTrace();
+ }
- List<List<EmployeeInfo>> partition = ListUtil.partition(collect, 100);
+ System.out.println("=== 娴嬭瘯缁撴潫 ===");
+ }
- partition.forEach(list -> {
- staffService.UpdateStaff(list);
- });
+ /**
+ * 娴嬭瘯鑾峰彇浼佷笟寰俊鎵撳崱鏁版嵁
+ * 鍔熻兘锛氳幏鍙栨寚瀹氭椂闂磋寖鍥村唴鐨勫憳宸ユ墦鍗¤褰�
+ */
+ @Test
+ void testGetCheckinData() {
+ System.out.println("=== 寮�濮嬫祴璇曡幏鍙栦紒涓氬井淇℃墦鍗℃暟鎹� ===");
+ try {
+ List<WorkWXService.WorkWXUser> userList = workWXService.getUserList();
+
+ if (userList == null || userList.isEmpty()) {
+ System.out.println("鉁� 鏈幏鍙栧埌鐢ㄦ埛鍒楄〃锛屾棤娉曠户缁祴璇�");
+ return;
+ }
+
+ List<String> useridList = new ArrayList<>();
+ userList.forEach(user -> useridList.add(user.getUserid()));
+
+ long endTime = System.currentTimeMillis() / 1000;
+ long startTime = endTime - 86400;
+
+ System.out.println(" - 鐢ㄦ埛鎬绘暟: " + useridList.size());
+ System.out.println(" - 寮�濮嬫椂闂�: " + new java.util.Date(startTime * 1000));
+ System.out.println(" - 缁撴潫鏃堕棿: " + new java.util.Date(endTime * 1000));
+
+ List<WorkWXService.CheckinData> checkinDataList = workWXService.getCheckinData(startTime, endTime, useridList);
+
+ if (checkinDataList != null && !checkinDataList.isEmpty()) {
+ System.out.println("鉁� 鎴愬姛鑾峰彇鎵撳崱鏁版嵁");
+ System.out.println(" - 鎵撳崱璁板綍鎬绘暟: " + checkinDataList.size());
+ System.out.println(" - 鍓�3鏉℃暟鎹�:");
+ checkinDataList.stream().limit(3).forEach(data -> {
+ System.out.println(" * userid: " + data.getUserid() +
+ ", 鎵撳崱鏃堕棿: " + new java.util.Date(data.getCheckinTime() * 1000) +
+ ", 鎵撳崱绫诲瀷: " + data.getCheckinType() +
+ ", 鍦扮偣: " + data.getLocationDetail());
+ });
+ } else {
+ System.out.println("鉁� 鑾峰彇鐨勬墦鍗℃暟鎹负绌�");
+ }
+ } catch (IOException e) {
+ System.out.println("鉁� 鑾峰彇鎵撳崱鏁版嵁澶辫触: " + e.getMessage());
+ e.printStackTrace();
+ }
+
+ System.out.println("=== 娴嬭瘯缁撴潫 ===");
}
}
\ No newline at end of file
--
Gitblit v1.9.3