UNPKG

2.13 kBJavaScriptView Raw
1/**
2 * Module : kero dataTable page data
3 * Author : liuyk(liuyk@yonyou.com)
4 * Date : 2016-08-08 09:59:01
5 */
6
7/**
8 * 根据行序号设置字段值
9 * @memberof Page
10 * @param {number} rowIndex 行序号
11 * @param {string} fieldName 字段名称
12 * @param {string} value 字段值
13 * @example
14 * page.setRowValue(1,'field1','value1')
15 */
16const setRowValue = function(rowIndex, fieldName, value) {
17 var row = this.rows[rowIndex]
18 if (row) {
19 row.data[fieldName]['value'] = value
20 if (row.status != Row.STATUS.NEW)
21 row.setStatus(Row.STATUS.UPDATE)
22 }
23}
24
25
26
27// 通过row对象更新row对象,不建议次方法
28const updateRow = function(originRow, newRow) {
29 // originRow.status = originRow.status
30 //this.rowId = data.rowId
31 if (!newRow.data) return;
32 for (var key in newRow.data) {
33 if (originRow.data[key]) {
34 var valueObj = newRow.data[key]
35 if (typeof valueObj == 'string' || typeof valueObj == 'number' || valueObj === null)
36 originRow.data[key]['value'] = valueObj
37 //this.setValue(key, this.formatValue(key, valueObj))
38 else {
39 // this.setValue(key, valueObj.value)
40
41 if (valueObj.error) {
42 if (u.showMessageDialog)
43 u.showMessageDialog({
44 title: "警告",
45 msg: valueObj.error,
46 backdrop: true
47 });
48 else
49 alert(valueObj.error)
50 } else {
51 //this.setValue(key, this.formatValue(key, valueObj.value), null)
52 originRow.data[key]['value'] = valueObj.value
53 for (var k in valueObj.meta) {
54 originRow.data[key]['meta'] = originRow.data[key]['meta'] || {}
55 originRow.data[key]['meta'][k] = valueObj.meta[k]
56 }
57 }
58 }
59 }
60 }
61}
62
63export const pageDataFunObj = {
64 setRowValue: setRowValue,
65 updateRow: updateRow
66}