UNPKG

2.64 kBJavaScriptView Raw
1/**
2 * Module : kero dataTable page getData
3 * Author : liuyk(liuyk@yonyou.com)
4 * Date : 2016-08-08 09:59:01
5 */
6
7/**
8 * 获取Page的数据信息
9 * @memberof Page
10 * @return {array} 数据信息对应的数组,每项对应一条数据
11 * @example
12 * page.getData()
13 */
14const getData = function() {
15 var datas = [],
16 row, meta;
17 meta = this.parent.getMeta()
18 for (var i = 0; i < this.rows.length; i++) {
19 row = this.rows[i];
20 datas.push({
21 'id': row.rowId,
22 'status': row.status,
23 data: row.data
24 });
25 }
26 return datas
27}
28
29
30/**
31 * 获取Page的选中行数据信息
32 * @memberof Page
33 * @return {array} 数据信息对应的数组,每项对应一条数据
34 * @example
35 * page.getSelectDatas()
36 */
37const getSelectDatas = function() {
38 var datas = [],
39 row;
40 for (var i = 0; i < this.rows.length; i++) {
41 row = this.rows[i];
42 datas.push({
43 'id': row.rowId,
44 'status': row.status,
45 data: row.data
46 });
47 }
48 for (var i = 0; i < this.selectedIndices.length; i++) {
49 row = this.rows[this.selectedIndices[i]];
50 datas.push({
51 'id': row.rowId,
52 'status': row.status,
53 data: row.data
54 });
55 }
56 return datas
57}
58
59
60/**
61 * 获取Page的选中Row对象
62 * @memberof Page
63 * @return {array} Row对象对应的数组,每项对应一条数据
64 * @example
65 * page.getSelectRows()
66 */
67const getSelectRows = function() {
68 var rows = [];
69 for (var i = 0; i < this.selectedIndices.length; i++) {
70 rows.push(this.rows[this.selectedIndices[i]])
71 }
72 return rows
73}
74
75/**
76 * 根据rowid获取Row对象
77 * @memberof Page
78 * @param {string} rowid 需要获取的Row对应的rowid
79 * @returns {Row} Row对象
80 * @example
81 * page.getRowByRowId('rowid')
82 */
83const getRowByRowId = function(rowid) {
84 for (var i = 0, count = this.rows.length; i < count; i++) {
85 if (this.rows[i].rowId == rowid)
86 return this.rows[i]
87 }
88 return null
89}
90
91/**
92 * 根据行索引获取对应行的字段值
93 * @memberof Page
94 * @param {number} rowIndex 行索引
95 * @param {string} fieldName 字段名
96 * @returns {sting} 字段值
97 * @example
98 * page.getRowValue(1,'field1')
99 */
100const getRowValue = function(rowIndex, fieldName) {
101 var row = this.rows[rowIndex]
102 if (row) {
103 return row.data[fieldName]['value']
104 }
105 return null
106}
107
108export const pageGetDataFunObj = {
109 getData: getData,
110 getSelectDatas: getSelectDatas,
111 getSelectRows: getSelectRows,
112 getRowByRowId: getRowByRowId,
113 getRowValue: getRowValue
114}