| src/main/java/com/gs/dingtalk/service/WorkWXService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/test/java/com/gs/dingtalk/DeviceReceivingApplicationTests.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/gs/dingtalk/service/WorkWXService.java
@@ -212,6 +212,39 @@ } } public int syncUsersToQwStaff() throws IOException { List<WorkWXUser> userList = getUserList(); if (userList == null || userList.isEmpty()) { log.warn("获取到的用户列表为空"); return 0; } int insertCount = 0; for (WorkWXUser user : userList) { if (user.getUserid() == null || user.getUserid().isEmpty()) { continue; } QwStaff existingStaff = qwStaffMapper.selectOne( new LambdaQueryWrapper<QwStaff>().eq(QwStaff::getAccount, user.getUserid()) ); if (existingStaff == null) { QwStaff qwStaff = new QwStaff(); qwStaff.setName(user.getName()); qwStaff.setAccount(user.getUserid()); qwStaff.setDept(user.getDepartment() != null ? user.getDepartment().toString() : null); qwStaffMapper.insert(qwStaff); insertCount++; } } log.info("同步用户到QW_STAFF表完成,新增用户数: {}", insertCount); return insertCount; } public List<CheckinData> getCheckinData(long startTime, long endTime, List<String> useridList) throws IOException { String accessToken = getAccessToken(); String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/checkin/getcheckindata?access_token=%s", accessToken); src/test/java/com/gs/dingtalk/DeviceReceivingApplicationTests.java
@@ -172,24 +172,16 @@ } @Test void testGetUserDetail() { System.out.println("=== 开始测试获取用户详情 ==="); void testSyncUsersToQwStaff() { System.out.println("=== 开始测试同步企业微信用户到QW_STAFF表 ==="); try { String userid = "ShenJuanYue"; WorkWXService.WorkWXUserDetail userDetail = workWXService.getUserDetail(userid); int insertCount = workWXService.syncUsersToQwStaff(); if (userDetail != null && userDetail.getErrcode() == 0) { System.out.println("✓ 成功获取用户详情"); System.out.println(" - userid: " + userDetail.getUserid()); System.out.println(" - 姓名: " + userDetail.getName()); System.out.println(" - 手机号: " + userDetail.getMobile()); System.out.println(" - 职位: " + userDetail.getPosition()); } else { System.out.println("✗ 获取用户详情失败"); } System.out.println("✓ 同步完成"); System.out.println(" - 新增用户数: " + insertCount); } catch (IOException e) { System.out.println("✗ 获取用户详情失败: " + e.getMessage()); System.out.println("✗ 同步用户失败: " + e.getMessage()); e.printStackTrace(); }