package cn.iocoder.yudao.module.srm.dal.mysql; 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.module.srm.controller.admin.apply.vo.SrmSupplierApplyPageReqVO; import cn.iocoder.yudao.module.srm.dal.dataobject.SrmSupplierApplyDO; import cn.iocoder.yudao.module.srm.enums.SupplierApplyStatusEnum; import org.apache.ibatis.annotations.Mapper; @Mapper public interface SrmSupplierApplyMapper extends BaseMapperX { default PageResult selectPage(SrmSupplierApplyPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .likeIfPresent(SrmSupplierApplyDO::getApplyNo, reqVO.getApplyNo()) .likeIfPresent(SrmSupplierApplyDO::getSupplierName, reqVO.getSupplierName()) .eqIfPresent(SrmSupplierApplyDO::getApplyStatus, reqVO.getApplyStatus()) .orderByDesc(SrmSupplierApplyDO::getId)); } default boolean existsApprovedBySupplierId(Long supplierId) { return selectCount(new LambdaQueryWrapperX() .eq(SrmSupplierApplyDO::getSupplierId, supplierId) .eq(SrmSupplierApplyDO::getApplyStatus, SupplierApplyStatusEnum.APPROVED.getCode())) > 0; } }