UEP-树和表

Posted 薄不易

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UEP-树和表相关的知识,希望对你有一定的参考价值。

Model Select:表格要展示的数据
Tree DataSource:树的数据源
数据源是自定义java类
实现接口:ITreeRetriever创建根节点、判断子节点、创建子节点

--数据源

package com.haiyisoft.bill.page.tree;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.haiyisoft.entity.UepContract;
import com.haiyisoft.entity.UepCustomer;
import com.haiyisoft.ep.common.jpa.util.JPAUtil;
import com.haiyisoft.ep.common.model.QueryParam;
import com.haiyisoft.ep.common.model.QueryParamList;
import com.haiyisoft.ep.framework.model.ITreeRetriever;
import com.haiyisoft.ep.framework.model.TreeBean;

public class TreeSourceDP implements ITreeRetriever {

    @Override
    public TreeBean createTree(String arg0) {
        TreeBean root = new TreeBean();
        if(arg0 != null && "".equals(arg0)){
            root.setCode("0");
        }else{
            root.setCode(arg0);
        }
        root.setLabel("客户合同树根");
        root.setType("ROOT");
        
        return root;
    }

    @Override
    public boolean hasChild(TreeBean arg0) {
        return this.retrieveNode(arg0).size()>0;
    }

    @Override
    public List<TreeBean> retrieveNode(TreeBean arg0) {
        List<TreeBean> list = new ArrayList<TreeBean>();
        if("ROOT".equals(arg0.getType())){
            List<UepCustomer> dataList = JPAUtil.loadAll(UepCustomer.class);
            for(UepCustomer entity : dataList){
                TreeBean node = new TreeBean();
                node.setCode(entity.getId().toString());
                node.setLabel(entity.getCustomerName());
                node.setType("CUSTOMER");
                //向前台传递参数或属性
                Map<String,String> extProp = new HashMap<String,String>();
                extProp.put("config", node.getCode()+"_"+node.getLabel());
                node.setExtProp(extProp);
                
                list.add(node);
            }
        }else if("CUSTOMER".equals(arg0.getType())){
            QueryParamList params = new QueryParamList();
            params.addParam("customerId",new BigDecimal(arg0.getCode()));
            List<UepContract> dataList = JPAUtil.load(UepContract.class,params);
            for(UepContract entity : dataList){
                TreeBean node = new TreeBean();
                node.setCode(entity.getId().toString());
                
                node.setLabel(entity.getContractName());
                node.setType("CONTRACT");
                list.add(node);
            }
        }
        
        return list;
    }

}

 

以上是关于UEP-树和表的主要内容,如果未能解决你的问题,请参考以下文章

UEP-保存

UEP-添加表格

UEP-级联查询

Uep的静态下拉和动态下拉建立

Uep的保存操作

Uep弹窗showModalDialog的使用