/** * Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). *

* Licensed under the GNU LESSER GENERAL PUBLIC LICENSE; * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *

* http://www.gnu.org/licenses/lgpl.html *

* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springblade.core.mp.support; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.BeanUtil; import java.util.Map; /** * 分页工具 */ public class Condition { /** * 转化成mybatis plus中的Page * * @param query * @return */ public static IPage getPage(Query query) { Page page = new Page<>(Func.toInt(query.getCurrent(), 1), Func.toInt(query.getSize(), 10)); page.setAsc(Func.toStrArray(query.getAscs())); page.setDesc(Func.toStrArray(query.getDescs())); return page; } /** * 获取mybatis plus中的QueryWrapper * * @param entity * @param * @return */ public static QueryWrapper getQueryWrapper(T entity) { return new QueryWrapper<>(entity); } /** * 获取mybatis plus中的QueryWrapper * * @param query * @param clazz * @param * @return */ public static QueryWrapper getQueryWrapper(Map query, Class clazz) { QueryWrapper qw = new QueryWrapper<>(); qw.setEntity(BeanUtil.newInstance(clazz)); if (Func.isNotEmpty(query)) { query.forEach((k, v) -> { if (Func.isNotEmpty(v)) qw.like(k, v); }); } return qw; } }