|
@@ -2204,6 +2204,55 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
|
}
|
|
|
return msg;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public HttpRespMsg getSimpleActiveUserListNew(Integer departmentId, HttpServletRequest request, String keyword, String cursor) throws Exception {
|
|
|
+ HttpRespMsg msg = new HttpRespMsg();
|
|
|
+ String token = request.getHeader("TOKEN");
|
|
|
+ User user = userMapper.selectById(token);
|
|
|
+ String nextCursor = "";
|
|
|
+ //企业微信通讯录搜索功能
|
|
|
+ Integer WXCompanyId = user.getCompanyId();
|
|
|
+ WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", WXCompanyId));
|
|
|
+ //当企业开启了微信通讯录的情况下
|
|
|
+ if (org.apache.commons.lang3.StringUtils.isNotBlank(keyword) && wxCorpInfo!=null && wxCorpInfo.getSaasSyncContact()==1){
|
|
|
+ HashMap<String, List> result = wxCorpInfoService.getOpenId(wxCorpInfo.getCorpid(), keyword, cursor,1,200);
|
|
|
+ HashMap<String, Object> msgResult = new HashMap<>();
|
|
|
+ nextCursor = result.get("nextCursor").get(0).toString();
|
|
|
+ List users = result.get("user");
|
|
|
+ msgResult.put("nextCursor",nextCursor);
|
|
|
+ msg.data = msgResult;
|
|
|
+ if (users.size()!=0){
|
|
|
+ List<User> realUser = userMapper.selectList(new QueryWrapper<User>().in("corpwx_userid", users));
|
|
|
+ msgResult.put("retUser",realUser);
|
|
|
+ return msg;
|
|
|
+ }else {
|
|
|
+ ArrayList<User> nullUser = new ArrayList<>();
|
|
|
+ msgResult.put("retUser",nullUser);
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ HashMap<String, Object> hashMap = new HashMap<>();
|
|
|
+ hashMap.put("companyId",user.getCompanyId());
|
|
|
+ hashMap.put("isActive",1);
|
|
|
+ if (!StringUtils.isEmpty(keyword)){
|
|
|
+ hashMap.put("name",keyword);
|
|
|
+ }
|
|
|
+// QueryWrapper<User> wrapper = new QueryWrapper<User>().select("id, name, phone, job_number, department_id").eq("company_id", user.getCompanyId()).eq("is_active", 1);
|
|
|
+ if (departmentId != null) {
|
|
|
+ //获取全部子部门
|
|
|
+ List<Department> allDeptList = departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id", user.getCompanyId()));
|
|
|
+ List<Integer> deptIds = departmentService.getDeptIncludeSubDeptIds(departmentId, allDeptList);
|
|
|
+// wrapper.in("department_id", deptIds);
|
|
|
+ hashMap.put("deptIds",deptIds);
|
|
|
+ }
|
|
|
+
|
|
|
+// List<User> userList = userMapper.selectList(wrapper);
|
|
|
+ List<Map<String, Object>> userList=userMapper.getSimpleActiveUserList(hashMap);
|
|
|
+ msg.data = userList;
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
+ }
|
|
|
//
|
|
|
// private String getAccessToken(String code) {
|
|
|
// String accessToken = "";
|