提交 c1c78f32 作者: 洪东保

debug

父级 1b4eb4e8
package com.cmeeting.controller; package com.cmeeting.controller;
import com.cmeeting.service.TencentMeetingService; import com.cmeeting.service.TencentMeetingService;
import com.cmeeting.service.WeComService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@RestController @RestController
@RequestMapping("/tencentMeeting") @RequestMapping("/tencentMeeting")
public class TencentMeetingController { public class TencentMeetingController {
@Autowired @Autowired
private TencentMeetingService tencentMeetingService; private TencentMeetingService tencentMeetingService;
@Resource
private WeComService weComService;
@GetMapping("/add") @GetMapping("/add")
public void addUsers() { public void addUsers() {
tencentMeetingService.doUsers(); tencentMeetingService.doUsers();
} }
@GetMapping("/bind")
public void bind() {
weComService.userBind();
}
} }
...@@ -109,6 +109,7 @@ public class CmeetingJob { ...@@ -109,6 +109,7 @@ public class CmeetingJob {
log.info("-------企微人员定时同步任务结束--------"); log.info("-------企微人员定时同步任务结束--------");
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
log.error("企微人员定时同步失败");
} finally { } finally {
redisUtils.del("weComUserSync"); redisUtils.del("weComUserSync");
} }
......
...@@ -18,6 +18,7 @@ import com.cmeeting.pojo.WeComUser; ...@@ -18,6 +18,7 @@ import com.cmeeting.pojo.WeComUser;
import com.cmeeting.service.TencentMeetingService; import com.cmeeting.service.TencentMeetingService;
import com.cmeeting.service.WeComService; import com.cmeeting.service.WeComService;
import com.cmeeting.util.RedisUtils; import com.cmeeting.util.RedisUtils;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import okhttp3.*; import okhttp3.*;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -60,7 +61,11 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i ...@@ -60,7 +61,11 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i
@Override @Override
public void batchInsert(List<WeComUser> users) { public void batchInsert(List<WeComUser> users) {
weComUserMapper.batchInsert(users); log.info("企业微信人员数量: {}", users.size());
List<List<WeComUser>> partition = Lists.partition(users, 1000);
for (List<WeComUser> weComUsers : partition) {
weComUserMapper.batchInsert(weComUsers);
}
} }
@Override @Override
...@@ -69,6 +74,7 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i ...@@ -69,6 +74,7 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i
JSONArray departmentList = getDepartmentList(); JSONArray departmentList = getDepartmentList();
Iterator<Object> iterator = departmentList.iterator(); Iterator<Object> iterator = departmentList.iterator();
List<WeComUser> users = new ArrayList<>(); List<WeComUser> users = new ArrayList<>();
int sum = 0;
while (iterator.hasNext()){ while (iterator.hasNext()){
JSONObject department = (JSONObject) iterator.next(); JSONObject department = (JSONObject) iterator.next();
String departmentId = String.valueOf(department.get("id")); String departmentId = String.valueOf(department.get("id"));
...@@ -76,8 +82,8 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i ...@@ -76,8 +82,8 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i
JSONArray userList = getUserListByDepartment(departmentId); JSONArray userList = getUserListByDepartment(departmentId);
for (int i = 0; i < userList.size(); i++) { for (int i = 0; i < userList.size(); i++) {
JSONObject userJson = (JSONObject)userList.get(i); JSONObject userJson = (JSONObject)userList.get(i);
System.out.println("姓名: " + userJson.get("name") + sum++;
", UserID: " + userJson.get("userid")); System.out.println("姓名: " + userJson.get("name") + ", UserID: " + userJson.get("userid") + ", sum: " + sum);
// 转换为WeComUser集合 // 转换为WeComUser集合
WeComUser user = new WeComUser(); WeComUser user = new WeComUser();
user.setUserId(userJson.getString("userid")); user.setUserId(userJson.getString("userid"));
...@@ -225,14 +231,15 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i ...@@ -225,14 +231,15 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i
continue; continue;
} }
UserId userId = UserId.builder().userName(user.getUserName()).wid(user.getUserId()).tid(hostUserId).build(); UserId userId = UserId.builder().userName(user.getUserName()).wid(user.getUserId()).tid(hostUserId).build();
userIds.add(userId); // userIds.add(userId);
userIdMapper.insert(userId);
// if(userIds.size() > 200){
// userIdMapper.insertUsers(userIds);
// userIds= new ArrayList<>();
// }
} }
}catch (Exception e){ }catch (Exception e){
throw new RuntimeException(e); throw new RuntimeException(e);
}finally {
if(!CollectionUtils.isEmpty(userIds)){
userIdMapper.insertUsers(userIds);
}
} }
} }
...@@ -313,7 +320,7 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i ...@@ -313,7 +320,7 @@ public class WeComServiceImpl extends ServiceImpl<WeComUserMapper, WeComUser> i
*/ */
public JSONArray getUserListByDepartment ( String departmentId) throws Exception { public JSONArray getUserListByDepartment ( String departmentId) throws Exception {
String urlStr = "https://qyapi.weixin.qq.com/cgi-bin/user/simplelist?access_token=" + getToken() + "&department_id=" + departmentId; String urlStr = "https://qyapi.weixin.qq.com/cgi-bin/user/simplelist?access_token=" + getToken() + "&department_id=" + departmentId;
log.info("urlStr: {}", urlStr);
URL url = new URL(urlStr); URL url = new URL(urlStr);
HttpURLConnection conn = (HttpURLConnection) url.openConnection(); HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET"); conn.setRequestMethod("GET");
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论