mirror of
https://gitee.com/best_handsome/mybatis-plus-join
synced 2025-07-11 00:02:22 +08:00
32 lines
1.2 KiB
Java
32 lines
1.2 KiB
Java
package com.github.yulichang.method;
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
|
import org.apache.ibatis.mapping.MappedStatement;
|
|
import org.apache.ibatis.mapping.SqlSource;
|
|
|
|
/**
|
|
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
|
*
|
|
* @author yulichang
|
|
*/
|
|
public class SelectJoinPage extends MPJAbstractMethod {
|
|
|
|
public SelectJoinPage() {
|
|
super(SqlMethod.SELECT_JOIN_PAGE.getMethod());
|
|
}
|
|
|
|
@SuppressWarnings("unused")
|
|
public SelectJoinPage(String name) {
|
|
super(name);
|
|
}
|
|
|
|
@Override
|
|
public MappedStatement injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, TableInfo tableInfo) {
|
|
SqlMethod sqlMethod = SqlMethod.SELECT_JOIN_PAGE;
|
|
String sql = String.format(sqlMethod.getSql(), sqlFirst(), sqlDistinct(), sqlSelectColumns(tableInfo, true),
|
|
tableInfo.getTableName(), sqlAlias(), sqlFrom(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
|
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
|
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, MPJResultType.class);
|
|
}
|
|
}
|