Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat:【企业微信】邮箱获取用户Userid #2981

Merged
merged 1 commit into from
Apr 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,23 @@ public interface WxCpUserService {
*/
String getUserId(String mobile) throws WxErrorException;

/**
* <pre>
*
* 通过邮箱获取其所对应的userid。
*
* 请求方式:POST(HTTPS)
* 请求地址:https://qyapi.weixin.qq.com/cgi-bin/user/get_userid_by_email?access_token=ACCESS_TOKEN
*
* 文档地址:https://developer.work.weixin.qq.com/document/path/95895
* </pre>
*
* @param email 手机号码。长度为5~32个字节
* @return userid email对应的成员userid
* @throws WxErrorException .
*/
String getUserIdByEmail(String email,int emailType) throws WxErrorException;

/**
* 获取外部联系人详情.
* <pre>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,17 @@ public String getUserId(String mobile) throws WxErrorException {
return tmpJson.get("userid").getAsString();
}

@Override
public String getUserIdByEmail(String email, int emailType) throws WxErrorException {
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("email", email);
jsonObject.addProperty("email_type", emailType);
String url = this.mainService.getWxCpConfigStorage().getApiUrl(GET_USER_ID_BY_EMAIL);
String responseContent = this.mainService.post(url, jsonObject.toString());
JsonObject tmpJson = GsonParser.parse(responseContent);
return tmpJson.get("userid").getAsString();
}

@Override
public WxCpExternalContactInfo getExternalContact(String userId) throws WxErrorException {
String url = this.mainService.getWxCpConfigStorage().getApiUrl(GET_EXTERNAL_CONTACT + userId);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -965,6 +965,10 @@ interface User {
* The constant GET_USER_ID.
*/
String GET_USER_ID = "/cgi-bin/user/getuserid";
/**
* The constant GET_USER_ID_BY_EMAIL.
*/
String GET_USER_ID_BY_EMAIL = "/cgi-bin/user/get_userid_by_email";
/**
* The constant GET_EXTERNAL_CONTACT.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,18 @@ public void testGetUserId() throws WxErrorException {
assertNotNull(result);
}

/**
* Test get user id by email.
*
* @throws WxErrorException the wx error exception
*/
@Test
public void testGetUserIdByEmail() throws WxErrorException {
String result = this.wxCpService.getUserService().getUserIdByEmail("xxx",1);
System.out.println(result);
assertNotNull(result);
}

/**
* Test get external contact.
*/
Expand Down