🆕 #2981 【企业微信】增加根据邮箱获取用户Userid的接口方法

This commit is contained in:
ID_Wangqiang
2023-04-19 22:03:26 +08:00
committed by GitHub
parent 087870ed0c
commit 22a29c51c0
4 changed files with 44 additions and 0 deletions

View File

@@ -174,6 +174,23 @@ public interface WxCpUserService {
*/
String getUserId(String mobile) throws WxErrorException;
/**
* <pre>
*
* 通过邮箱获取其所对应的userid。
*
* 请求方式POSTHTTPS
* 请求地址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>

View File

@@ -203,6 +203,17 @@ public class WxCpUserServiceImpl implements WxCpUserService {
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);

View File

@@ -965,6 +965,10 @@ public interface WxCpApiPathConsts {
* 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.
*/

View File

@@ -178,6 +178,18 @@ public class WxCpUserServiceImplTest {
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.
*/