package com.iailab.module.model.mcs.pre.dao;

import com.iailab.framework.common.pojo.PageResult;
import com.iailab.framework.mybatis.core.mapper.BaseMapperX;
import com.iailab.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.iailab.module.model.mcs.pre.entity.DmModuleEntity;
import com.iailab.module.model.mcs.pre.vo.DmModulePageReqVO;
import org.apache.ibatis.annotations.Mapper;
import com.iailab.framework.tenant.core.db.dynamic.TenantDS;

import java.util.List;

/**
 * @author PanZhibao
 * @date 2021年04月23日 8:30
 */
@TenantDS
@Mapper
public interface DmModuleDao extends BaseMapperX<DmModuleEntity> {

    List<DmModuleEntity> getModuleByItemId(String itemId);

    default PageResult<DmModuleEntity> selectPage(DmModulePageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<DmModuleEntity>()
                .likeIfPresent(DmModuleEntity::getModulename, reqVO.getModulename())
                .orderByDesc(DmModuleEntity::getCreateTime));
    }
}