ext java 动态grid demo

package com.gepower.repair.vo;

import java.util.ArrayList;
import java.util.List;

public class DynaGridList extends BaseList{
private List data;
private List<ColumnModelVo> columnModel = new ArrayList<ColumnModelVo>();
private List<FieldsNameVo> fieldsNames = new ArrayList<FieldsNameVo>();
//private
public DynaGridList(){

}
public List getData() {
return data;
}
public void setData(List data) {
this.data = data;
}

public void addColumnModel(ColumnModelVo columnModelVo){
if(!columnModel.contains(columnModelVo)){
columnModel.add(columnModelVo);
}
}

public List<ColumnModelVo> getColumnModel() {
return columnModel;
}
public void setColumnModel(List<ColumnModelVo> columnModel) {
this.columnModel = columnModel;
}

public void addFieldsName(FieldsNameVo fieldNameVo){
if(!fieldsNames.contains(fieldNameVo)){
fieldsNames.add(fieldNameVo);
}
}
public List<FieldsNameVo> getFieldsNames() {
return fieldsNames;
}

public void setFieldsNames(List<FieldsNameVo> fieldsNames) {
this.fieldsNames = fieldsNames;
}

}


public DynaGridList findMultiplierCostList(
String compSegId, UserVo tempUserVo) throws Exception {

List<DynaBean> dataBeanList = multiplierCostSummaryDao.findMultiplierCostList(
compSegId, tempUserVo);

DynaGridList result = new DynaGridList();
//List<DynaBean> data = new ArrayList<ColumnModelVo>();



List data = new ArrayList();

String klassName = null;
FieldsNameVo fieldNameVo = null;
ColumnModelVo columnModelVo = null;
EditorVo editor = null;
List<ComboVo> fieldArryList = multiplierCostSummaryDao.findFieldArry();

String[] fieldArry;

if (fieldArryList.size() > 0) {
fieldArry = fieldArryList.get(0).getValue().split(",");
for (int i = 0; i < fieldArry.length; i++) {
Iterator itr = dataBeanList.iterator();
while (itr.hasNext()) {

DynaBean dbean = (DynaBean) itr.next();
Map dynaMap = new DynaBeanMapDecorator(dbean);
// data.add(dynaMap);

Set keySet = dynaMap.keySet();
Iterator keyIt = keySet.iterator();
while (keyIt.hasNext()) {
Object obj = keyIt.next();
if (fieldArry[i].equals(obj.toString())) {
System.out.println(obj + " " + dynaMap.get(obj));
DynaProperty dynaProp = dbean.getDynaClass()
.getDynaProperty(obj.toString());
klassName = dynaProp.getType().getName();
fieldNameVo = new FieldsNameVo(obj.toString());
fieldNameVo.setType("String"); // need change
result.addFieldsName(fieldNameVo);

columnModelVo = new ColumnModelVo(getColumnHeader(obj.toString()),
obj.toString(),150);
// columnModelVo.setXtype("templatecolumn");
// columnModelVo.setTpl("<span class=''>{obj.toString()}</span>");
editor = new EditorVo();
editor.setXtype("textfield");
columnModelVo.setEditor(editor);
result.addColumnModel(columnModelVo);
}
}
// dbean
}
}
Iterator itr = dataBeanList.iterator();
while (itr.hasNext()) {

DynaBean dbean = (DynaBean) itr.next();
Map dynaMap = new DynaBeanMapDecorator(dbean);
data.add(dynaMap);
}
}
result.setData(data);



return result;

}


public List<DynaBean> findMultiplierCostList(
String compSegVal, UserVo tempUserVo) {
Connection conn = null;
PreparedStatement st = null;
ResultSet rs = null;
try{
String sql = " SELECT SQL_DTL FROM RCAT_SQL_TEMP WHERE SQL_FLAG ='PART_KIT_MT'";
// String sql = this.getSql();
this.findCompPartkitToursSql(compSegVal);

List<ComboVo> sqlList = this.getJdbcTemplate().query(sql, new CompPartkitToursSqlMapper());
if(sqlList.size()==0){
return null;
}
sql = sqlList.get(0).getDisplay();

conn = this.getJdbcTemplate().getDataSource().getConnection();
st = conn.prepareStatement(sql);
rs = st.executeQuery();

RowSetDynaClass rsdc = new RowSetDynaClass(rs);
return rsdc.getRows();
}catch (Exception e){
e.printStackTrace();
}finally {
try {
if (rs != null) {
rs.close();
}
if (st != null) {
st.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}

return null;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值