xiangpei
2025-04-18 ccadf9480d4e6a9dcc227a2a0b1f9ae0612e36fd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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<String, String> packageMap = (Map<String, String>) 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<TableColumnVO> 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);
    }
 
}