@ibiz-template/runtime 0.4.13 → 0.4.15

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 (60) hide show
  1. package/dist/index.esm.js +453 -45
  2. package/dist/index.system.min.js +2 -2
  3. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts +13 -0
  4. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts.map +1 -1
  5. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.js +24 -3
  6. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.d.ts +13 -0
  7. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.d.ts.map +1 -1
  8. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.js +26 -2
  9. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts +0 -8
  10. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts.map +1 -1
  11. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.js +0 -10
  12. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts +8 -0
  13. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts.map +1 -1
  14. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.js +10 -0
  15. package/out/controller/control/gantt/gantt.controller.d.ts +34 -1
  16. package/out/controller/control/gantt/gantt.controller.d.ts.map +1 -1
  17. package/out/controller/control/gantt/gantt.controller.js +74 -0
  18. package/out/controller/control/gantt/gantt.service.d.ts +13 -0
  19. package/out/controller/control/gantt/gantt.service.d.ts.map +1 -1
  20. package/out/controller/control/gantt/gantt.service.js +14 -0
  21. package/out/controller/control/kanban/kanban.controller.d.ts +104 -2
  22. package/out/controller/control/kanban/kanban.controller.d.ts.map +1 -1
  23. package/out/controller/control/kanban/kanban.controller.js +220 -0
  24. package/out/controller/control/tree/tree.controller.d.ts +15 -2
  25. package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
  26. package/out/controller/control/tree/tree.controller.js +32 -2
  27. package/out/interface/controller/controller/control/i-kanban.controller.d.ts +27 -0
  28. package/out/interface/controller/controller/control/i-kanban.controller.d.ts.map +1 -1
  29. package/out/interface/controller/controller/control/i-tree.controller.d.ts +1 -1
  30. package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -1
  31. package/out/interface/controller/state/control/i-gantt.state.d.ts +23 -0
  32. package/out/interface/controller/state/control/i-gantt.state.d.ts.map +1 -1
  33. package/out/interface/controller/state/control/i-kanban.state.d.ts +29 -0
  34. package/out/interface/controller/state/control/i-kanban.state.d.ts.map +1 -1
  35. package/out/interface/provider/i-grid-column.provider.d.ts +2 -3
  36. package/out/interface/provider/i-grid-column.provider.d.ts.map +1 -1
  37. package/out/model/index.d.ts +1 -0
  38. package/out/model/index.d.ts.map +1 -1
  39. package/out/model/index.js +1 -0
  40. package/out/model/toolbar/toolbar.d.ts +12 -0
  41. package/out/model/toolbar/toolbar.d.ts.map +1 -0
  42. package/out/model/toolbar/toolbar.js +22 -0
  43. package/out/service/dto/method.dto.js +1 -1
  44. package/package.json +4 -4
  45. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts +27 -3
  46. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.ts +26 -2
  47. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts +0 -11
  48. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts +11 -0
  49. package/src/controller/control/gantt/gantt.controller.ts +91 -0
  50. package/src/controller/control/gantt/gantt.service.ts +26 -1
  51. package/src/controller/control/kanban/kanban.controller.ts +258 -1
  52. package/src/controller/control/tree/tree.controller.ts +46 -3
  53. package/src/interface/controller/controller/control/i-kanban.controller.ts +31 -1
  54. package/src/interface/controller/controller/control/i-tree.controller.ts +1 -1
  55. package/src/interface/controller/state/control/i-gantt.state.ts +26 -0
  56. package/src/interface/controller/state/control/i-kanban.state.ts +33 -0
  57. package/src/interface/provider/i-grid-column.provider.ts +7 -3
  58. package/src/model/index.ts +1 -0
  59. package/src/model/toolbar/toolbar.ts +35 -0
  60. package/src/service/dto/method.dto.ts +1 -1
@@ -3,6 +3,7 @@ import { isNil } from 'ramda';
3
3
  import { calcDeCodeNameById } from '../../../model';
4
4
  import { DataViewControlController } from '../data-view';
5
5
  import { KanbanService } from './kanban.service';
6
+ import { UIActionUtil } from '../../../ui-action';
6
7
  export class KanbanController extends DataViewControlController {
7
8
  /**
8
9
  * 允许调整顺序
@@ -32,6 +33,8 @@ export class KanbanController extends DataViewControlController {
32
33
  super.initState();
33
34
  this.state.size = this.model.pagingSize || 1000;
34
35
  this.state.updating = false;
36
+ this.state.batching = false;
37
+ this.state.selectGroupKey = '';
35
38
  // 支持调整顺序和分组时
36
39
  this.state.draggable = this.enableEditOrder || this.enableEditGroup;
37
40
  }
@@ -44,6 +47,7 @@ export class KanbanController extends DataViewControlController {
44
47
  */
45
48
  async onCreated() {
46
49
  await super.onCreated();
50
+ this.setToolbarHooks();
47
51
  }
48
52
  /**
49
53
  * 本地排序items
@@ -82,6 +86,73 @@ export class KanbanController extends DataViewControlController {
82
86
  this.sortItems(this.state.items);
83
87
  return super.afterLoad(args, items);
84
88
  }
89
+ /**
90
+ * 当展开批操作工具栏时需进行行点击拦截
91
+ *
92
+ * @param {IData} data
93
+ * @return {*} {Promise<void>}
94
+ * @memberof KanbanController
95
+ */
96
+ async onRowClick(data) {
97
+ const { groupAppDEFieldId } = this.model;
98
+ if (this.state.batching && groupAppDEFieldId) {
99
+ const groupVal = data[groupAppDEFieldId];
100
+ if (groupVal !== this.state.selectGroupKey) {
101
+ // 激活事件
102
+ if (this.state.mdctrlActiveMode === 1) {
103
+ await this.setActive(data);
104
+ }
105
+ return;
106
+ }
107
+ }
108
+ super.onRowClick(data);
109
+ }
110
+ /**
111
+ * 点击新建时设置选中分组
112
+ *
113
+ * @param {MouseEvent} event
114
+ * @param {(string | number)} group
115
+ * @memberof KanbanController
116
+ */
117
+ onClickNew(event, group) {
118
+ this.setSelectGroup(group);
119
+ super.onClickNew(event, group);
120
+ }
121
+ /**
122
+ * 分组工具栏需设置选中分组
123
+ *
124
+ * @param {IUIActionGroupDetail} detail
125
+ * @param {MouseEvent} event
126
+ * @param {IKanbanGroupState} group
127
+ * @return {*} {Promise<void>}
128
+ * @memberof KanbanController
129
+ */
130
+ async onGroupToolbarClick(detail, event, group) {
131
+ this.setSelectGroup(group.key);
132
+ super.onGroupToolbarClick(detail, event, group);
133
+ }
134
+ /**
135
+ * 分组行为项点击,需携带分组标识
136
+ *
137
+ * @param {IUIActionGroupDetail} detail
138
+ * @param {IData} item
139
+ * @param {MouseEvent} event
140
+ * @param {IKanbanGroupState} group
141
+ * @return {*} {Promise<void>}
142
+ * @memberof KanbanController
143
+ */
144
+ async onGroupActionClick(detail, item, event, group) {
145
+ this.setSelectGroup(group.key);
146
+ const params = Object.assign(Object.assign({}, this.params), { srfgroup: group });
147
+ const actionId = detail.uiactionId;
148
+ await UIActionUtil.execAndResolved(actionId, {
149
+ context: this.context,
150
+ params,
151
+ data: [item],
152
+ view: this.view,
153
+ event,
154
+ }, detail.appId);
155
+ }
85
156
  handleDataGroup() {
86
157
  if (!this.model.enableGroup || this.model.groupMode === 'NONE') {
87
158
  throw new RuntimeError('看板部件必须开启分组');
@@ -296,4 +367,153 @@ export class KanbanController extends DataViewControlController {
296
367
  await this.afterLoad({}, this.state.items);
297
368
  }
298
369
  }
370
+ /**
371
+ * 获取是否全屏
372
+ *
373
+ * @return {*} {boolean}
374
+ * @memberof KanbanController
375
+ */
376
+ getFullscreen() {
377
+ const value = document.isFullScreen ||
378
+ document.mozIsFullScreen ||
379
+ document.webkitIsFullScreen;
380
+ return value;
381
+ }
382
+ /**
383
+ * 触发全屏
384
+ *
385
+ * @param {IData} container
386
+ * @memberof KanbanController
387
+ */
388
+ onFullScreen(container) {
389
+ const isFull = this.getFullscreen();
390
+ if (!isFull) {
391
+ if (container) {
392
+ if (container.webkitRequestFullscreen) {
393
+ container.webkitRequestFullscreen();
394
+ }
395
+ else if (container.mozRequestFullScreen) {
396
+ container.mozRequestFullScreen();
397
+ }
398
+ else if (container.msRequestFullscreen) {
399
+ container.msRequestFullscreen();
400
+ }
401
+ else if (container.requestFullscreen) {
402
+ container.requestFullscreen();
403
+ }
404
+ }
405
+ }
406
+ else if (document.documentElement.requestFullScreen) {
407
+ document.exitFullScreen();
408
+ }
409
+ else if (document.documentElement.webkitRequestFullScreen) {
410
+ document.webkitCancelFullScreen();
411
+ }
412
+ else if (document.documentElement.mozRequestFullScreen) {
413
+ document.mozCancelFullScreen();
414
+ }
415
+ return !isFull;
416
+ }
417
+ /**
418
+ * 设置选中分组标识
419
+ *
420
+ * @param {(string | number)} key
421
+ * @memberof KanbanController
422
+ */
423
+ setSelectGroup(key) {
424
+ if (!this.state.batching) {
425
+ this.state.selectGroupKey = key;
426
+ }
427
+ }
428
+ /**
429
+ * 设置分组控制器
430
+ *
431
+ * @param {string} groupKey
432
+ * @param {('quickToolbarController' | 'batchToolbarController')} name
433
+ * @param {IToolbarController} c
434
+ * @memberof KanbanController
435
+ */
436
+ setGroupController(groupKey, name, c) {
437
+ const group = this.state.groups.find(x => x.key === groupKey);
438
+ if (group) {
439
+ group[name] = c;
440
+ }
441
+ }
442
+ /**
443
+ * 设置工具栏hook
444
+ *
445
+ * @memberof KanbanController
446
+ */
447
+ setToolbarHooks() {
448
+ this.listenNewController((name, c) => {
449
+ if (name.startsWith(`${this.model.name}_quicktoolbar`) ||
450
+ name.startsWith(`${this.model.name}_groupquicktoolbar`)) {
451
+ this.setQuickToolbarClickHook(name, c);
452
+ }
453
+ if (name.startsWith(`${this.model.name}_batchtoolbar`)) {
454
+ this.setBatchToolbarClickHook(name, c);
455
+ }
456
+ });
457
+ }
458
+ /**
459
+ * 设置快捷工具栏点击事件hook
460
+ *
461
+ * @param {string} name
462
+ * @param {IToolbarController} c
463
+ * @memberof KanbanController
464
+ */
465
+ setQuickToolbarClickHook(name, c) {
466
+ const key = name.split('quicktoolbar_')[1];
467
+ this.setGroupController(key, 'quickToolbarController', c);
468
+ c.evt.on('onClick', (event) => {
469
+ const groupKey = event.targetName.split('quicktoolbar_')[1];
470
+ this.setSelectGroup(groupKey);
471
+ Object.assign(event.params, { srfgroup: groupKey });
472
+ });
473
+ }
474
+ /**
475
+ * 设置批工具栏点击事件hook
476
+ *
477
+ * @param {string} name
478
+ * @param {IToolbarController} c
479
+ * @memberof KanbanController
480
+ */
481
+ setBatchToolbarClickHook(name, c) {
482
+ const key = name.split('batchtoolbar_')[1];
483
+ this.setGroupController(key, 'batchToolbarController', c);
484
+ c.evt.on('onClick', (event) => {
485
+ const groupKey = event.targetName.split('batchtoolbar_')[1];
486
+ this.setSelectGroup(groupKey);
487
+ Object.assign(event.params, { srfgroup: groupKey });
488
+ });
489
+ }
490
+ /**
491
+ * 打开批操作工具栏
492
+ *
493
+ * @param {string} groupKey
494
+ * @memberof KanbanController
495
+ */
496
+ openBatch(groupKey) {
497
+ this.state.selectGroupKey = groupKey;
498
+ this.state.batching = true;
499
+ this.state.selectedData = [];
500
+ // 清空分组选中数据
501
+ this.state.groups.forEach(group => {
502
+ group.selectedData = [];
503
+ });
504
+ }
505
+ /**
506
+ * 关闭批操作工具栏
507
+ *
508
+ * @memberof KanbanController
509
+ */
510
+ closeBatch() {
511
+ this.state.selectGroupKey = '';
512
+ this.state.batching = false;
513
+ this.state.selectedData = [];
514
+ // 清空分组选中数据
515
+ this.state.groups.forEach(group => {
516
+ group.selectedData = [];
517
+ });
518
+ }
299
519
  }
@@ -1,4 +1,4 @@
1
- import { IDETree, IDETreeNode } from '@ibiz/model-core';
1
+ import { IDETBUIActionItem, IDETree, IDETreeNode } from '@ibiz/model-core';
2
2
  import { ITreeState, ITreeEvent, ITreeController, MDCtrlLoadParams, ITreeNodeData } from '../../../interface';
3
3
  import { MDControlController } from '../../common';
4
4
  import { ContextMenuController } from '../context-menu';
@@ -41,6 +41,12 @@ export declare class TreeController extends MDControlController<IDETree, ITreeSt
41
41
  * @date 2023-12-14 03:05:38
42
42
  */
43
43
  dropNodeRss: Map<string, DropNodeRS[]>;
44
+ /**
45
+ * 节点对应的上下文菜单里第一个行为级别为常用操作的项
46
+ * @author lxm
47
+ * @date 2023-12-19 03:14:03
48
+ */
49
+ nodeClickTBUIActionItem: Map<string, IDETBUIActionItem>;
44
50
  protected initState(): void;
45
51
  protected onCreated(): Promise<void>;
46
52
  /**
@@ -50,6 +56,13 @@ export declare class TreeController extends MDControlController<IDETree, ITreeSt
50
56
  * @protected
51
57
  */
52
58
  protected initDropNodeRss(): void;
59
+ /**
60
+ * 初始化节点点击后触发的第一个常用操作的上下文菜单项
61
+ * @author lxm
62
+ * @date 2023-12-19 03:18:43
63
+ * @protected
64
+ */
65
+ protected initNodeClickTBUIActionItem(): void;
53
66
  /**
54
67
  * 树部件加载,从根节点开始重新加载
55
68
  *
@@ -73,7 +86,7 @@ export declare class TreeController extends MDControlController<IDETree, ITreeSt
73
86
  * @returns {*} {Promise<void>}
74
87
  * @memberof TreeController
75
88
  */
76
- onTreeNodeClick(nodeData: ITreeNodeData): Promise<void>;
89
+ onTreeNodeClick(nodeData: ITreeNodeData, event: MouseEvent): Promise<void>;
77
90
  /**
78
91
  * 树节点数据变更事件处理
79
92
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"tree.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/tree/tree.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/tree/tree.controller.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { UIActionUtil } from '../../../ui-action';
4
4
  import { MDControlController } from '../../common';
5
5
  import { ContextMenuController } from '../context-menu';
6
6
  import { TreeService } from './tree.service';
7
- import { calcDeCodeNameById, getChildNodeRSs } from '../../../model';
7
+ import { calcDeCodeNameById, getChildNodeRSs, getUIActionItemsByActionLevel, } from '../../../model';
8
8
  /**
9
9
  * 树部件控制器
10
10
  * @author lxm
@@ -37,6 +37,12 @@ export class TreeController extends MDControlController {
37
37
  * @date 2023-12-14 03:05:38
38
38
  */
39
39
  this.dropNodeRss = new Map();
40
+ /**
41
+ * 节点对应的上下文菜单里第一个行为级别为常用操作的项
42
+ * @author lxm
43
+ * @date 2023-12-19 03:14:03
44
+ */
45
+ this.nodeClickTBUIActionItem = new Map();
40
46
  }
41
47
  initState() {
42
48
  super.initState();
@@ -74,6 +80,7 @@ export class TreeController extends MDControlController {
74
80
  }
75
81
  }
76
82
  this.initDropNodeRss();
83
+ this.initNodeClickTBUIActionItem();
77
84
  this.service = new TreeService(this.model);
78
85
  await this.service.init(this.context);
79
86
  // 初始化上下文菜单控制器
@@ -121,6 +128,24 @@ export class TreeController extends MDControlController {
121
128
  }
122
129
  });
123
130
  }
131
+ /**
132
+ * 初始化节点点击后触发的第一个常用操作的上下文菜单项
133
+ * @author lxm
134
+ * @date 2023-12-19 03:18:43
135
+ * @protected
136
+ */
137
+ initNodeClickTBUIActionItem() {
138
+ var _a;
139
+ (_a = this.model.detreeNodes) === null || _a === void 0 ? void 0 : _a.forEach(node => {
140
+ var _a, _b;
141
+ if ((_b = (_a = node.decontextMenu) === null || _a === void 0 ? void 0 : _a.detoolbarItems) === null || _b === void 0 ? void 0 : _b.length) {
142
+ const items = getUIActionItemsByActionLevel(node.decontextMenu, 200);
143
+ if (items.length > 0) {
144
+ this.nodeClickTBUIActionItem.set(node.id, items[0]);
145
+ }
146
+ }
147
+ });
148
+ }
124
149
  /**
125
150
  * 树部件加载,从根节点开始重新加载
126
151
  *
@@ -202,7 +227,12 @@ export class TreeController extends MDControlController {
202
227
  * @returns {*} {Promise<void>}
203
228
  * @memberof TreeController
204
229
  */
205
- async onTreeNodeClick(nodeData) {
230
+ async onTreeNodeClick(nodeData, event) {
231
+ // 节点有配置常用操作的上下文菜单时,触发界面行为,后续逻辑都不走
232
+ if (this.nodeClickTBUIActionItem.has(nodeData.nodeId)) {
233
+ const item = this.nodeClickTBUIActionItem.get(nodeData.nodeId);
234
+ return this.doUIAction(item.uiactionId, nodeData, event, item.appId);
235
+ }
206
236
  // 导航的时候,没有导航视图的时候,节点后续点击逻辑都不走,也不选中
207
237
  if (this.state.navigational) {
208
238
  const nodeModel = this.getNodeModel(nodeData.nodeId);
@@ -10,5 +10,32 @@ import { IDataViewControlController } from './i-data-view-control.controller';
10
10
  * @extends {IMDControlController<IDEDataView, IDataViewControlState, IDataViewControlEvent>}
11
11
  */
12
12
  export interface IKanbanController extends IDataViewControlController<IDEKanban, IKanbanState, IKanbanEvent> {
13
+ /**
14
+ * 是否全屏
15
+ *
16
+ * @return {*} {boolean}
17
+ * @memberof IKanbanController
18
+ */
19
+ getFullscreen(): boolean;
20
+ /**
21
+ * 全屏
22
+ *
23
+ * @param {IData} container
24
+ * @memberof IKanbanController
25
+ */
26
+ onFullScreen(container: IData): boolean;
27
+ /**
28
+ * 打开对应分组批操作工具栏
29
+ *
30
+ * @param {string | number} groupKey
31
+ * @memberof IKanbanController
32
+ */
33
+ openBatch(groupKey: string | number): void;
34
+ /**
35
+ * 关闭批操作工具栏
36
+ *
37
+ * @memberof IKanbanController
38
+ */
39
+ closeBatch(): void;
13
40
  }
14
41
  //# sourceMappingURL=i-kanban.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i-kanban.controller.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/control/i-kanban.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,WAAW,iBACf,SAAQ,0BAA0B,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC;CAAG"}
1
+ {"version":3,"file":"i-kanban.controller.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/control/i-kanban.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,WAAW,iBACf,SAAQ,0BAA0B,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC;IACzE;;;;;OAKG;IACH,aAAa,IAAI,OAAO,CAAC;IACzB;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,CAAC;IAExC;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAE3C;;;;OAIG;IACH,UAAU,IAAI,IAAI,CAAC;CACpB"}
@@ -18,7 +18,7 @@ export interface ITreeController extends IMDControlController<IDETree, ITreeStat
18
18
  * @returns {*} {Promise<void>}
19
19
  * @memberof ITreeController
20
20
  */
21
- onTreeNodeClick(nodeData: ITreeNodeData): Promise<void>;
21
+ onTreeNodeClick(nodeData: ITreeNodeData, event: MouseEvent): Promise<void>;
22
22
  /**
23
23
  * 树节点双击事件
24
24
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"i-tree.controller.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/control/i-tree.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;;;;;GAOG;AACH,MAAM,WAAW,eACf,SAAQ,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;IAC7D;;;;;;OAMG;IACH,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;;OAKG;IACH,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D;;;;;;;;;;OAUG;IACH,UAAU,CACR,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,mBAAmB,CACjB,QAAQ,EAAE,aAAa,GAAG,KAAK,EAC/B,aAAa,CAAC,EAAE,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;OAMG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD"}
1
+ {"version":3,"file":"i-tree.controller.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/control/i-tree.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;;;;;GAOG;AACH,MAAM,WAAW,eACf,SAAQ,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;IAC7D;;;;;;OAMG;IACH,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3E;;;;;OAKG;IACH,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D;;;;;;;;;;OAUG;IACH,UAAU,CACR,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,mBAAmB,CACjB,QAAQ,EAAE,aAAa,GAAG,KAAK,EAC/B,aAAa,CAAC,EAAE,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;OAMG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD"}
@@ -42,6 +42,29 @@ export interface IGanttState extends IMDControlState {
42
42
  * @type {string}
43
43
  */
44
44
  placeHolder: string;
45
+ /**
46
+ * 甘特图样式
47
+ *
48
+ * @type {IGanttStyle}
49
+ * @memberof IGanttState
50
+ */
51
+ ganttStyle: IGanttStyle;
52
+ }
53
+ export interface IGanttStyle {
54
+ /**
55
+ * 主题色
56
+ *
57
+ * @type {string}
58
+ * @memberof IGanttStyle
59
+ */
60
+ primaryColor?: string;
61
+ /**
62
+ * 文本色
63
+ *
64
+ * @type {string}
65
+ * @memberof IGanttStyle
66
+ */
67
+ textColor?: string;
45
68
  }
46
69
  /**
47
70
  * 甘特图节点数据格式
@@ -1 +1 @@
1
- {"version":3,"file":"i-gantt.state.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/state/control/i-gantt.state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB;;;;;OAKG;IACH,YAAY,EAAE,YAAY,EAAE,CAAC;IAE7B;;;;;OAKG;IACH,SAAS,EAAE,cAAc,EAAE,CAAC;IAE5B;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC;;;;;;OAMG;IACH,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAAC;IAErC;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;IAExC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB"}
1
+ {"version":3,"file":"i-gantt.state.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/state/control/i-gantt.state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB;;;;;OAKG;IACH,YAAY,EAAE,YAAY,EAAE,CAAC;IAE7B;;;;;OAKG;IACH,SAAS,EAAE,cAAc,EAAE,CAAC;IAE5B;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,EAAE,WAAW,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC;;;;;;OAMG;IACH,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAAC;IAErC;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;IAExC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB"}
@@ -1,3 +1,4 @@
1
+ import { IToolbarController } from '../../controller';
1
2
  import { IDataViewControlState } from './i-data-view-control.state';
2
3
  import { IMDControlGroupState } from './i-md-control.state';
3
4
  /**
@@ -22,6 +23,13 @@ export interface IKanbanState extends IDataViewControlState {
22
23
  * @type {boolean}
23
24
  */
24
25
  updating: boolean;
26
+ /**
27
+ * 是否正在批操作
28
+ *
29
+ * @type {boolean}
30
+ * @memberof IKanbanState
31
+ */
32
+ batching: boolean;
25
33
  /**
26
34
  * 分组数据
27
35
  *
@@ -29,6 +37,13 @@ export interface IKanbanState extends IDataViewControlState {
29
37
  * @memberof IKanbanState
30
38
  */
31
39
  groups: IKanbanGroupState[];
40
+ /**
41
+ * 选中分组标识
42
+ *
43
+ * @type {string | number}
44
+ * @memberof IKanbanState
45
+ */
46
+ selectGroupKey: string | number;
32
47
  }
33
48
  /**
34
49
  * 看板部件分组数据
@@ -45,5 +60,19 @@ export interface IKanbanGroupState extends IMDControlGroupState {
45
60
  * @memberof IKanbanGroupState
46
61
  */
47
62
  color?: string;
63
+ /**
64
+ * 快速工具栏控制器
65
+ *
66
+ * @type {IToolbarController}
67
+ * @memberof IKanbanGroupState
68
+ */
69
+ quickToolbarController?: IToolbarController;
70
+ /**
71
+ * 批操作工具栏控制器
72
+ *
73
+ * @type {IToolbarController}
74
+ * @memberof IKanbanGroupState
75
+ */
76
+ batchToolbarController?: IToolbarController;
48
77
  }
49
78
  //# sourceMappingURL=i-kanban.state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i-kanban.state.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/state/control/i-kanban.state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;;;GAMG;AACH,MAAM,WAAW,YAAa,SAAQ,qBAAqB;IACzD;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"i-kanban.state.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/state/control/i-kanban.state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;;;GAMG;AACH,MAAM,WAAW,YAAa,SAAQ,qBAAqB;IACzD;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAE5B;;;;;OAKG;IACH,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,kBAAkB,CAAC;IAE5C;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,kBAAkB,CAAC;CAC7C"}
@@ -1,6 +1,5 @@
1
1
  import { IDEGridColumn } from '@ibiz/model-core';
2
- import { GanttController, TreeGridExController } from '../../controller';
3
- import { IGridColumnController, IGridController } from '../controller';
2
+ import { IGanttController, IGridColumnController, IGridController, ITreeGridExController } from '../controller';
4
3
  /**
5
4
  * 表格列适配器的接口
6
5
  *
@@ -27,6 +26,6 @@ export interface IGridColumnProvider {
27
26
  * @param {GridController} grid 表格控制器
28
27
  * @returns {*} {Promise<GridColumnController>}
29
28
  */
30
- createController(columnModel: IDEGridColumn, grid: IGridController | TreeGridExController | GanttController): Promise<IGridColumnController>;
29
+ createController(columnModel: IDEGridColumn, grid: IGridController | ITreeGridExController | IGanttController): Promise<IGridColumnController>;
31
30
  }
32
31
  //# sourceMappingURL=i-grid-column.provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i-grid-column.provider.d.ts","sourceRoot":"","sources":["../../../src/interface/provider/i-grid-column.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEvE;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;;OAMG;IAEH,SAAS,EAAE,GAAG,CAAC;IAEf;;;;;;;;OAQG;IACH,gBAAgB,CACd,WAAW,EAAE,aAAa,EAC1B,IAAI,EAAE,eAAe,GAAG,oBAAoB,GAAG,eAAe,GAE7D,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnC"}
1
+ {"version":3,"file":"i-grid-column.provider.d.ts","sourceRoot":"","sources":["../../../src/interface/provider/i-grid-column.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACtB,MAAM,eAAe,CAAC;AAEvB;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;;OAMG;IAEH,SAAS,EAAE,GAAG,CAAC;IAEf;;;;;;;;OAQG;IACH,gBAAgB,CACd,WAAW,EAAE,aAAa,EAC1B,IAAI,EAAE,eAAe,GAAG,qBAAqB,GAAG,gBAAgB,GAE/D,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnC"}
@@ -8,4 +8,5 @@ export * from './grid/index';
8
8
  export * from './form/index';
9
9
  export * from './view/view';
10
10
  export * from './panel/index';
11
+ export * from './toolbar/toolbar';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC"}
@@ -8,3 +8,4 @@ export * from './grid/index';
8
8
  export * from './form/index';
9
9
  export * from './view/view';
10
10
  export * from './panel/index';
11
+ export * from './toolbar/toolbar';
@@ -0,0 +1,12 @@
1
+ import { IDETBUIActionItem, IDEToolbar } from '@ibiz/model-core';
2
+ /**
3
+ * 获取工具栏里面指定行为级别的界面行为项
4
+ * @author lxm
5
+ * @date 2023-12-19 03:07:51
6
+ * @export
7
+ * @param {IDEToolbar} toolbar 工具栏
8
+ * @param {number} actionLevel 行为级别 {50:不常用、 100:一般操作、 200:常用操作、 250:关键操作 }
9
+ * @return {*} {IDETBUIActionItem[]}
10
+ */
11
+ export declare function getUIActionItemsByActionLevel(toolbar: IDEToolbar, actionLevel: number): IDETBUIActionItem[];
12
+ //# sourceMappingURL=toolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../src/model/toolbar/toolbar.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,UAAU,EAEX,MAAM,kBAAkB,CAAC;AAE1B;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,UAAU,EACnB,WAAW,EAAE,MAAM,GAClB,iBAAiB,EAAE,CAerB"}
@@ -0,0 +1,22 @@
1
+ import { recursiveIterate } from '@ibiz-template/core';
2
+ /**
3
+ * 获取工具栏里面指定行为级别的界面行为项
4
+ * @author lxm
5
+ * @date 2023-12-19 03:07:51
6
+ * @export
7
+ * @param {IDEToolbar} toolbar 工具栏
8
+ * @param {number} actionLevel 行为级别 {50:不常用、 100:一般操作、 200:常用操作、 250:关键操作 }
9
+ * @return {*} {IDETBUIActionItem[]}
10
+ */
11
+ export function getUIActionItemsByActionLevel(toolbar, actionLevel) {
12
+ const result = [];
13
+ recursiveIterate(toolbar, (item) => {
14
+ if (item.itemType === 'DEUIACTION') {
15
+ const uiItem = item;
16
+ if (uiItem.actionLevel === actionLevel) {
17
+ result.push(uiItem);
18
+ }
19
+ }
20
+ }, { childrenFields: ['detoolbarItems'] });
21
+ return result;
22
+ }
@@ -91,7 +91,7 @@ export class MethodDto {
91
91
  const dto = await this.getFieldDto(field);
92
92
  const service = await this.app.deService.getService(field.refAppDataEntityId);
93
93
  const items = await service.selectLocal(context, {
94
- srfpkey: data[this.entity.keyAppDEFieldId],
94
+ // srfpkey: data[this.entity.keyAppDEFieldId!],
95
95
  });
96
96
  if (items) {
97
97
  const arr = [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/runtime",
3
- "version": "0.4.13",
3
+ "version": "0.4.15",
4
4
  "description": "控制器包",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -30,7 +30,7 @@
30
30
  "license": "MIT",
31
31
  "devDependencies": {
32
32
  "@ibiz-template/core": "^0.4.12",
33
- "@ibiz/model-core": "^0.0.27",
33
+ "@ibiz/model-core": "^0.0.28",
34
34
  "@types/path-browserify": "^1.0.2",
35
35
  "@types/qs": "^6.9.10",
36
36
  "@types/systemjs": "^6.13.5",
@@ -47,7 +47,7 @@
47
47
  },
48
48
  "peerDependencies": {
49
49
  "@ibiz-template/core": "^0.4.0",
50
- "@ibiz/model-core": "^0.0.27",
50
+ "@ibiz/model-core": "^0.0.28",
51
51
  "async-validator": "^4.2.5",
52
52
  "dayjs": "^1.11.7",
53
53
  "echarts": "^5.4.3",
@@ -59,5 +59,5 @@
59
59
  "qx-util": "^0.4.8",
60
60
  "ramda": "^0.29.0"
61
61
  },
62
- "gitHead": "f0dbdad04a472e40eeb8bc2073d6e6c1120b720b"
62
+ "gitHead": "6d9696266fe07f6a154cf6959914b640a1e7c4e8"
63
63
  }