// 声明该类所在的包,通常用于组织服务实现类 package com.service.impl; // 导入Spring框架的Service注解,用于将当前类标记为一个服务组件 import org.springframework.stereotype.Service; // 导入Java标准库中的Map接口,用于处理键值对数据,常用于方法参数传递等场景 import java.util.Map; // 导入Java标准库中的List接口,用于处理一组有序的数据集合,常用于方法的返回值或参数中 import java.util.List; // 导入MyBatis-Plus框架的Wrapper接口,用于构建查询条件的包装器 import com.baomidou.mybatisplus.mapper.Wrapper; // 导入MyBatis-Plus框架的EntityWrapper类,用于创建基于实体类的查询条件包装器 import com.baomidou.mybatisplus.mapper.EntityWrapper; // 导入MyBatis-Plus框架的Page类,用于处理分页查询,存储分页相关的数据 import com.baomidou.mybatisplus.plugins.Page; // 导入MyBatis-Plus框架的ServiceImpl类,提供了基础的服务层实现方法和通用功能 import com.baomidou.mybatisplus.service.impl.ServiceImpl; // 导入自定义的PageUtils工具类,用于处理分页结果,将MyBatis-Plus的Page对象转换为自定义的分页工具对象 import com.utils.PageUtils; // 导入自定义的Query工具类,用于从参数Map中构建分页查询所需的参数和Page对象 import com.utils.Query; // 导入自定义的数据访问对象接口,用于对员工相关数据进行数据库操作 import com.dao.YuangongDao; // 导入自定义的员工实体类,用于表示数据库中员工表的记录 import com.entity.YuangongEntity; // 导入自定义的员工服务接口,当前类实现该接口以提供具体的员工业务逻辑 import com.service.YuangongService; // 导入自定义的员工值对象类,用于在特定业务场景下传输和处理员工相关的数据 import com.entity.vo.YuangongVO; // 导入自定义的员工视图类,用于以特定的视图形式展示员工相关的数据 import com.entity.view.YuangongView; // 使用Service注解将该类注册为Spring的服务组件,服务名称为"yuangongService" @Service("yuangongService") // 继承ServiceImpl类,并指定数据访问对象为YuangongDao和实体类为YuangongEntity,实现YuangongService接口 public class YuangongServiceImpl extends ServiceImpl implements YuangongService { // 重写queryPage方法,根据传入的参数进行分页查询员工实体数据 // @param params 包含查询条件、分页参数等信息的Map集合 // @return PageUtils对象,包含了分页查询结果的相关信息,如总记录数、当前页码等 @Override public PageUtils queryPage(Map params) { // 创建分页对象,使用Query工具类从参数中构建分页参数并获取Page对象 Page page = this.selectPage( new Query(params).getPage(), // 创建一个空的实体查询条件包装器,即查询所有符合条件的记录(这里未添加具体条件) new EntityWrapper() ); // 使用PageUtils工具类将MyBatis-Plus的Page对象转换为自定义的分页工具对象并返回 return new PageUtils(page); } // 重写queryPage方法,根据传入的参数和查询条件进行分页查询员工视图数据 // @param params 包含查询条件、分页参数等信息的Map集合 // @param wrapper 用于构建查询条件的包装器,类型为YuangongEntity的包装器 // @return PageUtils对象,包含了分页查询结果的相关信息 @Override public PageUtils queryPage(Map params, Wrapper wrapper) { // 创建分页对象,使用Query工具类从参数中构建分页参数并获取Page对象,指定类型为YuangongView Page page = new Query(params).getPage(); // 设置分页对象的记录,通过调用数据访问对象的selectListView方法,传入分页对象和查询条件包装器获取结果 page.setRecords(baseMapper.selectListView(page, wrapper)); // 使用PageUtils工具类将MyBatis-Plus的Page对象转换为自定义的分页工具对象并返回 PageUtils pageUtil = new PageUtils(page); return pageUtil; } // 重写selectListVO方法,根据传入的查询条件查询员工值对象列表 // @param wrapper 用于构建查询条件的包装器,类型为YuangongEntity的包装器 // @return 包含员工值对象的List集合 @Override public List selectListVO(Wrapper wrapper) { // 调用数据访问对象的selectListVO方法,传入查询条件包装器,获取员工值对象列表 return baseMapper.selectListVO(wrapper); } // 重写selectVO方法,根据传入的查询条件查询单个员工值对象 // @param wrapper 用于构建查询条件的包装器,类型为YuangongEntity的包装器 // @return 单个员工值对象 @Override public YuangongVO selectVO(Wrapper wrapper) { // 调用数据访问对象的selectVO方法,传入查询条件包装器,获取单个员工值对象 return baseMapper.selectVO(wrapper); } // 重写selectListView方法,根据传入的查询条件查询员工视图列表 // @param wrapper 用于构建查询条件的包装器,类型为YuangongEntity的包装器 // @return 包含员工视图的List集合 @Override public List selectListView(Wrapper wrapper) { // 调用数据访问对象的selectListView方法,传入查询条件包装器,获取员工视图列表 return baseMapper.selectListView(wrapper); } // 重写selectView方法,根据传入的查询条件查询单个员工视图 // @param wrapper 用于构建查询条件的包装器,类型为YuangongEntity的包装器 // @return 单个员工视图 @Override public YuangongView selectView(Wrapper wrapper) { // 调用数据访问对象的selectView方法,传入查询条件包装器,获取单个员工视图 return baseMapper.selectView(wrapper); } }