guy
8 years ago
16 changed files with 411 additions and 76 deletions
@ -0,0 +1,214 @@
|
||||
Demo.Func = BI.inherit(BI.Widget, { |
||||
props: { |
||||
baseCls: "demo-func" |
||||
}, |
||||
|
||||
render: function () { |
||||
var items = [{ |
||||
children: [{ |
||||
type: "bi.page_table_cell", |
||||
text: "node1", |
||||
children: [{ |
||||
type: "bi.page_table_cell", |
||||
text: "childnode1", |
||||
values: [{type: "bi.page_table_cell", text: 101}, { |
||||
type: "bi.page_table_cell", |
||||
text: 102 |
||||
}, {type: "bi.page_table_cell", text: 101}, { |
||||
type: "bi.page_table_cell", |
||||
text: 102 |
||||
}, {type: "bi.page_table_cell", text: 101}] |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "childnode2", |
||||
values: [{type: "bi.page_table_cell", text: 201}, { |
||||
type: "bi.page_table_cell", |
||||
text: 202 |
||||
}, {type: "bi.page_table_cell", text: 201}, { |
||||
type: "bi.page_table_cell", |
||||
text: 202 |
||||
}, {type: "bi.page_table_cell", text: 201}] |
||||
}], |
||||
values: [{type: "bi.page_table_cell", text: 1001}, { |
||||
type: "bi.page_table_cell", |
||||
text: 1002 |
||||
}, {type: "bi.page_table_cell", text: 1001}, { |
||||
type: "bi.page_table_cell", |
||||
text: 1002 |
||||
}, {type: "bi.page_table_cell", text: 1001}] |
||||
}], values: [{type: "bi.page_table_cell", text: 12001}, { |
||||
type: "bi.page_table_cell", |
||||
text: 12002 |
||||
}, {type: "bi.page_table_cell", text: 12001}, { |
||||
type: "bi.page_table_cell", |
||||
text: 12002 |
||||
}, {type: "bi.page_table_cell", text: 12001}] |
||||
}]; |
||||
|
||||
var header = [{ |
||||
type: "bi.page_table_cell", |
||||
text: "header1" |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "header2" |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "jine", |
||||
tag: 1 |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "jine", |
||||
tag: 2 |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "jine", |
||||
tag: 3 |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "金额汇总", |
||||
tag: 4 |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "金额汇总2", |
||||
tag: 5 |
||||
}]; |
||||
|
||||
var crossHeader = [{ |
||||
type: "bi.page_table_cell", |
||||
text: "cross1" |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "cross2" |
||||
}]; |
||||
|
||||
var crossItems = [{ |
||||
children: [{ |
||||
type: "bi.page_table_cell", |
||||
text: "node1", |
||||
values: [1, 2, 3] |
||||
}, { |
||||
type: "bi.page_table_cell", |
||||
text: "node3", |
||||
values: [1, 2] |
||||
}], |
||||
//values: [1, 2]
|
||||
}]; |
||||
|
||||
var table1 = BI.createWidget({ |
||||
type: "bi.page_table", |
||||
el: { |
||||
type: "bi.sequence_table", |
||||
showSequence: true, |
||||
el: { |
||||
type: "bi.dynamic_summary_tree_table", |
||||
el: { |
||||
type: "bi.adaptive_table", |
||||
el: { |
||||
type: "bi.resizable_table", |
||||
el: { |
||||
type: "bi.collection_table" |
||||
} |
||||
} |
||||
}, |
||||
}, |
||||
sequence: { |
||||
type: "bi.sequence_table_dynamic_number" |
||||
} |
||||
}, |
||||
summaryCellStyleGetter: function (isLast) { |
||||
return isLast ? { |
||||
backgroundColor: "#6495ED", |
||||
color: "#ffffff" |
||||
} : { |
||||
backgroundColor: "#B0C4DE", |
||||
color: "#ffffff" |
||||
} |
||||
}, |
||||
sequenceCellStyleGetter: function (index) { |
||||
return { |
||||
backgroundColor: "#87CEEB", |
||||
color: "#ffffff" |
||||
} |
||||
}, |
||||
headerCellStyleGetter: function () { |
||||
return { |
||||
backgroundColor: "#6495ED", |
||||
color: "#ffffff" |
||||
} |
||||
}, |
||||
pager: { |
||||
horizontal: { |
||||
pages: false, //总页数
|
||||
curr: 1, //初始化当前页, pages为数字时可用
|
||||
|
||||
hasPrev: function (page) { |
||||
return page > 1; |
||||
}, |
||||
hasNext: function (page) { |
||||
return page < 3; |
||||
} |
||||
}, |
||||
vertical: { |
||||
pages: false, //总页数
|
||||
curr: 1, //初始化当前页, pages为数字时可用
|
||||
|
||||
hasPrev: function (page) { |
||||
return page > 1; |
||||
}, |
||||
hasNext: function (page) { |
||||
return page < 3; |
||||
} |
||||
} |
||||
}, |
||||
itemsCreator: function (op, populate) { |
||||
var vpage = op.vpage || ""; |
||||
var hpage = op.hpage || ""; |
||||
BI.each(header, function (i, h) { |
||||
h.text = h.text + "V" + vpage + "H" + hpage; |
||||
}); |
||||
populate(items, header, crossItems, crossHeader); |
||||
}, |
||||
width: 600, |
||||
height: 400, |
||||
columnSize: [100, 100, 100, 100, 100, 100, 100], |
||||
minColumnSize: [100, 100, 100, 100, 100, 100, 100], |
||||
isNeedMerge: true, |
||||
isNeedFreeze: true, |
||||
mergeCols: [0, 1], |
||||
mergeRule: function (col1, col2) { |
||||
if (col1 === col2) { |
||||
return true; |
||||
} |
||||
if (col1.tag && col2.tag) { |
||||
return col1.tag === col2.tag; |
||||
} |
||||
return col1 === col2; |
||||
}, |
||||
freezeCols: [0, 1], |
||||
header: header, |
||||
items: items, |
||||
crossHeader: crossHeader, |
||||
crossItems: crossItems |
||||
}); |
||||
// table1.populate(items, header, crossItems, crossHeader);
|
||||
BI.createWidget({ |
||||
type: "bi.absolute", |
||||
element: this, |
||||
items: [{ |
||||
el: { |
||||
type: "bi.grid", |
||||
columns: 1, |
||||
rows: 1, |
||||
items: [[{ |
||||
el: table1 |
||||
}]] |
||||
}, |
||||
left: 10, |
||||
right: 10, |
||||
top: 10, |
||||
bottom: 10 |
||||
}] |
||||
}) |
||||
} |
||||
}); |
||||
BI.shortcut("demo.page_table", Demo.Func); |
@ -0,0 +1,159 @@
|
||||
Demo.Func = BI.inherit(BI.Widget, { |
||||
props: { |
||||
baseCls: "demo-func" |
||||
}, |
||||
|
||||
render: function () { |
||||
var items = [{ |
||||
children: [{ |
||||
text: "节点1", |
||||
children: [{ |
||||
text: "子节点1", |
||||
children: [{ |
||||
text: "叶节点1", |
||||
values: [{text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 11}, {text: 12}, {text: 112}] |
||||
}, { |
||||
text: "叶节点2", |
||||
values: [{text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 21}, {text: 22}, {text: 122}] |
||||
}], |
||||
values: [{text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 101}, {text: 102}, {text: 1102}] |
||||
}, { |
||||
text: "子节点2", |
||||
children: [{ |
||||
text: "叶节点3", |
||||
values: [{text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 31}, {text: 32}, {text: 132}] |
||||
}, { |
||||
text: "叶节点4", |
||||
values: [{text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 41}, {text: 42}, {text: 142}] |
||||
}], |
||||
values: [{text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 201}, {text: 202}, {text: 1202}] |
||||
}, { |
||||
text: "子节点3", |
||||
children: [{ |
||||
text: "叶节点5", |
||||
values: [{text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 51}, {text: 52}, {text: 152}] |
||||
}], |
||||
values: [{text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 301}, {text: 302}, {text: 1302}] |
||||
}], |
||||
values: [{text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 1001}, {text: 1002}, {text: 11002}] |
||||
}, { |
||||
text: "节点2", |
||||
values: [{text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 2001}, {text: 2002}, {text: 12002}] |
||||
}], |
||||
values: [{text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 12001}, {text: 12002}, {text: 112002}] |
||||
}]; |
||||
|
||||
var header = [{ |
||||
text: "header1" |
||||
}, { |
||||
text: "header2" |
||||
}, { |
||||
text: "header3" |
||||
}, { |
||||
text: "金额", |
||||
tag: 1 |
||||
}, { |
||||
text: "金额", |
||||
tag: 2 |
||||
}, { |
||||
text: "金额", |
||||
tag: 3 |
||||
}, { |
||||
text: "金额", |
||||
tag: 4 |
||||
}, { |
||||
text: "金额", |
||||
tag: 5 |
||||
}, { |
||||
text: "金额", |
||||
tag: 6 |
||||
}, { |
||||
text: "金额", |
||||
tag: 7 |
||||
}]; |
||||
|
||||
var crossHeader = [{ |
||||
text: "cross1" |
||||
}, { |
||||
text: "cross2" |
||||
}]; |
||||
|
||||
var crossItems = [{ |
||||
children: [{ |
||||
text: "节点1", |
||||
children: [{ |
||||
text: "子节点1" |
||||
}, { |
||||
text: "子节点2" |
||||
}], |
||||
values: [0] |
||||
}, { |
||||
text: "节点2", |
||||
children: [{ |
||||
text: "子节点3" |
||||
}, { |
||||
text: "子节点4" |
||||
}], |
||||
values: [0] |
||||
}], |
||||
values: [0] |
||||
}]; |
||||
var table = BI.createWidget({ |
||||
type: "bi.sequence_table", |
||||
el: { |
||||
type: "bi.tree_table", |
||||
el: { |
||||
type: "bi.adaptive_table", |
||||
el: { |
||||
type: "bi.resizable_table", |
||||
el: { |
||||
type: "bi.collection_table" |
||||
} |
||||
} |
||||
}, |
||||
}, |
||||
sequence: { |
||||
type: "bi.sequence_table_tree_number" |
||||
}, |
||||
showSequence: true, |
||||
width: 600, |
||||
height: 400, |
||||
isNeedResize: true, |
||||
isNeedMerge: true, |
||||
mergeRule: function (row1, row2) { |
||||
return row1 === row2; |
||||
}, |
||||
columnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100], |
||||
minColumnSize: [100, 100, 100, 100, 100, 100, 100, 100, 100, 100], |
||||
isNeedFreeze: true, |
||||
freezeCols: [0, 1, 2], |
||||
mergeCols: [0, 1, 2], |
||||
header: header, |
||||
items: items, |
||||
crossHeader: crossHeader, |
||||
crossItems: crossItems |
||||
}); |
||||
|
||||
BI.createWidget({ |
||||
type: "bi.absolute", |
||||
element: this, |
||||
items: [{ |
||||
el: { |
||||
type: "bi.grid", |
||||
columns: 1, |
||||
rows: 1, |
||||
items: [{ |
||||
column: 0, |
||||
row: 0, |
||||
el: table |
||||
}] |
||||
}, |
||||
left: 10, |
||||
right: 10, |
||||
top: 10, |
||||
bottom: 50 |
||||
}] |
||||
}) |
||||
} |
||||
}); |
||||
BI.shortcut("demo.sequence_table", Demo.Func); |
Loading…
Reference in new issue