1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
/**
* 数据视图部件控制器
*
* @class IBizDataView
* @extends {IBizMDControl}
*/
var IBizDataView = /** @class */ (function (_super) {
__extends(IBizDataView, _super);
/**
* Creates an instance of IBizDataView.
* 创建 IBizDataView 实例
*
* @param {*} [opts={}]
* @memberof IBizDataView
*/
function IBizDataView(opts) {
if (opts === void 0) { opts = {}; }
var _this = _super.call(this, opts) || this;
/**
* 双击选中项
*
* @type {Array<any>}
* @memberof IBizDataView
*/
_this.dblselection = [];
/**
* 选中项
*
* @type {*}
* @memberof IBizDataView
*/
_this.selectItem = {};
return _this;
}
/**
* 数据加载
*
* @param {*} [arg={}]
* @memberof IBizDataView
*/
IBizDataView.prototype.load = function (arg) {
var _this = this;
if (arg === void 0) { arg = {}; }
var opt = {};
Object.assign(opt, arg);
Object.assign(opt, { 'srfctrlid': this.getName(), 'srfaction': 'fetch' });
// 发送加载数据前事件
this.fire(IBizMDControl.BEFORELOAD, opt);
this.beginLoading();
this.iBizHttp.post(this.getBackendUrl(), opt).subscribe(function (response) {
_this.endLoading();
if (!response.items || response.ret !== 0) {
if (response.errorMessage) {
_this.iBizNotification.error('', response.errorMessage);
}
return;
}
_this.items = response.items;
_this.fire(IBizMDControl.LOADED, response.items);
}, function (error) {
_this.endLoading();
console.log(error.info);
});
};
/**
* 选择变化
*
* @param {*} [item={}]
* @memberof IBizDataView
*/
IBizDataView.prototype.selectChange = function (data) {
if (data === void 0) { data = {}; }
var arr = this.selection.filter(function (item) { return Object.is(data.srfkey, item.srfkey); });
this.selection = [];
this.selectItem = {};
if (arr.length !== 1) {
this.selection.push(data);
Object.assign(this.selectItem, data);
}
this.fire(IBizDataView.SELECTIONCHANGE, this.selection);
};
/**
* 双击选择变化
*
* @param {*} [data={}]
* @memberof IBizDataView
*/
IBizDataView.prototype.DBClickSelectChange = function (data) {
if (data === void 0) { data = {}; }
var arr = this.dblselection.filter(function (item) { return Object.is(data.srfkey, item.srfkey); });
this.dblselection = [];
this.selectItem = {};
if (arr.length !== 1) {
this.dblselection.push(data);
Object.assign(this.selectItem, data);
}
this.fire(IBizDataView.DATAACTIVATED, this.dblselection);
};
/**
* 数据项选中
*
* @static
* @memberof IBizDataView
*/
IBizDataView.SELECTIONCHANGE = 'SELECTIONCHANGE';
/**
* 数据项双击激活
*
* @static
* @memberof IBizDataView
*/
IBizDataView.DATAACTIVATED = 'DATAACTIVATED';
return IBizDataView;
}(IBizMDControl));