ludc
2025-01-10 19ec0269a9ce3a57ccfcd1d36585bb1c31977b60
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package com.vci.web.service.uidataservice.impl;
 
import com.vci.corba.query.data.KV;
import com.vci.pagemodel.UIFormDataVO;
import com.vci.query.UIDataGridQuery;
import com.vci.query.UIFormQuery;
import com.vci.query.UITreeQuery;
import com.vci.starter.web.pagemodel.BaseResult;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.pagemodel.UIDataTree;
import com.vci.starter.web.util.VciBaseUtil;
import com.vci.web.service.uidataservice.UIDataBaseServiceI;
import com.vci.web.util.PlatformClientUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
 
/**
 * 这是一个自定义查询类的示例服务
 * @author ludc
 * @date 2024/12/5 13:00
 */
@Service
public class UIDataTestQueryServiceImpl implements UIDataBaseServiceI {
 
    @Override
    public DataGrid getDataForGrid(UIDataGridQuery dataGridQuery) throws Exception {
        // TODO: 2024/12/5 Ludc 反射方式调用,所以只能通过newPlatformClientUtil的形式,注解形式服务注入
        PlatformClientUtil platformClientUtil = new PlatformClientUtil();
        String sql = "select * from " + VciBaseUtil.getTableName(dataGridQuery.getBtmName())
                + " where oid in ('D5DFA9D3-D2AF-4D1D-850F-73B102532740','BCE5B0E3-A49C-2453-8E62-8F4C7F4BEDF2','257BB15B-12CF-68D2-FCFE-1FA3E29DBD1E')";
        KV[][] kvs = platformClientUtil.getQueryService().queryBySql(sql);
        List<Map<String, Object>> resultMap = convertKV2ListMap(kvs);
        DataGrid dataGrid = new DataGrid();
        dataGrid.setData(resultMap);
        dataGrid.setTotal(resultMap.size());
        // TODO: 2024/12/5 Ludc 这儿还可以按照dataGridQuery.getTableDefineId()来查询表格定义的内容,
        //  然后根据配置的页面信息来处理要查询条件或列以及返回的参数
        return dataGrid;
    }
 
    @Override
    public UIFormDataVO getDataForForm(UIFormQuery formQuery) throws Exception {
        return null;
    }
 
    @Override
    public List<UIDataTree> getDataForTree(UITreeQuery treeQuery) throws Exception {
        return null;
    }
 
    @Override
    public BaseResult getDataByTemp(UITreeQuery treeQuery) throws Exception {
        return null;
    }
 
}