@ibiz-template/runtime 0.1.31 → 0.1.32

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.
@@ -17,6 +17,10 @@ export declare enum ViewCallTag {
17
17
  /**
18
18
  * 获取所有数据(多数据专用,获取全部数据)
19
19
  */
20
- 'GET_ALL_DATA' = "GetAllData"
20
+ 'GET_ALL_DATA' = "GetAllData",
21
+ /**
22
+ * 校验数据(编辑视图才用)
23
+ */
24
+ 'VALIDATE' = "Validate"
21
25
  }
22
26
  //# sourceMappingURL=view-call-tag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view-call-tag.d.ts","sourceRoot":"","sources":["../../src/constant/view-call-tag.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AACH,oBAAY,WAAW;IACrB;;OAEG;IACH,MAAM,SAAS;IACf;;OAEG;IACH,UAAU,YAAY;IACtB;;OAEG;IACH,cAAc,eAAe;CAC9B"}
1
+ {"version":3,"file":"view-call-tag.d.ts","sourceRoot":"","sources":["../../src/constant/view-call-tag.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AACH,oBAAY,WAAW;IACrB;;OAEG;IACH,MAAM,SAAS;IACf;;OAEG;IACH,UAAU,YAAY;IACtB;;OAEG;IACH,cAAc,eAAe;IAC7B;;OAEG;IACH,UAAU,aAAa;CACxB"}
@@ -20,4 +20,8 @@ export var ViewCallTag;
20
20
  * 获取所有数据(多数据专用,获取全部数据)
21
21
  */
22
22
  ViewCallTag["GET_ALL_DATA"] = "GetAllData";
23
+ /**
24
+ * 校验数据(编辑视图才用)
25
+ */
26
+ ViewCallTag["VALIDATE"] = "Validate";
23
27
  })(ViewCallTag || (ViewCallTag = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"grid-field-column.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAIpE,OAAO,EAAE,YAAY,EAAc,MAAM,0BAA0B,CAAC;AAKpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;;GAKG;AACH,qBAAa,yBAA0B,SAAQ,oBAAoB,CAAC,kBAAkB,CAAC;IACrF;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAExC;;;;;OAKG;IACH,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAa;IAE/C;;;;;;OAMG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;;OAOG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;;;;OAMG;IACH,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO;IAKrC;;;;;OAKG;IACI,kBAAkB,CACvB,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,OAAO,GACd;QAAE,OAAO,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE;IAoBzC;;;;;;;;OAQG;IACG,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCvE;;;;;;;;OAQG;IACG,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxE;;;;;;OAMG;IACG,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,GAAG,SAAS,CAAC;IAqBnE;;;;;;;OAOG;IACH,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,GAAG,SAAS;IAiEhD;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,GAAE,OAAY,GAAG,MAAM;CAiBzC"}
1
+ {"version":3,"file":"grid-field-column.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAIpE,OAAO,EAAE,YAAY,EAAc,MAAM,0BAA0B,CAAC;AAKpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;;GAKG;AACH,qBAAa,yBAA0B,SAAQ,oBAAoB,CAAC,kBAAkB,CAAC;IACrF;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAExC;;;;;OAKG;IACH,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAa;IAE/C;;;;;;OAMG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;;OAOG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;;;;OAMG;IACH,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO;IAKrC;;;;;OAKG;IACI,kBAAkB,CACvB,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,OAAO,GACd;QAAE,OAAO,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE;IAoBzC;;;;;;;;OAQG;IACG,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCvE;;;;;;;;OAQG;IACG,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxE;;;;;;OAMG;IACG,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,GAAG,SAAS,CAAC;IAqBnE;;;;;;;OAOG;IACH,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,GAAG,SAAS;IAqEhD;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,GAAE,OAAY,GAAG,MAAM;CAiBzC"}
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable @typescript-eslint/no-unused-vars */
2
2
  import { DataTypes, ModelError } from '@ibiz-template/core';
3
3
  import dayjs from 'dayjs';
4
- import { clone } from 'ramda';
4
+ import { clone, isNil } from 'ramda';
5
5
  import { OpenAppViewCommand } from '../../../../../command';
6
6
  import { parseUserParams } from '../../../../../model';
7
7
  import { UIActionUtil } from '../../../../../ui-action';
@@ -171,6 +171,8 @@ export class GridFieldColumnController extends GridColumnController {
171
171
  return;
172
172
  }
173
173
  const fieldName = aggField || this.model.id;
174
+ // 排除属性无值的数据,不纳入统计
175
+ items = items.filter(item => !isNil(item[fieldName]));
174
176
  let aggValue;
175
177
  if (this.grid.model.aggMode === 'PAGE') {
176
178
  switch (aggMode) {
@@ -37,5 +37,12 @@ export interface CodeListItem {
37
37
  * @type {string}
38
38
  */
39
39
  textCls?: string;
40
+ /**
41
+ * 禁止选择
42
+ * @author lxm
43
+ * @date 2023-10-08 03:49:40
44
+ * @type {boolean}
45
+ */
46
+ disableSelect?: boolean;
40
47
  }
41
48
  //# sourceMappingURL=code-list-item.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"code-list-item.d.ts","sourceRoot":"","sources":["../../../../src/interface/service/code-list-item/code-list-item.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAE1B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"code-list-item.d.ts","sourceRoot":"","sources":["../../../../src/interface/service/code-list-item/code-list-item.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAE1B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-list.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/code-list/code-list.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;;;;;;;GAOG;AACH,qBAAa,eAAe;IAoBd,SAAS,CAAC,QAAQ,EAAE,YAAY;IAnB5C;;;;;OAKG;IACH,SAAS,CAAC,YAAY,4BAAmC;IAEzD;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,oBAAoB,CAAC,CAChE;gBAEU,QAAQ,EAAE,YAAY;IAE5C;;;;;;;OAOG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE;IAc3D;;;;;;;;OAQG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAMzC;;;;;;;;OAQG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIlD;;;;;;;;;OASG;IACH,SAAS,CAAC,iBAAiB,CACzB,SAAS,EAAE,SAAS,EAAE,EACtB,aAAa,EAAE,OAAO,GACrB,QAAQ,CAAC,YAAY,CAAC,EAAE;IAwB3B;;;;;;;;OAQG;cACa,kBAAkB,CAChC,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,OAAY,EACrB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAa1B;;;;;;;;;OASG;IACG,GAAG,CACP,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC;CAcpC"}
1
+ {"version":3,"file":"code-list.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/code-list/code-list.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;;;;;;;GAOG;AACH,qBAAa,eAAe;IAoBd,SAAS,CAAC,QAAQ,EAAE,YAAY;IAnB5C;;;;;OAKG;IACH,SAAS,CAAC,YAAY,4BAAmC;IAEzD;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,oBAAoB,CAAC,CAChE;gBAEU,QAAQ,EAAE,YAAY;IAE5C;;;;;;;OAOG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE;IAc3D;;;;;;;;OAQG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAMzC;;;;;;;;OAQG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIlD;;;;;;;;;OASG;IACH,SAAS,CAAC,iBAAiB,CACzB,SAAS,EAAE,SAAS,EAAE,EACtB,aAAa,EAAE,OAAO,GACrB,QAAQ,CAAC,YAAY,CAAC,EAAE;IAyB3B;;;;;;;;OAQG;cACa,kBAAkB,CAChC,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,OAAY,EACrB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAa1B;;;;;;;;;OASG;IACG,GAAG,CACP,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC;CAcpC"}
@@ -99,6 +99,7 @@ export class CodeListService {
99
99
  color: codeItem.color,
100
100
  id: codeItem.codeName,
101
101
  textCls: codeItem.textCls,
102
+ disableSelect: codeItem.disableSelect,
102
103
  };
103
104
  if ((_a = codeItem.codeItems) === null || _a === void 0 ? void 0 : _a.length) {
104
105
  _codeItem.children = this.formatStaticItems(codeItem.codeItems, isValueNumber);
@@ -1 +1 @@
1
- {"version":3,"file":"uiaction-util.d.ts","sourceRoot":"","sources":["../../src/ui-action/uiaction-util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/D;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB;;;;;;;;;OASG;WACU,IAAI,CACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,eAAe,CAAC;IAS3B;;;;;;;OAOG;WACU,eAAe,CAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;CAoBjB"}
1
+ {"version":3,"file":"uiaction-util.d.ts","sourceRoot":"","sources":["../../src/ui-action/uiaction-util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/D;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB;;;;;;;;;OASG;WACU,IAAI,CACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,eAAe,CAAC;IAgB3B;;;;;;;OAOG;WACU,eAAe,CAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;CAoBjB"}
@@ -1,5 +1,5 @@
1
1
  import { RuntimeError } from '@ibiz-template/core';
2
- import { SysUIActionTag } from '../constant';
2
+ import { SysUIActionTag, ViewCallTag } from '../constant';
3
3
  import { getUIActionById } from '../model';
4
4
  import { getUIActionProvider } from '../register';
5
5
  /**
@@ -26,6 +26,13 @@ export class UIActionUtil {
26
26
  if (!action) {
27
27
  throw new RuntimeError(`没找到${actionId}的界面行为模型`);
28
28
  }
29
+ // 单项数据的界面行为执行前校验表单的数据,不通过则拦截
30
+ if (action.actionTarget === 'SINGLEDATA') {
31
+ const validateResult = await params.view.call(ViewCallTag.VALIDATE);
32
+ if (validateResult === false) {
33
+ return { cancel: true };
34
+ }
35
+ }
29
36
  const provider = await getUIActionProvider(action);
30
37
  return provider.exec(action, params);
31
38
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/runtime",
3
- "version": "0.1.31",
3
+ "version": "0.1.32",
4
4
  "description": "控制器包",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -29,7 +29,7 @@
29
29
  "author": "chitanda",
30
30
  "license": "MIT",
31
31
  "devDependencies": {
32
- "@ibiz-template/core": "^0.1.31",
32
+ "@ibiz-template/core": "^0.1.32",
33
33
  "@ibiz/model-core": "^0.0.18",
34
34
  "@types/path-browserify": "^1.0.0",
35
35
  "@types/qs": "^6.9.8",
@@ -57,5 +57,5 @@
57
57
  "qx-util": "^0.4.8",
58
58
  "ramda": "^0.29.0"
59
59
  },
60
- "gitHead": "c431fb7031558c3ae1762f6005f601d32d1f0b49"
60
+ "gitHead": "594d722ab71f8c9e5fa88e685597b221c70e56e0"
61
61
  }
@@ -19,4 +19,8 @@ export enum ViewCallTag {
19
19
  * 获取所有数据(多数据专用,获取全部数据)
20
20
  */
21
21
  'GET_ALL_DATA' = 'GetAllData',
22
+ /**
23
+ * 校验数据(编辑视图才用)
24
+ */
25
+ 'VALIDATE' = 'Validate',
22
26
  }
@@ -2,7 +2,7 @@
2
2
  import { DataTypes, ModelError } from '@ibiz-template/core';
3
3
  import { IAppCodeList, IDEGridFieldColumn } from '@ibiz/model-core';
4
4
  import dayjs from 'dayjs';
5
- import { clone } from 'ramda';
5
+ import { clone, isNil } from 'ramda';
6
6
  import { OpenAppViewCommand } from '../../../../../command';
7
7
  import { CodeListItem, IModalData } from '../../../../../interface';
8
8
  import { parseUserParams } from '../../../../../model';
@@ -212,6 +212,10 @@ export class GridFieldColumnController extends GridColumnController<IDEGridField
212
212
  return;
213
213
  }
214
214
  const fieldName = aggField || this.model.id!;
215
+
216
+ // 排除属性无值的数据,不纳入统计
217
+ items = items.filter(item => !isNil(item[fieldName]));
218
+
215
219
  let aggValue: number;
216
220
  if (this.grid.model.aggMode === 'PAGE') {
217
221
  switch (aggMode) {
@@ -42,4 +42,12 @@ export interface CodeListItem {
42
42
  * @type {string}
43
43
  */
44
44
  textCls?: string;
45
+
46
+ /**
47
+ * 禁止选择
48
+ * @author lxm
49
+ * @date 2023-10-08 03:49:40
50
+ * @type {boolean}
51
+ */
52
+ disableSelect?: boolean;
45
53
  }
@@ -109,6 +109,7 @@ export class CodeListService {
109
109
  color: codeItem.color,
110
110
  id: codeItem.codeName!,
111
111
  textCls: codeItem.textCls,
112
+ disableSelect: codeItem.disableSelect,
112
113
  };
113
114
  if (codeItem.codeItems?.length) {
114
115
  _codeItem.children = this.formatStaticItems(
@@ -1,5 +1,5 @@
1
1
  import { RuntimeError } from '@ibiz-template/core';
2
- import { SysUIActionTag } from '../constant';
2
+ import { SysUIActionTag, ViewCallTag } from '../constant';
3
3
  import { IUILogicParams, IUIActionResult } from '../interface';
4
4
  import { getUIActionById } from '../model';
5
5
  import { getUIActionProvider } from '../register';
@@ -31,6 +31,13 @@ export class UIActionUtil {
31
31
  if (!action) {
32
32
  throw new RuntimeError(`没找到${actionId}的界面行为模型`);
33
33
  }
34
+ // 单项数据的界面行为执行前校验表单的数据,不通过则拦截
35
+ if (action.actionTarget === 'SINGLEDATA') {
36
+ const validateResult = await params.view.call(ViewCallTag.VALIDATE);
37
+ if (validateResult === false) {
38
+ return { cancel: true };
39
+ }
40
+ }
34
41
  const provider = await getUIActionProvider(action);
35
42
  return provider.exec(action, params);
36
43
  }