You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hotels/back/src/main/java/com/service/impl/YuangongServiceImpl.java

105 lines
5.9 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// 声明该类所在的包,通常用于组织服务实现类
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<YuangongDao, YuangongEntity> implements YuangongService {
// 重写queryPage方法根据传入的参数进行分页查询员工实体数据
// @param params 包含查询条件、分页参数等信息的Map集合
// @return PageUtils对象包含了分页查询结果的相关信息如总记录数、当前页码等
@Override
public PageUtils queryPage(Map<String, Object> params) {
// 创建分页对象使用Query工具类从参数中构建分页参数并获取Page对象
Page<YuangongEntity> page = this.selectPage(
new Query<YuangongEntity>(params).getPage(),
// 创建一个空的实体查询条件包装器,即查询所有符合条件的记录(这里未添加具体条件)
new EntityWrapper<YuangongEntity>()
);
// 使用PageUtils工具类将MyBatis-Plus的Page对象转换为自定义的分页工具对象并返回
return new PageUtils(page);
}
// 重写queryPage方法根据传入的参数和查询条件进行分页查询员工视图数据
// @param params 包含查询条件、分页参数等信息的Map集合
// @param wrapper 用于构建查询条件的包装器类型为YuangongEntity的包装器
// @return PageUtils对象包含了分页查询结果的相关信息
@Override
public PageUtils queryPage(Map<String, Object> params, Wrapper<YuangongEntity> wrapper) {
// 创建分页对象使用Query工具类从参数中构建分页参数并获取Page对象指定类型为YuangongView
Page<YuangongView> page = new Query<YuangongView>(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<YuangongVO> selectListVO(Wrapper<YuangongEntity> wrapper) {
// 调用数据访问对象的selectListVO方法传入查询条件包装器获取员工值对象列表
return baseMapper.selectListVO(wrapper);
}
// 重写selectVO方法根据传入的查询条件查询单个员工值对象
// @param wrapper 用于构建查询条件的包装器类型为YuangongEntity的包装器
// @return 单个员工值对象
@Override
public YuangongVO selectVO(Wrapper<YuangongEntity> wrapper) {
// 调用数据访问对象的selectVO方法传入查询条件包装器获取单个员工值对象
return baseMapper.selectVO(wrapper);
}
// 重写selectListView方法根据传入的查询条件查询员工视图列表
// @param wrapper 用于构建查询条件的包装器类型为YuangongEntity的包装器
// @return 包含员工视图的List集合
@Override
public List<YuangongView> selectListView(Wrapper<YuangongEntity> wrapper) {
// 调用数据访问对象的selectListView方法传入查询条件包装器获取员工视图列表
return baseMapper.selectListView(wrapper);
}
// 重写selectView方法根据传入的查询条件查询单个员工视图
// @param wrapper 用于构建查询条件的包装器类型为YuangongEntity的包装器
// @return 单个员工视图
@Override
public YuangongView selectView(Wrapper<YuangongEntity> wrapper) {
// 调用数据访问对象的selectView方法传入查询条件包装器获取单个员工视图
return baseMapper.selectView(wrapper);
}
}