mapper
@Select("SELECT u.* , ur.role_id , r.role_name from sys_user_role ur , sys_role r , sys_user u ,sys_user_depart ud " + "where ur.role_id = r.id and ur.user_id = u.id and u.id = ud.user_id " + "and ud.create_user_id in (${createUserId})") public Page<SysRoleDeptVO> getUserByCreateUserIds(Page page, @Param("createUserId") String createUserId);
service
@Override public Page<SysRoleDeptVO> getByUserIds(Page<SysRoleDeptVO> page, List<String> userIds) { /** 如果当前部门下没用户的话,就传个 "" 过去 由于 mybatis 解析后空字符串 * 后是什么都没有, 这里用 in () 如果这样,就会异常 ,所以当用户为空的话, * 传 "''" 这样解析后 变成了 in ('') * */ String userids = "''" ; if(userIds != null && userIds.size() != 0){ StringBuilder stringBuilder = new StringBuilder(""); for (int i = 0; i < userIds.size(); i++) { stringBuilder.append("'"); stringBuilder.append(userIds.get(i)); stringBuilder.append("'"); stringBuilder.append(","); } userids = stringBuilder.substring(0, stringBuilder.length() - 1); } return userMapper.getByUserIds(page,userids);
mapper 防止转义字符
<![CDATA[ ]]>