| | |
| | | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| | | import cn.iocoder.yudao.module.mes.controller.admin.pro.route.vo.MesProRoutePageReqVO; |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.pro.route.MesProRouteDO; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | import java.util.List; |
| | |
| | | /** |
| | | * MES 工艺路线 Mapper |
| | | * |
| | | * @author 芋道源码 |
| | | * @author 超级管理员 |
| | | */ |
| | | @Mapper |
| | | public interface MesProRouteMapper extends BaseMapperX<MesProRouteDO> { |
| | | |
| | | default PageResult<MesProRouteDO> selectPage(MesProRoutePageReqVO reqVO) { |
| | | return selectPage(reqVO, new LambdaQueryWrapperX<MesProRouteDO>() |
| | | LambdaQueryWrapperX<MesProRouteDO> query = new LambdaQueryWrapperX<MesProRouteDO>() |
| | | .likeIfPresent(MesProRouteDO::getCode, reqVO.getCode()) |
| | | .likeIfPresent(MesProRouteDO::getName, reqVO.getName()) |
| | | .eqIfPresent(MesProRouteDO::getStatus, reqVO.getStatus()) |
| | | .betweenIfPresent(MesProRouteDO::getCreateTime, reqVO.getCreateTime()) |
| | | .orderByDesc(MesProRouteDO::getId)); |
| | | .betweenIfPresent(MesProRouteDO::getCreateTime, reqVO.getCreateTime()); |
| | | if (StrUtil.isNotBlank(reqVO.getProductKeyword())) { |
| | | String keyword = reqVO.getProductKeyword().trim(); |
| | | query.apply("EXISTS (SELECT 1 FROM mes_pro_route_product rp " |
| | | + "JOIN mes_md_item item ON item.id = rp.item_id AND item.deleted = 0 " |
| | | + "WHERE rp.route_id = mes_pro_route.id AND rp.deleted = 0 " |
| | | + "AND (item.code LIKE CONCAT('%', {0}, '%') " |
| | | + "OR item.name LIKE CONCAT('%', {1}, '%')))", keyword, keyword); |
| | | } |
| | | return selectPage(reqVO, query.orderByDesc(MesProRouteDO::getId)); |
| | | } |
| | | |
| | | default MesProRouteDO selectByCode(String code) { |