@ibiz-template/runtime 0.4.17-dev.0 → 0.4.17-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/index.esm.js +696 -267
  2. package/dist/index.system.min.js +2 -2
  3. package/out/controller/control/grid/grid/grid-column.controller.d.ts +2 -1
  4. package/out/controller/control/grid/grid/grid-column.controller.d.ts.map +1 -1
  5. package/out/controller/control/grid/grid/grid.controller.d.ts +17 -1
  6. package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
  7. package/out/controller/control/grid/grid/grid.controller.js +32 -0
  8. package/out/controller/control/search-bar/search-bar.controller.d.ts +59 -2
  9. package/out/controller/control/search-bar/search-bar.controller.d.ts.map +1 -1
  10. package/out/controller/control/search-bar/search-bar.controller.js +142 -9
  11. package/out/controller/control/search-bar/search-bar.service.d.ts +78 -0
  12. package/out/controller/control/search-bar/search-bar.service.d.ts.map +1 -0
  13. package/out/controller/control/search-bar/search-bar.service.js +130 -0
  14. package/out/controller/control/tree/tree.controller.d.ts +27 -1
  15. package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
  16. package/out/controller/control/tree/tree.controller.js +45 -7
  17. package/out/controller/control/tree/tree.service.d.ts +1 -1
  18. package/out/controller/control/tree/tree.service.d.ts.map +1 -1
  19. package/out/controller/control/tree-grid-ex/index.d.ts +2 -0
  20. package/out/controller/control/tree-grid-ex/index.d.ts.map +1 -1
  21. package/out/controller/control/tree-grid-ex/index.js +2 -0
  22. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/index.d.ts +4 -0
  23. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/index.d.ts.map +1 -0
  24. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/index.js +3 -0
  25. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-column/tree-grid-ex-column.controller.d.ts +93 -0
  26. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-column/tree-grid-ex-column.controller.d.ts.map +1 -0
  27. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-column/tree-grid-ex-column.controller.js +89 -0
  28. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.controller.d.ts +13 -0
  29. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.controller.d.ts.map +1 -0
  30. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.controller.js +11 -0
  31. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.controller.d.ts +31 -0
  32. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.controller.d.ts.map +1 -0
  33. package/out/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.controller.js +61 -0
  34. package/out/controller/control/tree-grid-ex/tree-grid-ex-row.state.d.ts +26 -0
  35. package/out/controller/control/tree-grid-ex/tree-grid-ex-row.state.d.ts.map +1 -0
  36. package/out/controller/control/tree-grid-ex/tree-grid-ex-row.state.js +26 -0
  37. package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.d.ts +48 -46
  38. package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.d.ts.map +1 -1
  39. package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.js +85 -115
  40. package/out/controller/control/tree-grid-ex/tree-grid-ex.service.d.ts +8 -58
  41. package/out/controller/control/tree-grid-ex/tree-grid-ex.service.d.ts.map +1 -1
  42. package/out/controller/control/tree-grid-ex/tree-grid-ex.service.js +5 -135
  43. package/out/interface/controller/controller/control/i-grid.controller.d.ts +8 -0
  44. package/out/interface/controller/controller/control/i-grid.controller.d.ts.map +1 -1
  45. package/out/interface/controller/controller/control/i-tree-grid-ex.controller.d.ts +7 -7
  46. package/out/interface/controller/controller/control/i-tree-grid-ex.controller.d.ts.map +1 -1
  47. package/out/interface/controller/controller/control/i-tree.controller.d.ts +1 -1
  48. package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -1
  49. package/out/interface/controller/controller/control/index.d.ts +1 -0
  50. package/out/interface/controller/controller/control/index.d.ts.map +1 -1
  51. package/out/interface/controller/controller/control/index.js +1 -0
  52. package/out/interface/controller/controller/control/tree-grid-ex-column/i-tree-grid-ex-column.controller.d.ts +12 -0
  53. package/out/interface/controller/controller/control/tree-grid-ex-column/i-tree-grid-ex-column.controller.d.ts.map +1 -0
  54. package/out/interface/controller/controller/control/tree-grid-ex-column/i-tree-grid-ex-column.controller.js +1 -0
  55. package/out/interface/controller/controller/control/tree-grid-ex-column/index.d.ts +2 -0
  56. package/out/interface/controller/controller/control/tree-grid-ex-column/index.d.ts.map +1 -0
  57. package/out/interface/controller/controller/control/tree-grid-ex-column/index.js +1 -0
  58. package/out/interface/controller/event/control/i-tree-grid-ex.event.d.ts +2 -2
  59. package/out/interface/controller/event/control/i-tree-grid-ex.event.d.ts.map +1 -1
  60. package/out/interface/controller/state/control/i-search-bar.state.d.ts +64 -0
  61. package/out/interface/controller/state/control/i-search-bar.state.d.ts.map +1 -1
  62. package/out/interface/controller/state/control/i-tree-grid-ex.state.d.ts +31 -23
  63. package/out/interface/controller/state/control/i-tree-grid-ex.state.d.ts.map +1 -1
  64. package/out/interface/controller/state/control/i-tree.state.d.ts +8 -1
  65. package/out/interface/controller/state/control/i-tree.state.d.ts.map +1 -1
  66. package/out/interface/provider/i-tree-grid-ex-column.provider.d.ts +31 -0
  67. package/out/interface/provider/i-tree-grid-ex-column.provider.d.ts.map +1 -0
  68. package/out/interface/provider/i-tree-grid-ex-column.provider.js +1 -0
  69. package/out/interface/provider/index.d.ts +1 -0
  70. package/out/interface/provider/index.d.ts.map +1 -1
  71. package/out/register/helper/index.d.ts +1 -0
  72. package/out/register/helper/index.d.ts.map +1 -1
  73. package/out/register/helper/index.js +1 -0
  74. package/out/register/helper/tree-grid-ex-column-register.d.ts +23 -0
  75. package/out/register/helper/tree-grid-ex-column-register.d.ts.map +1 -0
  76. package/out/register/helper/tree-grid-ex-column-register.js +50 -0
  77. package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts.map +1 -1
  78. package/out/service/vo/tree-node-data/tree-data-set-node-data.js +51 -0
  79. package/out/service/vo/tree-node-data/tree-node-data.d.ts +2 -0
  80. package/out/service/vo/tree-node-data/tree-node-data.d.ts.map +1 -1
  81. package/out/service/vo/tree-node-data/tree-node-data.js +1 -0
  82. package/package.json +3 -3
  83. package/src/controller/control/grid/grid/grid-column.controller.ts +4 -1
  84. package/src/controller/control/grid/grid/grid.controller.ts +34 -0
  85. package/src/controller/control/search-bar/search-bar.controller.ts +178 -10
  86. package/src/controller/control/search-bar/search-bar.service.ts +161 -0
  87. package/src/controller/control/tree/tree.controller.ts +58 -11
  88. package/src/controller/control/tree/tree.service.ts +3 -1
  89. package/src/controller/control/tree-grid-ex/index.ts +2 -0
  90. package/src/controller/control/tree-grid-ex/tree-grid-ex-column/index.ts +3 -0
  91. package/src/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-column/tree-grid-ex-column.controller.ts +121 -0
  92. package/src/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.controller.ts +13 -0
  93. package/src/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.controller.ts +76 -0
  94. package/src/controller/control/tree-grid-ex/tree-grid-ex-row.state.ts +37 -0
  95. package/src/controller/control/tree-grid-ex/tree-grid-ex.controller.ts +116 -140
  96. package/src/controller/control/tree-grid-ex/tree-grid-ex.service.ts +10 -165
  97. package/src/interface/controller/controller/control/i-grid.controller.ts +9 -0
  98. package/src/interface/controller/controller/control/i-tree-grid-ex.controller.ts +11 -12
  99. package/src/interface/controller/controller/control/i-tree.controller.ts +5 -2
  100. package/src/interface/controller/controller/control/index.ts +1 -0
  101. package/src/interface/controller/controller/control/tree-grid-ex-column/i-tree-grid-ex-column.controller.ts +12 -0
  102. package/src/interface/controller/controller/control/tree-grid-ex-column/index.ts +1 -0
  103. package/src/interface/controller/event/control/i-tree-grid-ex.event.ts +2 -2
  104. package/src/interface/controller/state/control/i-search-bar.state.ts +73 -0
  105. package/src/interface/controller/state/control/i-tree-grid-ex.state.ts +27 -24
  106. package/src/interface/controller/state/control/i-tree.state.ts +9 -1
  107. package/src/interface/provider/i-tree-grid-ex-column.provider.ts +39 -0
  108. package/src/interface/provider/index.ts +1 -0
  109. package/src/register/helper/index.ts +1 -0
  110. package/src/register/helper/tree-grid-ex-column-register.ts +67 -0
  111. package/src/service/vo/tree-node-data/tree-data-set-node-data.ts +53 -0
  112. package/src/service/vo/tree-node-data/tree-node-data.ts +6 -0
@@ -26,6 +26,7 @@ import {
26
26
  getChildNodeRSs,
27
27
  getUIActionItemsByActionLevel,
28
28
  } from '../../../model';
29
+ import { ControllerEvent } from '../../utils';
29
30
 
30
31
  export type DropNodeRS = {
31
32
  minorEntityId: string;
@@ -42,12 +43,20 @@ export type DropNodeRS = {
42
43
  * @extends {MDControlController<IDETree, ITreeState, ITreeEvent>}
43
44
  * @implements {ITreeController}
44
45
  */
45
- export class TreeController
46
- extends MDControlController<IDETree, ITreeState, ITreeEvent>
47
- implements ITreeController
46
+ export class TreeController<
47
+ T extends IDETree = IDETree,
48
+ S extends ITreeState = ITreeState,
49
+ E extends ITreeEvent = ITreeEvent,
50
+ >
51
+ extends MDControlController<T, S, E>
52
+ implements ITreeController<T, S, E>
48
53
  {
49
54
  declare service: TreeService;
50
55
 
56
+ protected get _evt(): ControllerEvent<ITreeEvent> {
57
+ return this.evt;
58
+ }
59
+
51
60
  /**
52
61
  * 上下文菜单控制器
53
62
  * @author lxm
@@ -124,8 +133,7 @@ export class TreeController
124
133
  this.initDropNodeRss();
125
134
  this.initNodeClickTBUIActionItem();
126
135
 
127
- this.service = new TreeService(this.model);
128
- await this.service.init(this.context);
136
+ await this.initService();
129
137
 
130
138
  // 初始化上下文菜单控制器
131
139
  this.model.detreeNodes!.forEach(node => {
@@ -145,6 +153,18 @@ export class TreeController
145
153
  );
146
154
  }
147
155
 
156
+ /**
157
+ * 初始化对应类型的部件服务
158
+ * @author lxm
159
+ * @date 2023-12-21 11:25:33
160
+ * @protected
161
+ * @return {*} {Promise<void>}
162
+ */
163
+ protected async initService(): Promise<void> {
164
+ this.service = new TreeService(this.model);
165
+ await this.service.init(this.context);
166
+ }
167
+
148
168
  /**
149
169
  * 初始化节点拖入关系处理
150
170
  * @author lxm
@@ -218,7 +238,7 @@ export class TreeController
218
238
  }
219
239
  await this.afterLoad(args, nodes);
220
240
  this.state.isLoaded = true;
221
- await this.evt.emit('onLoadSuccess', {
241
+ await this._evt.emit('onLoadSuccess', {
222
242
  isInitialLoad,
223
243
  });
224
244
 
@@ -267,6 +287,19 @@ export class TreeController
267
287
  this.state.rootNodes = nodes;
268
288
  }
269
289
 
290
+ await this.afterLoadNodes(nodes);
291
+
292
+ return nodes;
293
+ }
294
+
295
+ /**
296
+ * loadNodes加载完子数据之后的处理
297
+ * @author lxm
298
+ * @date 2023-12-22 02:37:50
299
+ * @param {ITreeNodeData[]} nodes 加载回来的子数据
300
+ * @return {*} {Promise<void>}
301
+ */
302
+ async afterLoadNodes(nodes: ITreeNodeData[]): Promise<void> {
270
303
  // 更新items
271
304
  this.state.items = [];
272
305
  recursiveIterate(
@@ -276,9 +309,8 @@ export class TreeController
276
309
  },
277
310
  );
278
311
 
312
+ // 重新计算展开节点标识
279
313
  this.state.expandedKeys = this.calcExpandedKeys(nodes);
280
-
281
- return nodes;
282
314
  }
283
315
 
284
316
  /**
@@ -363,7 +395,7 @@ export class TreeController
363
395
 
364
396
  setActive(item: ITreeNodeData): Promise<void> {
365
397
  const nodeParams = this.parseTreeNodeData(item);
366
- return this.evt.emit('onActive', { ...nodeParams, nodeData: item });
398
+ return this._evt.emit('onActive', { ...nodeParams, nodeData: item });
367
399
  }
368
400
 
369
401
  setSelection(selection: IData[]): void {
@@ -388,6 +420,21 @@ export class TreeController
388
420
  return this.model.detreeNodes?.find(item => item.id === id);
389
421
  }
390
422
 
423
+ /**
424
+ * 通过标识获取节点数据
425
+ * @author lxm
426
+ * @date 2023-12-22 02:21:38
427
+ * @param {string} id 可以是节点id也可以是_uuid
428
+ * @return {*} {(ITreeNodeData | undefined)}
429
+ */
430
+ getNodeData(key: string): ITreeNodeData | undefined {
431
+ const find = this.state.items.find(item => item.id === key);
432
+ if (find) {
433
+ return find;
434
+ }
435
+ return this.state.items.find(item => item._uuid === key);
436
+ }
437
+
391
438
  /**
392
439
  * 执行界面行为
393
440
  *
@@ -517,7 +564,7 @@ export class TreeController
517
564
  const targetNode = refreshParent ? currentNode.parent! : currentNode;
518
565
 
519
566
  const nodes = await this.loadNodes(targetNode);
520
- this.evt.emit('onAfterRefreshParent', {
567
+ this._evt.emit('onAfterRefreshParent', {
521
568
  parentNode: targetNode,
522
569
  children: nodes,
523
570
  });
@@ -761,7 +808,7 @@ export class TreeController
761
808
  await this.updateDeNodeData(modifiedNodeDatas);
762
809
 
763
810
  // *通知界面修改移入的父节点的子节点数据
764
- this.evt.emit('onAfterNodeDrop', { isChangedParent });
811
+ this._evt.emit('onAfterNodeDrop', { isChangedParent });
765
812
  }
766
813
 
767
814
  /**
@@ -69,7 +69,9 @@ export interface TreeFetchOpts {
69
69
  * @class GridService
70
70
  * @extends {MDControlService<IDETree>}
71
71
  */
72
- export class TreeService extends MDControlService<IDETree> {
72
+ export class TreeService<
73
+ T extends IDETree = IDETree,
74
+ > extends MDControlService<T> {
73
75
  /**
74
76
  * 获取子节点数据
75
77
  *
@@ -1,2 +1,4 @@
1
1
  export * from './tree-grid-ex.controller';
2
2
  export * from './tree-grid-ex.service';
3
+ export * from './tree-grid-ex-column/index';
4
+ export * from './tree-grid-ex-row.state';
@@ -0,0 +1,3 @@
1
+ export { TreeGridExColumnController } from './tree-grid-ex-column/tree-grid-ex-column.controller';
2
+ export { TreeGridExFieldColumnController } from './tree-grid-ex-field-column/tree-grid-ex-field-column.controller';
3
+ export { TreeGridExUAColumnController } from './tree-grid-ex-ua-column/tree-grid-ex-ua-column.controller';
@@ -0,0 +1,121 @@
1
+ import { IDETreeColumn } from '@ibiz/model-core';
2
+ import { TreeGridExController } from '../../tree-grid-ex.controller';
3
+
4
+ /**
5
+ * 树表格(增强)列控制器
6
+ * @author lxm
7
+ * @date 2023-12-21 02:03:28
8
+ * @export
9
+ * @class TreeGridExColumnController
10
+ * @template T
11
+ */
12
+ export class TreeGridExColumnController<
13
+ T extends IDETreeColumn = IDETreeColumn,
14
+ > {
15
+ /**
16
+ * 树表格(增强)列模型对象
17
+ *
18
+ * @author lxm
19
+ * @date 2022-09-05 19:09:07
20
+ * @type {T}
21
+ */
22
+ readonly model: T;
23
+
24
+ /**
25
+ * 树表格(增强)控制器
26
+ *
27
+ * @author lxm
28
+ * @date 2022-08-24 22:08:59
29
+ * @type {GridController}
30
+ */
31
+ readonly treeGrid: TreeGridExController;
32
+
33
+ /**
34
+ * 是否是自适应列
35
+ * @author lxm
36
+ * @date 2023-07-07 11:20:16
37
+ * @type {boolean}
38
+ */
39
+ isAdaptiveColumn: boolean = false;
40
+
41
+ /**
42
+ * 是否是脚本代码
43
+ * @return {*}
44
+ * @author: zhujiamin
45
+ * @Date: 2023-08-15 10:51:25
46
+ */
47
+ isCustomCode: boolean = false;
48
+
49
+ /**
50
+ * 上下文
51
+ *
52
+ * @author lxm
53
+ * @date 2022-09-05 19:09:24
54
+ * @readonly
55
+ * @type {IContext}
56
+ */
57
+ get context(): IContext {
58
+ return this.treeGrid.context;
59
+ }
60
+
61
+ /**
62
+ * 视图参数
63
+ *
64
+ * @author lxm
65
+ * @date 2022-09-05 19:09:00
66
+ * @readonly
67
+ * @type {IParams}
68
+ */
69
+ get params(): IParams {
70
+ return this.treeGrid.params;
71
+ }
72
+
73
+ /**
74
+ * 是否是第一个显示的树表格列
75
+ * @author lxm
76
+ * @date 2023-12-22 03:28:10
77
+ * @readonly
78
+ * @type {boolean}
79
+ */
80
+ get isFirstShowColumn(): boolean {
81
+ const firstColumn = this.treeGrid.state.columnStates.find(
82
+ item => !item.hidden,
83
+ );
84
+ return firstColumn?.key === this.model.codeName;
85
+ }
86
+
87
+ /**
88
+ * Creates an instance of GridFieldColumnController.
89
+ * @author lxm
90
+ * @date 2022-08-24 20:08:22
91
+ * @param {T} model
92
+ */
93
+ constructor(model: T, treeGrid: TreeGridExController) {
94
+ this.model = model;
95
+ this.treeGrid = treeGrid;
96
+ this.isAdaptiveColumn = model.widthUnit === 'STAR';
97
+ }
98
+
99
+ /**
100
+ * 子类不可覆盖或重写此方法,在 init 时需要重写的使用 onInit 方法。
101
+ *
102
+ * @author lxm
103
+ * @date 2022-08-18 22:08:30
104
+ * @returns {*} {Promise<void>}
105
+ */
106
+ async init(): Promise<void> {
107
+ await this.onInit();
108
+ }
109
+
110
+ /**
111
+ * 初始化方法
112
+ *
113
+ * @author lxm
114
+ * @date 2022-09-28 15:09:15
115
+ * @protected
116
+ * @returns {*} {Promise<void>}
117
+ */
118
+ protected async onInit(): Promise<void> {
119
+ // 初始化操作
120
+ }
121
+ }
@@ -0,0 +1,13 @@
1
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2
+ import { IDETreeDEFColumn } from '@ibiz/model-core';
3
+ import { TreeGridExColumnController } from '../tree-grid-ex-column/tree-grid-ex-column.controller';
4
+
5
+ /**
6
+ * 树表格(增强)属性列控制器
7
+ * @author lxm
8
+ * @date 2023-12-21 02:02:36
9
+ * @export
10
+ * @class TreeGridExFieldColumnController
11
+ * @extends {TreeGridExColumnController<IDETreeDEFColumn>}
12
+ */
13
+ export class TreeGridExFieldColumnController extends TreeGridExColumnController<IDETreeDEFColumn> {}
@@ -0,0 +1,76 @@
1
+ /* eslint-disable no-param-reassign */
2
+ import { RuntimeModelError } from '@ibiz-template/core';
3
+ import { IDETreeUAColumn, IUIActionGroupDetail } from '@ibiz/model-core';
4
+ import { UIActionUtil } from '../../../../../ui-action';
5
+ import { ButtonContainerState, UIActionButtonState } from '../../../../utils';
6
+ import { TreeGridExColumnController } from '../tree-grid-ex-column/tree-grid-ex-column.controller';
7
+ import { ITreeGridExRowState } from '../../../../../interface';
8
+
9
+ /**
10
+ * 树表格(增强)操作列控制器
11
+ * @author lxm
12
+ * @date 2023-12-21 02:04:05
13
+ * @export
14
+ * @class TreeGridExUAColumnController
15
+ * @extends {TreeGridExColumnController<IDETreeUAColumn>}
16
+ */
17
+ export class TreeGridExUAColumnController extends TreeGridExColumnController<IDETreeUAColumn> {
18
+ /**
19
+ * 给rowController初始化操作列的状态
20
+ *
21
+ * @author lxm
22
+ * @date 2022-09-07 21:09:43
23
+ * @param {ITreeGridExRowState} row
24
+ */
25
+ initActionStates(row: ITreeGridExRowState): void {
26
+ // 操作列按钮状态控制
27
+ const { deuiactionGroup } = this.model;
28
+ if (!deuiactionGroup) {
29
+ throw new RuntimeModelError(this.model, '操作列没有配置界面行为组');
30
+ }
31
+ if (!deuiactionGroup.uiactionGroupDetails?.length) {
32
+ ibiz.log.debug('操作列界面行为组没有配置界面行为');
33
+ return;
34
+ }
35
+ const containerState = new ButtonContainerState();
36
+ deuiactionGroup.uiactionGroupDetails.forEach(detail => {
37
+ const actionid = detail.uiactionId;
38
+ if (actionid) {
39
+ const buttonState = new UIActionButtonState(
40
+ detail.id!,
41
+ this.treeGrid.context.srfappid!,
42
+ actionid,
43
+ );
44
+ containerState.addState(detail.id!, buttonState);
45
+ }
46
+ });
47
+ row.uaColStates[this.model.codeName!] = containerState;
48
+ }
49
+
50
+ /**
51
+ * 触发操作列点击事件
52
+ *
53
+ * @author lxm
54
+ * @date 2022-09-07 22:09:46
55
+ * @param {IPSUIActionGroupDetail} detail
56
+ * @param {MouseEvent} event
57
+ */
58
+ async onActionClick(
59
+ detail: IUIActionGroupDetail,
60
+ row: ITreeGridExRowState,
61
+ event: MouseEvent,
62
+ ): Promise<void> {
63
+ const actionId = detail.uiactionId;
64
+ await UIActionUtil.execAndResolved(
65
+ actionId!,
66
+ {
67
+ context: this.context,
68
+ params: this.params,
69
+ data: [row.data],
70
+ view: this.treeGrid.view,
71
+ event,
72
+ },
73
+ detail.appId,
74
+ );
75
+ }
76
+ }
@@ -0,0 +1,37 @@
1
+ import {
2
+ IButtonContainerState,
3
+ ITreeGridExRowState,
4
+ ITreeNodeData,
5
+ } from '../../../interface';
6
+ import { TreeGridExController } from './tree-grid-ex.controller';
7
+
8
+ /**
9
+ * 树表格(增强)行数据状态类
10
+ *
11
+ * @author lxm
12
+ * @date 2023-12-22 10:39:01
13
+ * @export
14
+ * @class TreeGridExRowState
15
+ * @implements {ITreeGridExRowState}
16
+ */
17
+ export class TreeGridExRowState implements ITreeGridExRowState {
18
+ data: ITreeNodeData;
19
+
20
+ /**
21
+ * 操作列状态(p是操作列的标识)
22
+ *
23
+ * @author lxm
24
+ * @date 2022-09-07 22:09:38
25
+ * @type {({ [p: string]: IButtonContainerState })}
26
+ */
27
+ uaColStates: { [p: string]: IButtonContainerState } = {};
28
+
29
+ constructor(data: ITreeNodeData, treeGrid: TreeGridExController) {
30
+ this.data = data;
31
+
32
+ // 初始化操作列状态
33
+ Object.values(treeGrid.uaColumns).forEach(column => {
34
+ column.initActionStates(this);
35
+ });
36
+ }
37
+ }