|
|
package com.service.impl;
|
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import java.util.Map;
|
|
|
import java.util.List;
|
|
|
|
|
|
import com.baomidou.mybatisplus.mapper.Wrapper;
|
|
|
import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
|
|
import com.baomidou.mybatisplus.plugins.Page;
|
|
|
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
|
|
|
import com.utils.PageUtils;
|
|
|
import com.utils.Query;
|
|
|
|
|
|
import com.dao.KuaidiyuanDao;
|
|
|
import com.entity.KuaidiyuanEntity;
|
|
|
import com.service.KuaidiyuanService;
|
|
|
import com.entity.vo.KuaidiyuanVO;
|
|
|
import com.entity.view.KuaidiyuanView;
|
|
|
|
|
|
/**
|
|
|
* 快递员服务实现类
|
|
|
* 核心职责:管理快递员(Kuaidiyuan)数据的业务逻辑
|
|
|
*
|
|
|
* 技术架构:
|
|
|
* 1. 继承MyBatis-Plus的ServiceImpl,获得基础的CRUD能力
|
|
|
* 2. 实现自定义的KuaidiyuanService接口,定义快递员特有的业务方法
|
|
|
* 3. 使用VO(Value Object)和View对象实现数据分层
|
|
|
*/
|
|
|
@Service("kuaidiyuanService") // Spring服务注解,指定bean名称为"kuaidiyuanService"
|
|
|
public class KuaidiyuanServiceImpl extends ServiceImpl<KuaidiyuanDao, KuaidiyuanEntity> implements KuaidiyuanService {
|
|
|
|
|
|
/**
|
|
|
* 分页查询快递员信息(基础版本)
|
|
|
* 使用默认的EntityWrapper进行条件查询
|
|
|
* @param params 请求参数,包含分页参数(page、limit等)
|
|
|
* @return 分页工具对象,包含分页数据和分页信息
|
|
|
*/
|
|
|
@Override
|
|
|
public PageUtils queryPage(Map<String, Object> params) {
|
|
|
// 创建分页查询:使用Query工具类解析参数创建Page对象
|
|
|
Page<KuaidiyuanEntity> page = this.selectPage(
|
|
|
new Query<KuaidiyuanEntity>(params).getPage(), // 解析分页参数
|
|
|
new EntityWrapper<KuaidiyuanEntity>() // 创建空的查询条件包装器
|
|
|
);
|
|
|
return new PageUtils(page); // 返回自定义的分页工具对象
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 分页查询快递员信息(增强版本)
|
|
|
* 支持自定义查询条件和返回视图对象
|
|
|
* @param params 请求参数,包含分页参数
|
|
|
* @param wrapper 自定义查询条件包装器
|
|
|
* @return 分页工具对象,包含分页的视图数据
|
|
|
*/
|
|
|
@Override
|
|
|
public PageUtils queryPage(Map<String, Object> params, Wrapper<KuaidiyuanEntity> wrapper) {
|
|
|
// 创建分页对象
|
|
|
Page<KuaidiyuanView> page = new Query<KuaidiyuanView>(params).getPage();
|
|
|
// 执行分页查询,获取视图数据
|
|
|
page.setRecords(baseMapper.selectListView(page, wrapper));
|
|
|
// 封装分页结果
|
|
|
PageUtils pageUtil = new PageUtils(page);
|
|
|
return pageUtil;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查询快递员VO列表
|
|
|
* 返回值对象列表,用于列表展示
|
|
|
* @param wrapper 查询条件包装器
|
|
|
* @return 快递员VO列表
|
|
|
*/
|
|
|
@Override
|
|
|
public List<KuaidiyuanVO> selectListVO(Wrapper<KuaidiyuanEntity> wrapper) {
|
|
|
return baseMapper.selectListVO(wrapper);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查询单个快递员VO
|
|
|
* 返回单个值对象,用于详情展示
|
|
|
* @param wrapper 查询条件包装器
|
|
|
* @return 单个快递员VO对象
|
|
|
*/
|
|
|
@Override
|
|
|
public KuaidiyuanVO selectVO(Wrapper<KuaidiyuanEntity> wrapper) {
|
|
|
return baseMapper.selectVO(wrapper);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查询快递员视图列表
|
|
|
* 返回视图对象列表,包含关联数据
|
|
|
* @param wrapper 查询条件包装器
|
|
|
* @return 快递员视图列表
|
|
|
*/
|
|
|
@Override
|
|
|
public List<KuaidiyuanView> selectListView(Wrapper<KuaidiyuanEntity> wrapper) {
|
|
|
return baseMapper.selectListView(wrapper);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查询单个快递员视图
|
|
|
* 返回单个视图对象,包含完整的关联数据
|
|
|
* @param wrapper 查询条件包装器
|
|
|
* @return 单个快递员视图对象
|
|
|
*/
|
|
|
@Override
|
|
|
public KuaidiyuanView selectView(Wrapper<KuaidiyuanEntity> wrapper) {
|
|
|
return baseMapper.selectView(wrapper);
|
|
|
}
|
|
|
} |