package cn.iocoder.yudao.module.crm.dal.mysql.contract;
|
|
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.crm.controller.admin.contract.vo.command.CrmContractCommandPageReqVO;
|
import cn.iocoder.yudao.module.crm.dal.dataobject.contract.CrmContractCommandDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.util.List;
|
|
@Mapper
|
public interface CrmContractCommandMapper extends BaseMapperX<CrmContractCommandDO> {
|
|
default PageResult<CrmContractCommandDO> selectPage(CrmContractCommandPageReqVO reqVO) {
|
return selectPage(reqVO, buildQuery(reqVO));
|
}
|
|
default List<CrmContractCommandDO> selectListByContractId(Long contractId) {
|
return selectList(new LambdaQueryWrapperX<CrmContractCommandDO>()
|
.eq(CrmContractCommandDO::getContractId, contractId)
|
.orderByDesc(CrmContractCommandDO::getOperateTime));
|
}
|
|
private LambdaQueryWrapperX<CrmContractCommandDO> buildQuery(CrmContractCommandPageReqVO reqVO) {
|
return new LambdaQueryWrapperX<CrmContractCommandDO>()
|
.eqIfPresent(CrmContractCommandDO::getContractId, reqVO.getContractId())
|
.eqIfPresent(CrmContractCommandDO::getCommandType, reqVO.getCommandType())
|
.eqIfPresent(CrmContractCommandDO::getStatus, reqVO.getStatus())
|
.likeIfPresent(CrmContractCommandDO::getBizNo, reqVO.getBizNo())
|
.orderByDesc(CrmContractCommandDO::getOperateTime);
|
}
|
|
}
|