1
0
mirror of synced 2026-03-25 22:32:26 +08:00

🎨 #3925 【企业微信】修复HR助手getEmployeeFieldInfo接口getAll参数问题

This commit is contained in:
softboy99
2026-03-12 20:30:50 +08:00
committed by Binary Wang
parent 0fb69917b4
commit feaf90e361
2 changed files with 20 additions and 6 deletions

View File

@@ -9,9 +9,9 @@ import java.util.List;
/** /**
* 人事助手相关接口. * 人事助手相关接口.
* 官方文档https://developer.work.weixin.qq.com/document/path/99132 * 官方文档:<a href="https://developer.work.weixin.qq.com/document/path/99132">...</a>
* *
* @author <a href="https://github.com/leejoker">leejoker</a> created on 2024-01-01 * @author copilot
*/ */
public interface WxCpHrService { public interface WxCpHrService {
@@ -19,7 +19,7 @@ public interface WxCpHrService {
* 获取员工档案字段信息. * 获取员工档案字段信息.
* <p> * <p>
* 请求方式POSTHTTPS * 请求方式POSTHTTPS
* 请求地址https://qyapi.weixin.qq.com/cgi-bin/hr/get_fields?access_token=ACCESS_TOKEN * 请求地址:<a href="https://qyapi.weixin.qq.com/cgi-bin/hr/get_fields?access_token=ACCESS_TOKEN">...</a>
* 权限说明: * 权限说明:
* 需要配置人事助手的secret调用接口前需给对应成员赋予人事小助手应用的权限。 * 需要配置人事助手的secret调用接口前需给对应成员赋予人事小助手应用的权限。
* *
@@ -33,22 +33,30 @@ public interface WxCpHrService {
* 获取员工档案数据. * 获取员工档案数据.
* <p> * <p>
* 请求方式POSTHTTPS * 请求方式POSTHTTPS
* 请求地址https://qyapi.weixin.qq.com/cgi-bin/hr/get_staff_info?access_token=ACCESS_TOKEN * 请求地址:<a href="https://qyapi.weixin.qq.com/cgi-bin/hr/get_staff_info?access_token=ACCESS_TOKEN">...</a>
* 权限说明: * 权限说明:
* 需要配置人事助手的secret调用接口前需给对应成员赋予人事小助手应用的权限。 * 需要配置人事助手的secret调用接口前需给对应成员赋予人事小助手应用的权限。
* *
* @param userid 员工userid * @param userid 员工userid
* @param fields 指定字段key列表,不填则返回全部字段 * @param fields 指定字段key列表
* @return 员工档案数据响应 wx cp hr employee field data resp * @return 员工档案数据响应 wx cp hr employee field data resp
* @throws WxErrorException the wx error exception * @throws WxErrorException the wx error exception
*/ */
WxCpHrEmployeeFieldDataResp getEmployeeFieldInfo(String userid, List<String> fields) throws WxErrorException; WxCpHrEmployeeFieldDataResp getEmployeeFieldInfo(String userid, List<String> fields) throws WxErrorException;
/**
* 获取员工档案数据.
* <p>
* 请求方式POSTHTTPS
* 请求地址:<a href="https://qyapi.weixin.qq.com/cgi-bin/hr/get_staff_info?access_token=ACCESS_TOKEN">...</a>
*/
WxCpHrEmployeeFieldDataResp getEmployeeFieldInfo(String userid, boolean getAll, List<String> fields) throws WxErrorException;
/** /**
* 更新员工档案数据. * 更新员工档案数据.
* <p> * <p>
* 请求方式POSTHTTPS * 请求方式POSTHTTPS
* 请求地址https://qyapi.weixin.qq.com/cgi-bin/hr/update_staff_info?access_token=ACCESS_TOKEN * 请求地址:<a href="https://qyapi.weixin.qq.com/cgi-bin/hr/update_staff_info?access_token=ACCESS_TOKEN">...</a>
* 权限说明: * 权限说明:
* 需要配置人事助手的secret调用接口前需给对应成员赋予人事小助手应用的权限。 * 需要配置人事助手的secret调用接口前需给对应成员赋予人事小助手应用的权限。
* *

View File

@@ -40,11 +40,17 @@ public class WxCpHrServiceImpl implements WxCpHrService {
@Override @Override
public WxCpHrEmployeeFieldDataResp getEmployeeFieldInfo(String userid, List<String> fields) throws WxErrorException { public WxCpHrEmployeeFieldDataResp getEmployeeFieldInfo(String userid, List<String> fields) throws WxErrorException {
return getEmployeeFieldInfo(userid, false, fields);
}
@Override
public WxCpHrEmployeeFieldDataResp getEmployeeFieldInfo(String userid, boolean getAll, List<String> fields) throws WxErrorException {
if (userid == null || userid.trim().isEmpty()) { if (userid == null || userid.trim().isEmpty()) {
throw new IllegalArgumentException("userid 不能为空"); throw new IllegalArgumentException("userid 不能为空");
} }
JsonObject jsonObject = new JsonObject(); JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("userid", userid); jsonObject.addProperty("userid", userid);
jsonObject.addProperty("get_all", getAll);
if (fields != null && !fields.isEmpty()) { if (fields != null && !fields.isEmpty()) {
jsonObject.add("fields", WxCpGsonBuilder.create().toJsonTree(fields)); jsonObject.add("fields", WxCpGsonBuilder.create().toJsonTree(fields));
} }