/**
|
* @author xchao
|
* @time 2012-4-26
|
* @desc
|
* @version
|
* @since
|
*/
|
package com.vci.client.ui.swing.components.table.test;
|
|
|
import java.util.Random;
|
|
import com.vci.client.ui.swing.components.table.AbstractVCIJTableDataProvider;
|
import com.vci.client.ui.swing.components.table.VCIJTableNode;
|
import com.vci.common.utility.ObjectUtility;
|
|
public class TestDataProvider extends AbstractVCIJTableDataProvider<TestPO> {
|
private String[] specialColumns = null;
|
public String[] getSpecialColumns(){
|
String columnString = "编码,名称,描述,其它";
|
for(int i = 0; i < 100; i++){
|
columnString += ", 属性 " + String.valueOf(i + 1);
|
}
|
specialColumns = columnString.split(",");
|
return specialColumns;
|
}
|
@Override
|
public Class<?>[] getClasses() {
|
this.classes = super.getClasses();
|
int offset = 6;
|
// boolean
|
this.classes[offset++] = Boolean.class;
|
this.classes[offset++] = Boolean.class;
|
this.classes[offset++] = Boolean.class;
|
return this.classes;
|
}
|
public String[] getColumns() {
|
return super.getColumns();
|
}
|
|
public int getTotal() {
|
return this.total;
|
}
|
|
private Random randmon = new Random();
|
public VCIJTableNode<TestPO> getNewRowNode(TestPO dataObj) {
|
int column = 0;
|
VCIJTableNode<TestPO> node = new VCIJTableNode<TestPO>(dataObj);
|
String[] specialColumns = getSpecialColumns();
|
node.setPropertyValue(specialColumns[column++], dataObj.getId());
|
node.setPropertyValue(specialColumns[column++], dataObj.getName());
|
node.setPropertyValue(specialColumns[column++], dataObj.getDesc());
|
node.setPropertyValue(specialColumns[column++], dataObj.getOther());
|
|
node.setPropertyValue(specialColumns[column++], Boolean.valueOf(randmon.nextBoolean()));
|
node.setPropertyValue(specialColumns[column++], Boolean.valueOf(randmon.nextBoolean()));
|
node.setPropertyValue(specialColumns[column++], Boolean.valueOf(randmon.nextBoolean()));
|
|
for(int i = column; i < specialColumns.length; i++){
|
node.setPropertyValue(specialColumns[column++], ObjectUtility.getNewObjectID36());
|
}
|
return node;
|
}
|
|
public TestPO[] getDatas(int pageIndex, int pageSize) {
|
// 从数据库中查询,存储记录总数
|
this.total = 10000;
|
// 数据转换
|
|
TestPO[] res = new TestPO[pageSize];
|
for (int i = 0; i < res.length; i++) {
|
TestPO po = new TestPO();
|
int index = (pageIndex - 1) * pageSize + i + 1;
|
String fixedValue = String.valueOf(index);
|
po.setId(index);
|
po.setName(ObjectUtility.getNewObjectID36());
|
po.setName(fixedValue);
|
po.setDesc(ObjectUtility.getNewObjectID36());
|
po.setOther(ObjectUtility.getNewObjectID36());
|
res[i] = po;
|
}
|
try {
|
Thread.sleep(0);
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return res;
|
}
|
}
|