@ibiz-template/runtime 0.4.13 → 0.4.14

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 (36) hide show
  1. package/dist/index.esm.js +139 -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/tree/tree.controller.d.ts +15 -2
  16. package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
  17. package/out/controller/control/tree/tree.controller.js +32 -2
  18. package/out/interface/controller/controller/control/i-tree.controller.d.ts +1 -1
  19. package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -1
  20. package/out/model/index.d.ts +1 -0
  21. package/out/model/index.d.ts.map +1 -1
  22. package/out/model/index.js +1 -0
  23. package/out/model/toolbar/toolbar.d.ts +12 -0
  24. package/out/model/toolbar/toolbar.d.ts.map +1 -0
  25. package/out/model/toolbar/toolbar.js +22 -0
  26. package/out/service/dto/method.dto.js +1 -1
  27. package/package.json +2 -2
  28. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts +27 -3
  29. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.ts +26 -2
  30. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts +0 -11
  31. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts +11 -0
  32. package/src/controller/control/tree/tree.controller.ts +46 -3
  33. package/src/interface/controller/controller/control/i-tree.controller.ts +1 -1
  34. package/src/model/index.ts +1 -0
  35. package/src/model/toolbar/toolbar.ts +35 -0
  36. package/src/service/dto/method.dto.ts +1 -1
@@ -22,6 +22,12 @@ export declare class FormMDCtrlFormController extends FormMDCtrlController {
22
22
  * @type {FormMDCtrlFormState}
23
23
  */
24
24
  state: FormMDCtrlFormState;
25
+ /**
26
+ * 忽略下一次自身对应表单项数据变更
27
+ * @author lxm
28
+ * @date 2023-12-19 11:47:21
29
+ */
30
+ ignoreNextSelfChange: boolean;
25
31
  protected createState(): FormMDCtrlFormState;
26
32
  /**
27
33
  * 表单控制器Map
@@ -99,5 +105,12 @@ export declare class FormMDCtrlFormController extends FormMDCtrlController {
99
105
  create(index?: number): void;
100
106
  refresh(): void;
101
107
  dataChangeNotify(names: string[]): Promise<void>;
108
+ /**
109
+ * 通知表单多数据部件对应的表单项数据变更
110
+ * @author lxm
111
+ * @date 2023-12-19 11:46:13
112
+ * @protected
113
+ */
114
+ protected notifyFormDataChange(): void;
102
115
  }
103
116
  //# sourceMappingURL=form-mdctrl-form.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-mdctrl-form.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,wBAAyB,SAAQ,oBAAoB;IAChE;;;;;;OAMG;IACK,KAAK,EAAE,mBAAmB,CAAC;IAEnC,SAAS,CAAC,WAAW,IAAI,mBAAmB;IAI5C;;;;OAIG;IACH,OAAO,mCAA0C;IAEjD;;;;;;OAMG;IACH,YAAY,EAAG,gBAAgB,CAAC;IAEhC;;;;;OAKG;IACH,OAAO,EAAG,eAAe,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,EAAG,MAAM,CAAC;IAEhB;;;;;;;;OAQG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB7B;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBhC;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI;IAoBpE;;;;;;OAMG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvC;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAkB5B,OAAO,IAAI,IAAI;IAIT,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAQvD"}
1
+ {"version":3,"file":"form-mdctrl-form.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,wBAAyB,SAAQ,oBAAoB;IAChE;;;;;;OAMG;IACK,KAAK,EAAE,mBAAmB,CAAC;IAEnC;;;;OAIG;IACH,oBAAoB,UAAS;IAE7B,SAAS,CAAC,WAAW,IAAI,mBAAmB;IAI5C;;;;OAIG;IACH,OAAO,mCAA0C;IAEjD;;;;;;OAMG;IACH,YAAY,EAAG,gBAAgB,CAAC;IAEhC;;;;;OAKG;IACH,OAAO,EAAG,eAAe,CAAC;IAE1B;;;;;OAKG;IACH,MAAM,EAAG,MAAM,CAAC;IAEhB;;;;;;;;OAQG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB7B;;;;;OAKG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBhC;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI;IAoBpE;;;;;;OAMG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvC;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAkB5B,OAAO,IAAI,IAAI;IAIT,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IActD;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,IAAI,IAAI;CAKvC"}
@@ -17,6 +17,12 @@ import { FormMDCtrlController } from './form-mdctrl.controller';
17
17
  export class FormMDCtrlFormController extends FormMDCtrlController {
18
18
  constructor() {
19
19
  super(...arguments);
20
+ /**
21
+ * 忽略下一次自身对应表单项数据变更
22
+ * @author lxm
23
+ * @date 2023-12-19 11:47:21
24
+ */
25
+ this.ignoreNextSelfChange = false;
20
26
  /**
21
27
  * 表单控制器Map
22
28
  * @author lxm
@@ -87,7 +93,7 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
87
93
  */
88
94
  async formStateNotify(state) {
89
95
  await super.formStateNotify(state);
90
- await this.fetchData();
96
+ await this.refresh();
91
97
  }
92
98
  /**
93
99
  * 设置表单控制器
@@ -107,10 +113,10 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
107
113
  item.context[this.deName] = formData.srfkey;
108
114
  }
109
115
  }
110
- this.updateFormItem();
116
+ this.notifyFormDataChange();
111
117
  });
112
118
  controller.evt.on('onRemoveSuccess', () => {
113
- this.updateFormItem();
119
+ this.notifyFormDataChange();
114
120
  });
115
121
  }
116
122
  /**
@@ -158,10 +164,25 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
158
164
  this.fetchData();
159
165
  }
160
166
  async dataChangeNotify(names) {
167
+ if (names.includes(this.model.id) && this.ignoreNextSelfChange) {
168
+ this.ignoreNextSelfChange = false;
169
+ return;
170
+ }
161
171
  await super.dataChangeNotify(names);
162
172
  // 表单项更新的时候修改数据的时候需要刷新
163
173
  if (names.includes(this.model.id)) {
164
174
  this.refresh();
165
175
  }
166
176
  }
177
+ /**
178
+ * 通知表单多数据部件对应的表单项数据变更
179
+ * @author lxm
180
+ * @date 2023-12-19 11:46:13
181
+ * @protected
182
+ */
183
+ notifyFormDataChange() {
184
+ this.updateFormItem();
185
+ this.ignoreNextSelfChange = true;
186
+ this.form.dataChangeNotify([this.name]);
187
+ }
167
188
  }
@@ -27,6 +27,12 @@ export declare class FormMDCtrlMDController extends FormMDCtrlController {
27
27
  * @type {IMDControlController}
28
28
  */
29
29
  mdController: IMDControlController;
30
+ /**
31
+ * 忽略下一次自身对应表单项数据变更
32
+ * @author lxm
33
+ * @date 2023-12-19 11:47:21
34
+ */
35
+ ignoreNextSelfChange: boolean;
30
36
  /**
31
37
  * 表单项名称
32
38
  *
@@ -65,5 +71,12 @@ export declare class FormMDCtrlMDController extends FormMDCtrlController {
65
71
  */
66
72
  formStateNotify(state: FormNotifyState): Promise<void>;
67
73
  dataChangeNotify(names: string[]): Promise<void>;
74
+ /**
75
+ * 通知表单多数据部件对应的表单项数据变更
76
+ * @author lxm
77
+ * @date 2023-12-19 11:46:13
78
+ * @protected
79
+ */
80
+ protected notifyFormDataChange(): void;
68
81
  }
69
82
  //# sourceMappingURL=form-mdctrl-md.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-mdctrl-md.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAEhB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;;;;;;GASG;AACH,qBAAa,sBAAuB,SAAQ,oBAAoB;IAC9D;;;;;;OAMG;IACH,UAAU,EAAG,gBAAgB,CAAC;IAE9B;;;;;OAKG;IACH,YAAY,EAAG,oBAAoB,CAAC;IAEpC;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;cAEe,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBvC;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,oBAAoB,GAAG,IAAI;IAYpD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAM/B;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAId;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAWd,OAAO,IAAI,IAAI;IAQf;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAQvD"}
1
+ {"version":3,"file":"form-mdctrl-md.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,gBAAgB,EAEhB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;;;;;;GASG;AACH,qBAAa,sBAAuB,SAAQ,oBAAoB;IAC9D;;;;;;OAMG;IACH,UAAU,EAAG,gBAAgB,CAAC;IAE9B;;;;;OAKG;IACH,YAAY,EAAG,oBAAoB,CAAC;IAEpC;;;;OAIG;IACH,oBAAoB,UAAS;IAE7B;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;cAEe,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBvC;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,oBAAoB,GAAG,IAAI;IAYpD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAM/B;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAId;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAWd,OAAO,IAAI,IAAI;IAQf;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IActD;;;;;OAKG;IACH,SAAS,CAAC,oBAAoB,IAAI,IAAI;CAKvC"}
@@ -12,6 +12,15 @@ import { FormMDCtrlController } from './form-mdctrl.controller';
12
12
  * @extends {FormDetailController<IDEFormMDCtrl>}
13
13
  */
14
14
  export class FormMDCtrlMDController extends FormMDCtrlController {
15
+ constructor() {
16
+ super(...arguments);
17
+ /**
18
+ * 忽略下一次自身对应表单项数据变更
19
+ * @author lxm
20
+ * @date 2023-12-19 11:47:21
21
+ */
22
+ this.ignoreNextSelfChange = false;
23
+ }
15
24
  /**
16
25
  * 表单项名称
17
26
  *
@@ -50,10 +59,10 @@ export class FormMDCtrlMDController extends FormMDCtrlController {
50
59
  this.mdController = controller;
51
60
  // 多数据部件保存,删除之后触发表单项更新
52
61
  controller.evt.on('onSaveSuccess', () => {
53
- this.updateFormItem();
62
+ this.notifyFormDataChange();
54
63
  });
55
64
  controller.evt.on('onRemoveSuccess', () => {
56
- this.updateFormItem();
65
+ this.notifyFormDataChange();
57
66
  });
58
67
  }
59
68
  updateFormItem() {
@@ -101,10 +110,25 @@ export class FormMDCtrlMDController extends FormMDCtrlController {
101
110
  this.refresh();
102
111
  }
103
112
  async dataChangeNotify(names) {
113
+ if (names.includes(this.model.id) && this.ignoreNextSelfChange) {
114
+ this.ignoreNextSelfChange = false;
115
+ return;
116
+ }
104
117
  await super.dataChangeNotify(names);
105
118
  // 表单项更新的时候修改数据的时候需要刷新
106
119
  if (names.includes(this.model.id)) {
107
120
  this.refresh();
108
121
  }
109
122
  }
123
+ /**
124
+ * 通知表单多数据部件对应的表单项数据变更
125
+ * @author lxm
126
+ * @date 2023-12-19 11:46:13
127
+ * @protected
128
+ */
129
+ notifyFormDataChange() {
130
+ this.updateFormItem();
131
+ this.ignoreNextSelfChange = true;
132
+ this.form.dataChangeNotify([this.name]);
133
+ }
110
134
  }
@@ -11,14 +11,6 @@ import { FormMDCtrlController } from './form-mdctrl.controller';
11
11
  * @extends {FormDetailController<IDEFormMDCtrl>}
12
12
  */
13
13
  export declare class FormMDCtrlRepeaterController extends FormMDCtrlController {
14
- /**
15
- * 名称
16
- * @author lxm
17
- * @date 2023-11-22 03:31:02
18
- * @readonly
19
- * @type {string}
20
- */
21
- get name(): string;
22
14
  /**
23
15
  * 多数据重复器对应的表单里的值
24
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"form-mdctrl-repeater.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,4BAA6B,SAAQ,oBAAoB;IACpE;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;;OAOG;IACH,IAAI,KAAK,IAAI,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,CAElC;IAED;;;;;OAKG;IACH,aAAa,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,CAAe;IAEjE;;;;;OAKG;IACH,YAAY,EAAE,OAAO,CAAS;IAE9B;;;;;OAKG;IACH,YAAY,EAAG,OAAO,CAAC;cAEP,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BvC;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IA+B3B;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI;IAI7C;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAgB5B;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAa5B;;;;;;;OAOG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAsBvD"}
1
+ {"version":3,"file":"form-mdctrl-repeater.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,4BAA6B,SAAQ,oBAAoB;IACpE;;;;;;;OAOG;IACH,IAAI,KAAK,IAAI,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,CAElC;IAED;;;;;OAKG;IACH,aAAa,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,CAAe;IAEjE;;;;;OAKG;IACH,YAAY,EAAE,OAAO,CAAS;IAE9B;;;;;OAKG;IACH,YAAY,EAAG,OAAO,CAAC;cAEP,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BvC;;;;OAIG;IACH,mBAAmB,IAAI,IAAI;IA+B3B;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI;IAI7C;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAgB5B;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAa5B;;;;;;;OAOG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAsBvD"}
@@ -29,16 +29,6 @@ export class FormMDCtrlRepeaterController extends FormMDCtrlController {
29
29
  */
30
30
  this.isSingleData = false;
31
31
  }
32
- /**
33
- * 名称
34
- * @author lxm
35
- * @date 2023-11-22 03:31:02
36
- * @readonly
37
- * @type {string}
38
- */
39
- get name() {
40
- return this.model.id;
41
- }
42
32
  /**
43
33
  * 多数据重复器对应的表单里的值
44
34
  *
@@ -10,6 +10,14 @@ import { FormDetailController } from '../form-detail';
10
10
  * @extends {FormDetailController<IDEFormMDCtrl>}
11
11
  */
12
12
  export declare class FormMDCtrlController extends FormDetailController<IDEFormMDCtrl> {
13
+ /**
14
+ * 名称
15
+ * @author lxm
16
+ * @date 2023-11-22 03:31:02
17
+ * @readonly
18
+ * @type {string}
19
+ */
20
+ get name(): string;
13
21
  /**
14
22
  * 上下文
15
23
  *
@@ -1 +1 @@
1
- {"version":3,"file":"form-mdctrl.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;;;;;;;GAQG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB,CAAC,aAAa,CAAC;IAC3E;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED;;;;;;OAMG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;;;;OAOG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;;OAOG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;OAMG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrC;;;;OAIG;IACH,OAAO,IAAI,IAAI;IAIf;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;CAInC"}
1
+ {"version":3,"file":"form-mdctrl.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;;;;;;;GAQG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB,CAAC,aAAa,CAAC;IAC3E;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED;;;;;;OAMG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;;;;OAOG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;;OAOG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;OAMG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrC;;;;OAIG;IACH,OAAO,IAAI,IAAI;IAIf;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;CAInC"}
@@ -10,6 +10,16 @@ import { FormDetailController } from '../form-detail';
10
10
  * @extends {FormDetailController<IDEFormMDCtrl>}
11
11
  */
12
12
  export class FormMDCtrlController extends FormDetailController {
13
+ /**
14
+ * 名称
15
+ * @author lxm
16
+ * @date 2023-11-22 03:31:02
17
+ * @readonly
18
+ * @type {string}
19
+ */
20
+ get name() {
21
+ return this.model.id;
22
+ }
13
23
  /**
14
24
  * 上下文
15
25
  *
@@ -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);
@@ -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"}
@@ -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.14",
4
4
  "description": "控制器包",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -59,5 +59,5 @@
59
59
  "qx-util": "^0.4.8",
60
60
  "ramda": "^0.29.0"
61
61
  },
62
- "gitHead": "f0dbdad04a472e40eeb8bc2073d6e6c1120b720b"
62
+ "gitHead": "91452a20d49f1b3368ad0867afe9e1b1cdf3ec0d"
63
63
  }
@@ -32,6 +32,13 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
32
32
  */
33
33
  declare state: FormMDCtrlFormState;
34
34
 
35
+ /**
36
+ * 忽略下一次自身对应表单项数据变更
37
+ * @author lxm
38
+ * @date 2023-12-19 11:47:21
39
+ */
40
+ ignoreNextSelfChange = false;
41
+
35
42
  protected createState(): FormMDCtrlFormState {
36
43
  return new FormMDCtrlFormState(this.parent?.state);
37
44
  }
@@ -133,7 +140,7 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
133
140
  */
134
141
  async formStateNotify(state: FormNotifyState): Promise<void> {
135
142
  await super.formStateNotify(state);
136
- await this.fetchData();
143
+ await this.refresh();
137
144
  }
138
145
 
139
146
  /**
@@ -156,10 +163,10 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
156
163
  item.context[this.deName] = formData.srfkey;
157
164
  }
158
165
  }
159
- this.updateFormItem();
166
+ this.notifyFormDataChange();
160
167
  });
161
168
  controller.evt.on('onRemoveSuccess', () => {
162
- this.updateFormItem();
169
+ this.notifyFormDataChange();
163
170
  });
164
171
  }
165
172
 
@@ -210,6 +217,11 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
210
217
  }
211
218
 
212
219
  async dataChangeNotify(names: string[]): Promise<void> {
220
+ if (names.includes(this.model.id!) && this.ignoreNextSelfChange) {
221
+ this.ignoreNextSelfChange = false;
222
+ return;
223
+ }
224
+
213
225
  await super.dataChangeNotify(names);
214
226
 
215
227
  // 表单项更新的时候修改数据的时候需要刷新
@@ -217,4 +229,16 @@ export class FormMDCtrlFormController extends FormMDCtrlController {
217
229
  this.refresh();
218
230
  }
219
231
  }
232
+
233
+ /**
234
+ * 通知表单多数据部件对应的表单项数据变更
235
+ * @author lxm
236
+ * @date 2023-12-19 11:46:13
237
+ * @protected
238
+ */
239
+ protected notifyFormDataChange(): void {
240
+ this.updateFormItem();
241
+ this.ignoreNextSelfChange = true;
242
+ this.form.dataChangeNotify([this.name]);
243
+ }
220
244
  }
@@ -40,6 +40,13 @@ export class FormMDCtrlMDController extends FormMDCtrlController {
40
40
  */
41
41
  mdController!: IMDControlController;
42
42
 
43
+ /**
44
+ * 忽略下一次自身对应表单项数据变更
45
+ * @author lxm
46
+ * @date 2023-12-19 11:47:21
47
+ */
48
+ ignoreNextSelfChange = false;
49
+
43
50
  /**
44
51
  * 表单项名称
45
52
  *
@@ -83,10 +90,10 @@ export class FormMDCtrlMDController extends FormMDCtrlController {
83
90
 
84
91
  // 多数据部件保存,删除之后触发表单项更新
85
92
  controller.evt.on('onSaveSuccess', () => {
86
- this.updateFormItem();
93
+ this.notifyFormDataChange();
87
94
  });
88
95
  controller.evt.on('onRemoveSuccess', () => {
89
- this.updateFormItem();
96
+ this.notifyFormDataChange();
90
97
  });
91
98
  }
92
99
 
@@ -141,6 +148,11 @@ export class FormMDCtrlMDController extends FormMDCtrlController {
141
148
  }
142
149
 
143
150
  async dataChangeNotify(names: string[]): Promise<void> {
151
+ if (names.includes(this.model.id!) && this.ignoreNextSelfChange) {
152
+ this.ignoreNextSelfChange = false;
153
+ return;
154
+ }
155
+
144
156
  await super.dataChangeNotify(names);
145
157
 
146
158
  // 表单项更新的时候修改数据的时候需要刷新
@@ -148,4 +160,16 @@ export class FormMDCtrlMDController extends FormMDCtrlController {
148
160
  this.refresh();
149
161
  }
150
162
  }
163
+
164
+ /**
165
+ * 通知表单多数据部件对应的表单项数据变更
166
+ * @author lxm
167
+ * @date 2023-12-19 11:46:13
168
+ * @protected
169
+ */
170
+ protected notifyFormDataChange(): void {
171
+ this.updateFormItem();
172
+ this.ignoreNextSelfChange = true;
173
+ this.form.dataChangeNotify([this.name]);
174
+ }
151
175
  }
@@ -14,17 +14,6 @@ import { FormMDCtrlController } from './form-mdctrl.controller';
14
14
  * @extends {FormDetailController<IDEFormMDCtrl>}
15
15
  */
16
16
  export class FormMDCtrlRepeaterController extends FormMDCtrlController {
17
- /**
18
- * 名称
19
- * @author lxm
20
- * @date 2023-11-22 03:31:02
21
- * @readonly
22
- * @type {string}
23
- */
24
- get name(): string {
25
- return this.model.id!;
26
- }
27
-
28
17
  /**
29
18
  * 多数据重复器对应的表单里的值
30
19
  *
@@ -12,6 +12,17 @@ import { FormDetailController } from '../form-detail';
12
12
  * @extends {FormDetailController<IDEFormMDCtrl>}
13
13
  */
14
14
  export class FormMDCtrlController extends FormDetailController<IDEFormMDCtrl> {
15
+ /**
16
+ * 名称
17
+ * @author lxm
18
+ * @date 2023-11-22 03:31:02
19
+ * @readonly
20
+ * @type {string}
21
+ */
22
+ get name(): string {
23
+ return this.model.id!;
24
+ }
25
+
15
26
  /**
16
27
  * 上下文
17
28
  *