用户开放接口
1、用户信息查询公共接口
传入参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
fieldName | 字段名称 | String | Y | - | UserModel.Fields.xxxx |
condition | 条件 | 枚举 | Y | - | IN/包含、NOT_IN/不包含、LIKE/全模、LEFTLIKE/左模、RIGHTLIKE/右模、NOT_LIKE/不包含全模、EQ/等于、NE/不等于、GT/大于、GE/大于等于、LT/小于、LE/小于等于、IS_NULL/为空、IS_NOT_NULL/非空、BETWEEN/区间、NOT_BETWEEN/非区间 |
value | 条件值 | Object | N | - | condition为IN、NOT_IN、BETWEEN、NOT_BETWEEN时,value应传值List类型,condition为IS_NULL、IS_NOT_NULL时,value不设定值 |
返回参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
userId | 用户ID | Long | Y | ||
loginName | 登录名称 | String | Y | ||
userName | 用户名称 | String | Y | ||
用户邮箱 | String | Y | |||
phonenumber | 联系电话 | String | N | ||
delFlag | 删除标志 | String | N | ||
ldapFullPath | ldap组织全路径 | String | N | ||
accountValid | 账号有效期 | ||||
passwordValid | 密码有效期 | ||||
userType | 用户类型 | ||||
accountType | 账号类型 |
使用demo
java
class Demo{
@Autowired
private UserClient userClient;
public void demo(){
List<FeignQueryWapper> list = new ArrayList<>();
List<String> values = new ArrayList<>();
FeignQueryWapper queryWapper = new FeignQueryWapper();
// 区间查询 or 非区间查询
// queryWapper.setFieldName(UserModel.Fields.userId);
// queryWapper.setCondition(SqlKeyword.BETWEEN);
// values.add("38036");
// values.add("438050");
// queryWapper.setValue(values);
// 包含查询 or 非包含查询
// queryWapper.setFieldName(UserModel.Fields.loginName);
// queryWapper.setCondition(SqlKeyword.IN);
// values.add("zhangsan");
// values.add("lisi");
// queryWapper.setValue(values);
// 非空 or 为空 查询
// queryWapper.setFieldName(UserModel.Fields.loginName);
// queryWapper.setCondition(SqlKeyword.IS_NULL);
// 等于查询
queryWapper.setFieldName(UserModel.Fields.phonenumber);
queryWapper.setCondition(SqlKeyword.EQ);
queryWapper.setValue("18833333333");
list.add(queryWapper);
List<UserModel> userModel = userClient.selectUserInfoPublic(list);
return userModel;
}
}
2、同步LDAP用户接口
传入参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
logins | ldap账号 | List<String> | Y | - | - |
返回参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
rows | 影响行数 | int | Y | - | 同步条数,rows<0时为失败 |
使用demo
java
@Autowired
private UserClient userClient;
public void demo(){
//测试数据,仅供demo使用
List<String> logins = new ArrayList<String>();
logins.add("zhangsan");
logins.add("lisi");
int rows = userClient.syncLdapInfo(logins);
if(rows < 0){
log.error("ldap用户同步失败");
//同步失败后的业务代码
......
} else{
log.info("ldap用户同步成功");
//同步成功后的业务代码
......
}
}
3、根据用户名集合查询用户信息列表
传入参数:
用户名之间用,拼接
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
loginNames | 用户名列表 | String | Y | - | - |
返回参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
ts | 时间戳 | String | Y | - | |
data | 数据 | List<UserModel> | Y | - |
使用demo
java
@Autowired
private UserClient userClient;
public void demo(){
//测试数据,仅供demo使用
String loginNames = "zhangsan,lisi,wanger.ex,lidaniu";
List<UserModel> list = userClient.selectListByLoginNames(loginNames);
//判断返回的数据是否为空并进行业务处理
if(null != list && list.size() > 0) {
//业务处理
}
}
4、批量删除用户与角色关联关系
传入参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
loginNames | 用户名列表 | String | Y | - | - |
roleCodes | 角色编码列表 | String | Y | - | - |
systemName | 系统名 | String | Y | - | - |
返回参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
data | 影响行数 | long | Y | - | 删除条数,data=-1时内部异常;data=-2时参数为空;data>-1时,接口正常 |
使用demo
java
@Autowired
private UserClient userClient;
public void demo(){
//测试数据,仅供demo使用
List<String> loginNames = new ArrayList();
loginNames.add("zhangsan");
List<String> roleCodes = new ArrayList();
roleCodes.add("role");
UserRoleModel model = new UserRoleModel();
model.setLoginNames(loginNames);
model.setRoleCodes(roleCodes);
long rows = userClient.removeUserRoleRelBatch(model);
//判断返回的数据是否为空并进行业务处理
if(rows > -1){
//删除成功
}else {
//删除失败
}
}
5、用户信息分页查询
支持登录账号,姓名字段模糊查询
传入参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
systemName | 系统名 | String | Y | - | - |
loginName | 登录账号 | String | N | - | - |
userName | 姓名 | String | N | - | 中文 |
返回参数:
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
total | 总条数 | int | Y | - | |
pageNum | 当前页 | int | Y | - | |
rows | 数据 | List<Map> | Y | - | |
rows中包含以下字段: |
参数 | 名称 | 类型 | 必传 | 默认值 | 备注 |
---|---|---|---|---|---|
accountType | 账号类型 | String | Y | - | |
userName | 姓名 | String | Y | - | |
userId | 用户唯一表示 | int | Y | - | |
loginName | 账号 | String | Y | - | |
userType | 用户类型 | String | Y | - |
使用demo
java
@Autowired
private UserClient userClient;
public void demo(){
//测试数据,仅供demo使用
Map<String,Object> map = userClient.listPage(null,null, getSystemName(), 1,50);
//总条数
int total = (Integer) map.get("total");
//当前页
int pageNum = (Integer)map.get("pageNum");
// 用户信息
List<Map<String,Object>> rows = (List<Map<String, Object>>) map.get("rows");
}