package com.monkeylessey.gen.handler; import com.baomidou.mybatisplus.generator.config.po.TableInfo; import com.monkeylessey.gen.QueryTemplate; import com.monkeylessey.gen.domain.GenerateData; import com.monkeylessey.sys.domain.vo.TableColumnVO; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * 处理查询类 * * @author xp * @date 2022/11/30 */ public class QueryHandler { public Map handler(Map objectMap, GenerateData data) { // 获取table TableInfo tableInfo = (TableInfo) objectMap.get("table"); // 获取包信息 Map packageMap = (Map) objectMap.get("package"); // 实体类名称 String entityName = (String) objectMap.get("entity"); // 设置query类相关 QueryTemplate queryTemplate = new QueryTemplate(); // 设置query类名称 queryTemplate.setQueryName(entityName + "Query"); // 设置query类路径 queryTemplate.setQueryPath(packageMap.get("Parent") + packageMap.get("ModuleName") + ".sys.domain.query"); // 设置query类的字段 List columnS = data.getColumns().stream() .filter(item -> Boolean.TRUE == item.getSearch()) .collect(Collectors.toList()); queryTemplate.setFields(columnS); // 设置query的父类名 queryTemplate.setBaseQueryName("AbsQuery"); queryTemplate.setBaseQueryPath("com.monkeylessey.base"); objectMap.put("queryInfo", queryTemplate); return new VueHandler().handler(objectMap, data); } }