| | |
| | | package cn.iocoder.yudao.module.mes.dal.mysql.pro.feedback; |
| | | |
| | | import cn.hutool.core.util.StrUtil; |
| | | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| | | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
| | | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| | | import cn.iocoder.yudao.framework.mybatis.core.query.MPJLambdaWrapperX; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.pro.feedback.vo.MesProFeedbackPageReqVO; |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.pro.feedback.MesProFeedbackDO; |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.pro.task.MesProTaskDO; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | import java.util.Collection; |
| | |
| | | public interface MesProFeedbackMapper extends BaseMapperX<MesProFeedbackDO> { |
| | | |
| | | default PageResult<MesProFeedbackDO> selectPage(MesProFeedbackPageReqVO reqVO) { |
| | | // 当按任务编码模糊查询时,需要 JOIN 任务表 |
| | | if (StrUtil.isNotBlank(reqVO.getTaskCode())) { |
| | | MPJLambdaWrapperX<MesProFeedbackDO> query = new MPJLambdaWrapperX<>(); |
| | | query.selectAll(MesProFeedbackDO.class); |
| | | query.leftJoin(MesProTaskDO.class, on -> on |
| | | .eq(MesProTaskDO::getId, MesProFeedbackDO::getTaskId)); |
| | | query.like(MesProTaskDO::getCode, reqVO.getTaskCode()); |
| | | query.likeIfPresent(MesProFeedbackDO::getCode, reqVO.getCode()) |
| | | .eqIfPresent(MesProFeedbackDO::getType, reqVO.getType()) |
| | | .eqIfPresent(MesProFeedbackDO::getWorkOrderId, reqVO.getWorkOrderId()) |
| | | .eqIfPresent(MesProFeedbackDO::getTaskId, reqVO.getTaskId()) |
| | | .eqIfPresent(MesProFeedbackDO::getStatus, reqVO.getStatus()) |
| | | .betweenIfPresent(MesProFeedbackDO::getFeedbackTime, reqVO.getFeedbackTime()) |
| | | .eqIfPresent(MesProFeedbackDO::getItemId, reqVO.getItemId()) |
| | | .eqIfPresent(MesProFeedbackDO::getFeedbackUserId, reqVO.getFeedbackUserId()) |
| | | .eqIfPresent(MesProFeedbackDO::getCreator, reqVO.getCreator()) |
| | | .orderByDesc(MesProFeedbackDO::getId); |
| | | return selectPage(reqVO, query); |
| | | } |
| | | // 不涉及任务编码查询时,走普通查询 |
| | | return selectPage(reqVO, new LambdaQueryWrapperX<MesProFeedbackDO>() |
| | | .likeIfPresent(MesProFeedbackDO::getCode, reqVO.getCode()) |
| | | .eqIfPresent(MesProFeedbackDO::getType, reqVO.getType()) |
| | | .eqIfPresent(MesProFeedbackDO::getWorkOrderId, reqVO.getWorkOrderId()) |
| | | .eqIfPresent(MesProFeedbackDO::getTaskId, reqVO.getTaskId()) |
| | | .eqIfPresent(MesProFeedbackDO::getStatus, reqVO.getStatus()) |
| | | .betweenIfPresent(MesProFeedbackDO::getFeedbackTime, reqVO.getFeedbackTime()) |
| | | .eqIfPresent(MesProFeedbackDO::getItemId, reqVO.getItemId()) |