需求,查询用户,用户对象中包含组织机构简称的List(对象的话selectOrgAbbNameByUsersId 方法返回List对象即可)
public class UserListVo extends BaseVo<User> {
private String usersId;
private String name;
private String usersCode;
private String usersName;
private List<String> orgAbbNames;
private Date creationTime;
private Date updateTime;
}
添加 @Results注解
@Results(id = "userListVo",value = {
@Result(id = true,column ="users_id" ,property ="usersId" ),
@Result(column = "name" ,property = "name"),
@Result(column = "users_code",property = "usersCode"),
@Result(column = "users_name",property = "usersName"),
@Result(column = "users_id", property = "orgAbbNames" ,javaType=List.class ,many = @Many(select = "selectOrgAbbNameByUsersId")),
@Result(column = "creation_time",property = "creationTime"),
@Result(column = "update_time",property = "updateTime")
})
@Select("select * " +
"FROM base.t00_users A " +
" ${ew.customSqlSegment} ")
IPage<UserListVo> queryUserListByConditions(Page page, @Param(Constants.WRAPPER) QueryWrapper<UserListVo> orgWrapper);
@Select("select A.orgz_abb_name " +
"FROM public.t01_orgz A " +
"LEFT JOIN base.t00_dept B ON (A.orgz_code = B.orgz_code) " +
"LEFT JOIN base.t00_dept_users_rel C ON (B.dept_id=C.dept_id) " +
"WHERE C.users_id = #{usersId} ")
List<String> selectOrgAbbNameByUsersId (@Param("usersId") String usersId);
查询结果
image.png