package com.service.impl; import java.util.List; import java.util.Map; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.dao.UsersDao; import com.entity.UsersEntity; import com.service.UsersService; import com.utils.PageUtils; import com.utils.Query; /** * 系统用户服务实现类 * * 核心职责:处理系统用户(UsersEntity)的分页查询和列表查询功能 * * 技术架构: * 1. 继承MyBatis-Plus的ServiceImpl → 获得基础CRUD能力 * 2. 实现自定义UsersService接口 → 扩展用户查询功能 * * 业务场景:系统管理员查看用户列表、搜索用户、用户管理等后台操作 */ @Service("usersService") // Spring服务注解,指定bean名称为"usersService" public class UsersServiceImpl extends ServiceImpl implements UsersService { /** * 分页查询系统用户(基础版本) * 使用默认的EntityWrapper进行条件查询,返回实体对象分页 * 主要用于系统管理后台的用户列表展示 * * @param params 请求参数,包含分页参数(page、limit等) * @return 分页工具对象,包含分页数据和分页信息 */ @Override public PageUtils queryPage(Map params) { // 创建分页查询:使用Query工具类解析参数创建Page对象 Page page = this.selectPage( new Query(params).getPage(), // 解析分页参数,创建Page对象 new EntityWrapper() // 创建空的查询条件包装器 ); return new PageUtils(page); // 返回自定义的分页工具对象 } /** * 查询系统用户列表 * 支持自定义查询条件,返回用户实体列表 * 用于需要条件筛选的用户查询场景 * * @param wrapper 查询条件包装器,用于构建WHERE条件、排序等 * @return 系统用户实体列表 */ @Override public List selectListView(Wrapper wrapper) { return baseMapper.selectListView(wrapper); } /** * 分页查询系统用户(增强版本) * 支持自定义查询条件和分页,返回分页的用户列表 * 用于管理系统中的高级搜索和分页展示 * * @param params 请求参数,包含分页参数 * @param wrapper 自定义查询条件包装器 * @return 分页工具对象,包含分页的用户数据 */ @Override public PageUtils queryPage(Map params, Wrapper wrapper) { // 创建分页对象 Page page = new Query(params).getPage(); // 执行分页查询,获取用户列表数据 page.setRecords(baseMapper.selectListView(page, wrapper)); // 封装分页结果 PageUtils pageUtil = new PageUtils(page); return pageUtil; } }