@ibiz-template/runtime 0.6.9 → 0.6.11

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 +331 -93
  2. package/dist/index.system.min.js +1 -1
  3. package/out/controller/common/base.controller.d.ts +1 -1
  4. package/out/controller/common/base.controller.d.ts.map +1 -1
  5. package/out/controller/common/control/control.controller.d.ts +1 -1
  6. package/out/controller/common/control/control.controller.d.ts.map +1 -1
  7. package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
  8. package/out/controller/control/grid/grid/grid.controller.js +10 -2
  9. package/out/controller/control/search-bar/index.d.ts +1 -0
  10. package/out/controller/control/search-bar/index.d.ts.map +1 -1
  11. package/out/controller/control/search-bar/index.js +1 -0
  12. package/out/controller/control/search-bar/search-bar-filter-items.controller.d.ts +81 -0
  13. package/out/controller/control/search-bar/search-bar-filter-items.controller.d.ts.map +1 -0
  14. package/out/controller/control/search-bar/search-bar-filter-items.controller.js +134 -0
  15. package/out/controller/control/search-bar/search-bar-filter.controller.d.ts.map +1 -1
  16. package/out/controller/control/search-bar/search-bar-filter.controller.js +2 -0
  17. package/out/controller/control/search-bar/search-bar.controller.d.ts.map +1 -1
  18. package/out/controller/control/search-bar/search-bar.controller.js +26 -2
  19. package/out/controller/control/search-bar/use-searchcond.d.ts.map +1 -1
  20. package/out/controller/control/search-bar/use-searchcond.js +17 -0
  21. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.d.ts +1 -0
  22. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.d.ts.map +1 -1
  23. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.js +8 -1
  24. package/out/controller/control/toolbar/toolbar.controllerr.js +1 -1
  25. package/out/de-logic/de-logic-node/prepare-param-node/prepare-param-node.js +2 -2
  26. package/out/interface/controller/controller/control/i-tab-exp-panel.controller.d.ts +6 -0
  27. package/out/interface/controller/controller/control/i-tab-exp-panel.controller.d.ts.map +1 -1
  28. package/out/interface/controller/event/view/i-tab-search-view.event.d.ts +12 -0
  29. package/out/interface/controller/event/view/i-tab-search-view.event.d.ts.map +1 -0
  30. package/out/interface/controller/event/view/i-tab-search-view.event.js +1 -0
  31. package/out/interface/controller/event/view/index.d.ts +1 -0
  32. package/out/interface/controller/event/view/index.d.ts.map +1 -1
  33. package/out/interface/controller/event/view/index.js +1 -0
  34. package/out/interface/controller/state/control/i-drbar.state.d.ts +14 -0
  35. package/out/interface/controller/state/control/i-drbar.state.d.ts.map +1 -1
  36. package/out/interface/controller/state/control/i-search-bar.state.d.ts +8 -1
  37. package/out/interface/controller/state/control/i-search-bar.state.d.ts.map +1 -1
  38. package/out/interface/controller/state/control/i-tab-exp-panel.state.d.ts +7 -0
  39. package/out/interface/controller/state/control/i-tab-exp-panel.state.d.ts.map +1 -1
  40. package/out/interface/controller/state/view/i-tab-search-view.state.d.ts +20 -0
  41. package/out/interface/controller/state/view/i-tab-search-view.state.d.ts.map +1 -0
  42. package/out/interface/controller/state/view/i-tab-search-view.state.js +1 -0
  43. package/out/interface/controller/state/view/index.d.ts +1 -0
  44. package/out/interface/controller/state/view/index.d.ts.map +1 -1
  45. package/out/interface/controller/state/view/index.js +1 -0
  46. package/out/interface/service/service/i-app-de-authority.service.d.ts +2 -1
  47. package/out/interface/service/service/i-app-de-authority.service.d.ts.map +1 -1
  48. package/out/interface/service/service/i-auth.service.d.ts +7 -0
  49. package/out/interface/service/service/i-auth.service.d.ts.map +1 -1
  50. package/out/service/service/auth/v7-auth.service.d.ts +1 -0
  51. package/out/service/service/auth/v7-auth.service.d.ts.map +1 -1
  52. package/out/service/service/auth/v7-auth.service.js +29 -6
  53. package/out/service/service/authority/authority.service.d.ts.map +1 -1
  54. package/out/service/service/authority/authority.service.js +1 -1
  55. package/out/service/service/authority/de-authority.service.d.ts +2 -1
  56. package/out/service/service/authority/de-authority.service.d.ts.map +1 -1
  57. package/out/service/service/authority/de-authority.service.js +12 -5
  58. package/out/ui-action/provider/loginout-ui-action-provider.js +1 -1
  59. package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.js +2 -2
  60. package/package.json +4 -4
package/dist/index.esm.js CHANGED
@@ -3327,8 +3327,8 @@ var baseStyle = {
3327
3327
  position: "fixed",
3328
3328
  zIndex: "10000"
3329
3329
  };
3330
- function cloneElement(clone34, teleport = document.body, isRemoveChild = true) {
3331
- const element = getAnimationElement(clone34);
3330
+ function cloneElement(clone35, teleport = document.body, isRemoveChild = true) {
3331
+ const element = getAnimationElement(clone35);
3332
3332
  if (element == null) {
3333
3333
  throw new Error("Cannot clone a null or undefined element.");
3334
3334
  }
@@ -3747,11 +3747,11 @@ function arrayContains(arr, val) {
3747
3747
  });
3748
3748
  }
3749
3749
  function cloneObject(o) {
3750
- var clone34 = {};
3750
+ var clone35 = {};
3751
3751
  for (var p in o) {
3752
- clone34[p] = o[p];
3752
+ clone35[p] = o[p];
3753
3753
  }
3754
- return clone34;
3754
+ return clone35;
3755
3755
  }
3756
3756
  function replaceObjectProps(o1, o2) {
3757
3757
  var o = cloneObject(o1);
@@ -9294,16 +9294,19 @@ var DeAuthorityService = class {
9294
9294
  * @param {string} dataAccessAction 操作标识
9295
9295
  * @param {IData} data 实体数据
9296
9296
  * @param {IContext} context 上下文
9297
+ * @param {boolean} enablePermission 是否启用权限
9297
9298
  * @return {*} {Promise<boolean>}
9298
9299
  */
9299
- async calcByDataAccessAction(dataAccessAction, data, context) {
9300
- const deDataAccActionResult = await this.calcDeDataAccAction(
9301
- dataAccessAction,
9302
- data,
9303
- context
9304
- );
9305
- if (!deDataAccActionResult) {
9306
- return false;
9300
+ async calcByDataAccessAction(dataAccessAction, data, context, enablePermission) {
9301
+ if (enablePermission) {
9302
+ const deDataAccActionResult = await this.calcDeDataAccAction(
9303
+ dataAccessAction,
9304
+ data,
9305
+ context
9306
+ );
9307
+ if (!deDataAccActionResult) {
9308
+ return false;
9309
+ }
9307
9310
  }
9308
9311
  const mainStateResult = await this.calcByDeMainState(
9309
9312
  dataAccessAction,
@@ -9394,6 +9397,9 @@ var DeAuthorityService = class {
9394
9397
  */
9395
9398
  async calcByDeMainState(dataAccessAction, data = {}) {
9396
9399
  let result = true;
9400
+ if (Object.keys(data).length === 0) {
9401
+ return result;
9402
+ }
9397
9403
  const appDataEntity = this.entityModel;
9398
9404
  if (!appDataEntity.enableDEMainState) {
9399
9405
  ibiz.log.debug(
@@ -9552,7 +9558,12 @@ var AuthorityService = class {
9552
9558
  }
9553
9559
  if (appDeId) {
9554
9560
  const service = await this.getService(appDeId);
9555
- return service.calcByDataAccessAction(dataAccessAction, data, context);
9561
+ return service.calcByDataAccessAction(
9562
+ dataAccessAction,
9563
+ data,
9564
+ context,
9565
+ this.enablePermission
9566
+ );
9556
9567
  }
9557
9568
  return result;
9558
9569
  }
@@ -9596,18 +9607,18 @@ var V7AuthService = class {
9596
9607
  });
9597
9608
  const { data } = res;
9598
9609
  if (data && data.token) {
9599
- const cacheDays = remember ? 7 : 0;
9610
+ const cacheDay = remember ? 30 : 0;
9600
9611
  if (remember) {
9601
- setCookie(CoreConst.TOKEN_REMEMBER, "1", cacheDays, true);
9612
+ setCookie(CoreConst.TOKEN_REMEMBER, "1", cacheDay, true);
9602
9613
  }
9603
- setCookie(CoreConst.TOKEN, data.token, cacheDays, true);
9614
+ setCookie(CoreConst.TOKEN, data.token, cacheDay, true);
9604
9615
  const expiredDate = (/* @__PURE__ */ new Date()).getTime() + (data.expirein || 7199) * 1e3;
9605
- setCookie(CoreConst.TOKEN_EXPIRES, "".concat(expiredDate), cacheDays, true);
9616
+ setCookie(CoreConst.TOKEN_EXPIRES, "".concat(expiredDate), cacheDay, true);
9606
9617
  if (data.refresh_token) {
9607
9618
  setCookie(
9608
9619
  CoreConst.REFRESH_TOKEN,
9609
9620
  data.refresh_token,
9610
- cacheDays,
9621
+ cacheDay,
9611
9622
  true
9612
9623
  );
9613
9624
  }
@@ -9654,7 +9665,7 @@ var V7AuthService = class {
9654
9665
  setTimeout(async () => {
9655
9666
  const remember = getCookie(CoreConst.TOKEN_REMEMBER);
9656
9667
  const refreshToken = getCookie(CoreConst.REFRESH_TOKEN);
9657
- const cacheDay = remember ? 7 : 0;
9668
+ const cacheDay = remember ? 30 : 0;
9658
9669
  let res;
9659
9670
  if (refreshToken != null && refreshToken !== "") {
9660
9671
  res = await ibiz.net.get("/uaa/refresh_token/".concat(refreshToken));
@@ -9662,6 +9673,9 @@ var V7AuthService = class {
9662
9673
  res = await ibiz.net.get("/uaa/refreshtoken2");
9663
9674
  }
9664
9675
  if (res.ok) {
9676
+ if (remember) {
9677
+ setCookie(CoreConst.TOKEN_REMEMBER, "1", cacheDay, true);
9678
+ }
9665
9679
  setCookie(CoreConst.TOKEN, res.data.token, cacheDay, true);
9666
9680
  const expiredDate = (/* @__PURE__ */ new Date()).getTime() + (res.data.expirein || 7199) * 1e3;
9667
9681
  setCookie(CoreConst.TOKEN_EXPIRES, "".concat(expiredDate), cacheDay, true);
@@ -9682,6 +9696,31 @@ var V7AuthService = class {
9682
9696
  }, wait);
9683
9697
  }
9684
9698
  }
9699
+ async refreshToken() {
9700
+ const remember = getCookie(CoreConst.TOKEN_REMEMBER);
9701
+ const refreshToken = getCookie(CoreConst.REFRESH_TOKEN);
9702
+ if (refreshToken != null && refreshToken !== "") {
9703
+ const res = await ibiz.net.get("/uaa/refresh_token/".concat(refreshToken));
9704
+ if (res.ok) {
9705
+ const cacheDay = remember ? 30 : 0;
9706
+ if (remember) {
9707
+ setCookie(CoreConst.TOKEN_REMEMBER, "1", cacheDay, true);
9708
+ }
9709
+ setCookie(CoreConst.TOKEN, res.data.token, cacheDay, true);
9710
+ const expiredDate = (/* @__PURE__ */ new Date()).getTime() + (res.data.expirein || 7199) * 1e3;
9711
+ setCookie(CoreConst.TOKEN_EXPIRES, "".concat(expiredDate), cacheDay, true);
9712
+ if (res.data.refresh_token) {
9713
+ setCookie(
9714
+ CoreConst.REFRESH_TOKEN,
9715
+ res.data.refresh_token,
9716
+ cacheDay,
9717
+ true
9718
+ );
9719
+ }
9720
+ clearCookie(CoreConst.IS_ANONYMOUS);
9721
+ }
9722
+ }
9723
+ }
9685
9724
  getAuthInfo() {
9686
9725
  const token = getCookie(CoreConst.TOKEN);
9687
9726
  const isAnonymous = !!getCookie(CoreConst.IS_ANONYMOUS);
@@ -10523,7 +10562,7 @@ var PrepareParamNode = class extends DELogicNode {
10523
10562
  nodeParams.map((nodeParam) => {
10524
10563
  let result;
10525
10564
  let originValue;
10526
- if (nodeParam.dstDELogicParamId) {
10565
+ if (nodeParam.dstDELogicParamId && ibiz.env.logLevel === "DEBUG") {
10527
10566
  originValue = clone10(ctx.params[nodeParam.dstDELogicParamId]);
10528
10567
  }
10529
10568
  switch (nodeParam.paramAction) {
@@ -13352,7 +13391,7 @@ function installCommand() {
13352
13391
  }
13353
13392
 
13354
13393
  // src/app-hub.ts
13355
- import { RuntimeError as RuntimeError66 } from "@ibiz-template/core";
13394
+ import { RuntimeError as RuntimeError67 } from "@ibiz-template/core";
13356
13395
 
13357
13396
  // src/application.ts
13358
13397
  import { Net, getToken } from "@ibiz-template/core";
@@ -18936,7 +18975,7 @@ var PrepareJSParamNode = class extends UILogicNode {
18936
18975
  }
18937
18976
  for (const nodeParam of nodeParams) {
18938
18977
  let originValue;
18939
- if (nodeParam.dstDEUILogicParamId) {
18978
+ if (nodeParam.dstDEUILogicParamId && ibiz.env.logLevel === "DEBUG") {
18940
18979
  originValue = clone22(ctx.params[nodeParam.dstDEUILogicParamId]);
18941
18980
  }
18942
18981
  switch (nodeParam.paramAction) {
@@ -20600,7 +20639,7 @@ var LoginOutUIActionProvider = class extends UIActionProviderBase {
20600
20639
  async execAction(_action, _params) {
20601
20640
  const confirm = await ibiz.confirm.info({
20602
20641
  title: "\u786E\u8BA4\u9000\u51FA\u767B\u5F55",
20603
- desc: "\u60A8\u786E\u5B9A\u8981\u9000\u51FA\u767B\u5F55\u5417\uFF1F\u9000\u51FA\u540E\u60A8\u5C06\u65E0\u6CD5\u7EE7\u7EED\u8BBF\u95EE\u5DF2\u767B\u5F55\u72B6\u6001\u7684\u529F\u80FD\u548C\u4FE1\u606F\uFF0C\u8BF7\u786E\u4FDD\u60A8\u5DF2\u4FDD\u5B58\u6240\u6709\u672A\u5B8C\u6210\u7684\u64CD\u4F5C\u3002"
20642
+ desc: "\u60A8\u786E\u5B9A\u8981\u9000\u51FA\u767B\u5F55\u5417\uFF1F"
20604
20643
  });
20605
20644
  if (confirm) {
20606
20645
  const bol = await ibiz.hub.controller.logout();
@@ -20690,7 +20729,7 @@ var ToolbarController = class extends ControlController {
20690
20729
  recursiveIterate2(
20691
20730
  this.model,
20692
20731
  (item) => {
20693
- if (item.itemType === "DEUIACTION") {
20732
+ if (item.itemType) {
20694
20733
  const uiItem = item;
20695
20734
  const buttonState = new UIActionButtonState(
20696
20735
  uiItem.id,
@@ -26991,11 +27030,16 @@ var GridController = class extends MDControlController {
26991
27030
  const fields = Object.keys(item);
26992
27031
  fields.forEach((key) => {
26993
27032
  var _a3;
27033
+ let value = item[key];
27034
+ const fieldColumnC = this.fieldColumns[key];
26994
27035
  if (codeListMap.get(key)) {
26995
- item[key] = ((_a3 = codeListMap.get(key).find((_item) => {
27036
+ value = ((_a3 = codeListMap.get(key).find((_item) => {
26996
27037
  return _item.value === item[key];
26997
- })) == null ? void 0 : _a3.text) || item[key];
27038
+ })) == null ? void 0 : _a3.text) || value;
27039
+ } else if (fieldColumnC) {
27040
+ value = fieldColumnC.formatValue(value) + (fieldColumnC.model.unitName || "");
26998
27041
  }
27042
+ item[key] = value;
26999
27043
  });
27000
27044
  });
27001
27045
  return cloneData;
@@ -28754,14 +28798,16 @@ var PickupViewPanelController = class extends ControlController {
28754
28798
 
28755
28799
  // src/controller/control/search-bar/search-bar.controller.ts
28756
28800
  import { mergeInLeft as mergeInLeft3, recursiveIterate as recursiveIterate10 } from "@ibiz-template/core";
28757
- import { clone as clone29, isNil as isNil28 } from "ramda";
28801
+ import { clone as clone30, isNil as isNil28 } from "ramda";
28758
28802
  import { isString as isString2 } from "lodash-es";
28759
28803
 
28760
28804
  // src/controller/control/search-bar/search-bar-filter.controller.ts
28761
28805
  import { RuntimeModelError as RuntimeModelError64 } from "@ibiz-template/core";
28762
28806
  var ExcludeOPs = [
28763
28807
  "ISNULL" /* IS_NULL */,
28764
- "ISNOTNULL" /* IS_NOT_NULL */
28808
+ "ISNOTNULL" /* IS_NOT_NULL */,
28809
+ "EXISTS" /* EXISTS */,
28810
+ "NOTEXISTS" /* NOT_EXISTS */
28765
28811
  ];
28766
28812
  var ScriptValueRegex = /\$\{[^}]*\}/;
28767
28813
  var SearchBarFilterController = class {
@@ -29208,6 +29254,14 @@ function getOriginFilterNodes() {
29208
29254
  }
29209
29255
  function formatFilters(node) {
29210
29256
  if (!node.leaf) {
29257
+ if (node.logicType === "ITEMS") {
29258
+ return {
29259
+ condtype: "ITEMS",
29260
+ fieldname: node.field,
29261
+ condop: node.valueOP,
29262
+ searchconds: node.children.map((item) => formatFilters(item))
29263
+ };
29264
+ }
29211
29265
  return {
29212
29266
  condtype: "GROUP",
29213
29267
  condop: node.logicType,
@@ -29237,6 +29291,17 @@ function parseFilters(data) {
29237
29291
  )
29238
29292
  };
29239
29293
  }
29294
+ if (data.condtype === "ITEMS") {
29295
+ return {
29296
+ leaf: false,
29297
+ logicType: "ITEMS",
29298
+ field: data.fieldname || null,
29299
+ valueOP: data.condop || null,
29300
+ children: (data.searchconds || []).map(
29301
+ (item) => parseFilters(item)
29302
+ )
29303
+ };
29304
+ }
29240
29305
  if (data.condtype === "DEFIELD") {
29241
29306
  return {
29242
29307
  leaf: true,
@@ -29266,6 +29331,140 @@ function calcSearchConds(filterNodes) {
29266
29331
  }
29267
29332
  }
29268
29333
 
29334
+ // src/controller/control/search-bar/search-bar-filter-items.controller.ts
29335
+ import { RuntimeError as RuntimeError59 } from "@ibiz-template/core";
29336
+ import { clone as clone29 } from "ramda";
29337
+ var ExcludeOPs2 = [
29338
+ "ISNULL" /* IS_NULL */,
29339
+ "ISNOTNULL" /* IS_NOT_NULL */
29340
+ ];
29341
+ var SubFieldRegex = /^N_(.\w+)_(.\w+)$/;
29342
+ var SearchBarFilterItemsController = class extends SearchBarFilterController {
29343
+ constructor(filterModels, appDataEntity, context, params) {
29344
+ super(filterModels[0], appDataEntity, context, params);
29345
+ this.filterModels = filterModels;
29346
+ /**
29347
+ * 所有可以配置的子属性集合
29348
+ * @author lxm
29349
+ * @date 2024-03-14 04:20:10
29350
+ * @type {Array<FieldInfo>}
29351
+ */
29352
+ this.allFields = [];
29353
+ /**
29354
+ * 子编辑项控制器
29355
+ * @author lxm
29356
+ * @date 2024-03-14 04:53:26
29357
+ * @protected
29358
+ * @type {Map<string, SearchBarFilterController>}
29359
+ */
29360
+ this.subFilterCMap = /* @__PURE__ */ new Map();
29361
+ }
29362
+ /**
29363
+ * 计算标识
29364
+ * @author lxm
29365
+ * @date 2024-03-14 05:06:14
29366
+ * @protected
29367
+ * @param {string} field
29368
+ * @param {string} op
29369
+ * @return {*} {string}
29370
+ */
29371
+ calcKey(field, op) {
29372
+ return "".concat(field.toUpperCase(), "_").concat(op.toUpperCase());
29373
+ }
29374
+ /**
29375
+ * 初始化子实体
29376
+ * @author lxm
29377
+ * @date 2024-03-14 04:43:04
29378
+ * @protected
29379
+ * @return {*} {Promise<void>}
29380
+ */
29381
+ async initMinorAppDE() {
29382
+ var _a;
29383
+ const targetField = this.filterModels[0].appDEFieldId;
29384
+ let minorDEId = "";
29385
+ (_a = this.appDataEntity.appDEMethodDTOs) == null ? void 0 : _a.find((item) => {
29386
+ var _a2;
29387
+ const field = (_a2 = item.appDEMethodDTOFields) == null ? void 0 : _a2.find((x) => {
29388
+ return x.appDEFieldId === targetField;
29389
+ });
29390
+ if (field) {
29391
+ minorDEId = field.refAppDataEntityId;
29392
+ return true;
29393
+ }
29394
+ return false;
29395
+ });
29396
+ if (!minorDEId) {
29397
+ throw new RuntimeError59("\u627E\u4E0D\u5230\u5C5E\u6027".concat(targetField, "\u5BF9\u5E94\u7684\u5173\u8054\u5B9E\u4F53"));
29398
+ }
29399
+ this.minorAppDE = await ibiz.hub.getAppDataEntity(
29400
+ minorDEId,
29401
+ this.context.srfappid
29402
+ );
29403
+ }
29404
+ /**
29405
+ * 初始化子实体目标属性相关信息
29406
+ * @author lxm
29407
+ * @date 2024-03-14 04:42:32
29408
+ * @protected
29409
+ * @return {*} {Promise<void>}
29410
+ */
29411
+ async initAllFields() {
29412
+ var _a;
29413
+ const fieldMap = /* @__PURE__ */ new Map();
29414
+ this.filterModels.forEach((item) => {
29415
+ var _a2;
29416
+ const subStr = (_a2 = item.defsearchMode.codeName) == null ? void 0 : _a2.split("__")[1];
29417
+ const matches = subStr.match(SubFieldRegex);
29418
+ const subField = matches[1];
29419
+ const subOP = matches[2];
29420
+ if (!fieldMap.has(subField)) {
29421
+ fieldMap.set(subField, {
29422
+ name: subField,
29423
+ label: "",
29424
+ valueOPs: []
29425
+ });
29426
+ }
29427
+ fieldMap.get(subField).valueOPs.push(subOP);
29428
+ const cloneItem = clone29(item);
29429
+ cloneItem.defsearchMode.valueOP = subOP;
29430
+ this.subFilterCMap.set(
29431
+ this.calcKey(subField, subOP),
29432
+ new SearchBarFilterController(
29433
+ cloneItem,
29434
+ this.appDataEntity,
29435
+ this.context,
29436
+ this.params
29437
+ )
29438
+ );
29439
+ });
29440
+ (_a = this.minorAppDE.appDEFields) == null ? void 0 : _a.forEach((item) => {
29441
+ const codeName = item.codeName.toUpperCase();
29442
+ if (fieldMap.has(codeName)) {
29443
+ fieldMap.get(codeName).label = item.logicName;
29444
+ }
29445
+ });
29446
+ this.allFields = Array.from(fieldMap.values());
29447
+ await Promise.all(
29448
+ Array.from(this.subFilterCMap.values()).map((item) => item.init())
29449
+ );
29450
+ }
29451
+ async init() {
29452
+ await this.initMinorAppDE();
29453
+ await this.initAllFields();
29454
+ }
29455
+ /**
29456
+ * 获取子搜索栏控制器
29457
+ * @author lxm
29458
+ * @date 2024-03-15 02:51:02
29459
+ * @param {string} field
29460
+ * @param {string} op
29461
+ * @return {*} {SearchBarFilterController}
29462
+ */
29463
+ getSubFilterController(field, op) {
29464
+ return this.subFilterCMap.get(this.calcKey(field, op));
29465
+ }
29466
+ };
29467
+
29269
29468
  // src/controller/control/search-bar/search-bar.controller.ts
29270
29469
  var ScriptValueRegex2 = /\$\{[^}]*\}/;
29271
29470
  var SearchBarController = class extends ControlController {
@@ -29406,7 +29605,7 @@ var SearchBarController = class extends ControlController {
29406
29605
  }
29407
29606
  });
29408
29607
  if (addSearchBarFilters.length > 0) {
29409
- this.model = clone29(this.model);
29608
+ this.model = clone30(this.model);
29410
29609
  this.model.searchBarFilters = addSearchBarFilters.concat(...mergeFilters);
29411
29610
  this.model.enableFilter = true;
29412
29611
  }
@@ -29523,7 +29722,17 @@ var SearchBarController = class extends ControlController {
29523
29722
  async initSearchBarFilters() {
29524
29723
  var _a;
29525
29724
  if ((_a = this.searchBarFilters) == null ? void 0 : _a.length) {
29725
+ const itemsMap = /* @__PURE__ */ new Map();
29526
29726
  this.searchBarFilters.forEach((item) => {
29727
+ var _a2;
29728
+ if (((_a2 = item.defsearchMode) == null ? void 0 : _a2.valueOP) && ["EXISTS", "NOTEXISTS"].includes(item.defsearchMode.valueOP)) {
29729
+ const key = "".concat(item.appDEFieldId, "_").concat(item.defsearchMode.valueOP);
29730
+ if (!itemsMap.has(key)) {
29731
+ itemsMap.set(key, []);
29732
+ }
29733
+ itemsMap.get(key).push(item);
29734
+ return;
29735
+ }
29527
29736
  const filterController = new SearchBarFilterController(
29528
29737
  item,
29529
29738
  this.appDataEntity,
@@ -29532,6 +29741,17 @@ var SearchBarController = class extends ControlController {
29532
29741
  );
29533
29742
  this.filterControllers.push(filterController);
29534
29743
  });
29744
+ if (itemsMap.size > 0) {
29745
+ itemsMap.forEach((items) => {
29746
+ const filterController = new SearchBarFilterItemsController(
29747
+ items,
29748
+ this.appDataEntity,
29749
+ this.context,
29750
+ this.params
29751
+ );
29752
+ this.filterControllers.push(filterController);
29753
+ });
29754
+ }
29535
29755
  await Promise.all(
29536
29756
  this.filterControllers.map((controller) => controller.init())
29537
29757
  );
@@ -29551,12 +29771,22 @@ var SearchBarController = class extends ControlController {
29551
29771
  if (valueFormat && searchconds) {
29552
29772
  recursiveIterate10(
29553
29773
  searchconds[0],
29554
- (node) => {
29774
+ (node, parent) => {
29555
29775
  if (node.condtype === "DEFIELD" && !isNil28(node.value)) {
29556
- const controller = this.findFilterController(
29776
+ let controller = this.findFilterController(
29557
29777
  node.fieldname,
29558
29778
  node.condop
29559
29779
  );
29780
+ if (!controller && parent.condtype === "ITEMS") {
29781
+ const itemC = this.findFilterController(
29782
+ parent.fieldname,
29783
+ parent.condop
29784
+ );
29785
+ controller = itemC.getSubFilterController(
29786
+ node.fieldname,
29787
+ node.condop
29788
+ );
29789
+ }
29560
29790
  if (controller) {
29561
29791
  if (controller.valueItem && node.valueItem) {
29562
29792
  node.value = node.valueItem;
@@ -29756,6 +29986,7 @@ var SearchBarController = class extends ControlController {
29756
29986
  };
29757
29987
 
29758
29988
  // src/controller/control/tab-exp-panel/tab-exp-panel.controller.ts
29989
+ import { createUUID as createUUID13 } from "qx-util";
29759
29990
  var TabExpPanelController = class extends ControlController {
29760
29991
  constructor() {
29761
29992
  super(...arguments);
@@ -29814,6 +30045,7 @@ var TabExpPanelController = class extends ControlController {
29814
30045
  super.initState();
29815
30046
  this.state.tabPages = [];
29816
30047
  this.state.activeName = "";
30048
+ this.state.expViewParams = {};
29817
30049
  }
29818
30050
  /**
29819
30051
  * 创建完成
@@ -29967,7 +30199,7 @@ var TabExpPanelController = class extends ControlController {
29967
30199
  const context = Object.assign(this.context.clone(), resultContext, {
29968
30200
  currentSrfNav: this.state.activeName
29969
30201
  });
29970
- const params = { ...resultParams };
30202
+ const params = { ...resultParams, ...this.state.expViewParams };
29971
30203
  return { context, params };
29972
30204
  }
29973
30205
  /**
@@ -29990,11 +30222,16 @@ var TabExpPanelController = class extends ControlController {
29990
30222
  modalOptions: { replace: true }
29991
30223
  };
29992
30224
  }
30225
+ refresh() {
30226
+ const navViewMsg = this.getNavViewMsg(this.activeTabViewPanelModel);
30227
+ navViewMsg.key += createUUID13();
30228
+ this.evt.emit("onNavViewChange", { navViewMsg });
30229
+ }
29993
30230
  };
29994
30231
 
29995
30232
  // src/controller/control/tree/tree.controller.ts
29996
30233
  import {
29997
- RuntimeError as RuntimeError59,
30234
+ RuntimeError as RuntimeError60,
29998
30235
  RuntimeModelError as RuntimeModelError65,
29999
30236
  recursiveIterate as recursiveIterate11
30000
30237
  } from "@ibiz-template/core";
@@ -31031,7 +31268,7 @@ var TreeController = class extends MDControlController {
31031
31268
  throw new RuntimeModelError65(model, "\u6811\u8282\u70B9\u6CA1\u6709\u914D\u7F6E\u7F16\u8F91\u6A21\u5F0F\uFF1A\u540D\u79F0");
31032
31269
  }
31033
31270
  if (nodeData._nodeType !== "DE") {
31034
- throw new RuntimeError59("\u4E0D\u662F\u5B9E\u4F53\u6811\u8282\u70B9\u6570\u636E");
31271
+ throw new RuntimeError60("\u4E0D\u662F\u5B9E\u4F53\u6811\u8282\u70B9\u6570\u636E");
31035
31272
  }
31036
31273
  nodeData._text = text;
31037
31274
  await this.updateDeNodeData([nodeData]);
@@ -31046,7 +31283,7 @@ var TreeController = class extends MDControlController {
31046
31283
  let needRefresh = false;
31047
31284
  const treeNode = this.getNodeModel(item._nodeId);
31048
31285
  if (!treeNode) {
31049
- throw new RuntimeError59("\u672A\u627E\u5230\u6811\u8282\u70B9");
31286
+ throw new RuntimeError60("\u672A\u627E\u5230\u6811\u8282\u70B9");
31050
31287
  }
31051
31288
  const nodeAppDataEntityId = treeNode.appDataEntityId;
31052
31289
  if (nodeAppDataEntityId) {
@@ -31065,7 +31302,7 @@ var TreeController = class extends MDControlController {
31065
31302
  };
31066
31303
 
31067
31304
  // src/controller/control/wizard-panel/wizard-panel.controller.ts
31068
- import { RuntimeError as RuntimeError60 } from "@ibiz-template/core";
31305
+ import { RuntimeError as RuntimeError61 } from "@ibiz-template/core";
31069
31306
 
31070
31307
  // src/controller/control/wizard-panel/wizard-panel.service.ts
31071
31308
  var WizardPanelService = class extends ControlService {
@@ -31231,7 +31468,7 @@ var WizardPanelController = class extends ControlController {
31231
31468
  const { activeFormTag } = this.state;
31232
31469
  const controller = this.formControllers.get(activeFormTag);
31233
31470
  if (!controller) {
31234
- throw new RuntimeError60("\u627E\u4E0D\u5230".concat(activeFormTag, "\u7684\u8868\u5355\u63A7\u5236\u5668"));
31471
+ throw new RuntimeError61("\u627E\u4E0D\u5230".concat(activeFormTag, "\u7684\u8868\u5355\u63A7\u5236\u5668"));
31235
31472
  }
31236
31473
  return controller;
31237
31474
  }
@@ -31273,7 +31510,7 @@ var WizardPanelController = class extends ControlController {
31273
31510
  getWizardFormByTag(tag) {
31274
31511
  var _a;
31275
31512
  if (!((_a = this.model.dewizard) == null ? void 0 : _a.dewizardForms)) {
31276
- throw new RuntimeError60("\u6CA1\u6709\u914D\u7F6E\u5411\u5BFC\u8868\u5355\u96C6\u5408");
31513
+ throw new RuntimeError61("\u6CA1\u6709\u914D\u7F6E\u5411\u5BFC\u8868\u5355\u96C6\u5408");
31277
31514
  return;
31278
31515
  }
31279
31516
  const wizardForm = this.model.dewizard.dewizardForms.find(
@@ -31282,7 +31519,7 @@ var WizardPanelController = class extends ControlController {
31282
31519
  }
31283
31520
  );
31284
31521
  if (!wizardForm) {
31285
- throw new RuntimeError60("\u627E\u4E0D\u5230\u6807\u8BC6\u4E3A".concat(tag, "\u7684\u5411\u5BFC\u8868\u5355"));
31522
+ throw new RuntimeError61("\u627E\u4E0D\u5230\u6807\u8BC6\u4E3A".concat(tag, "\u7684\u5411\u5BFC\u8868\u5355"));
31286
31523
  }
31287
31524
  return wizardForm;
31288
31525
  }
@@ -31353,7 +31590,7 @@ var WizardPanelController = class extends ControlController {
31353
31590
  prevTag = this.tagHistory[this.tagHistory.length - 1];
31354
31591
  }
31355
31592
  if (!prevTag) {
31356
- throw new RuntimeError60("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");
31593
+ throw new RuntimeError61("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");
31357
31594
  }
31358
31595
  this.state.activeFormTag = prevTag;
31359
31596
  }
@@ -31389,7 +31626,7 @@ var WizardPanelController = class extends ControlController {
31389
31626
  });
31390
31627
  const nextWizardStep = wizardSteps[index + 1];
31391
31628
  if (!nextWizardStep) {
31392
- throw new RuntimeError60("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u6B65\u9AA4");
31629
+ throw new RuntimeError61("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u6B65\u9AA4");
31393
31630
  }
31394
31631
  const nextWizardForm = this.getWizardFormByTag(nextWizardStep.stepTag);
31395
31632
  if (nextWizardForm && nextWizardForm.formTag) {
@@ -31398,7 +31635,7 @@ var WizardPanelController = class extends ControlController {
31398
31635
  }
31399
31636
  }
31400
31637
  if (!nextTag) {
31401
- throw new RuntimeError60("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u8868\u5355");
31638
+ throw new RuntimeError61("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u8868\u5355");
31402
31639
  }
31403
31640
  this.state.activeFormTag = nextTag;
31404
31641
  this.tagHistory.push(nextTag);
@@ -31721,7 +31958,7 @@ var MDCtrlController = class extends MDControlController {
31721
31958
  };
31722
31959
 
31723
31960
  // src/controller/control/kanban/kanban.controller.ts
31724
- import { RuntimeError as RuntimeError61, RuntimeModelError as RuntimeModelError67 } from "@ibiz-template/core";
31961
+ import { RuntimeError as RuntimeError62, RuntimeModelError as RuntimeModelError67 } from "@ibiz-template/core";
31725
31962
  import { isNil as isNil30 } from "ramda";
31726
31963
 
31727
31964
  // src/controller/control/kanban/kanban.service.ts
@@ -31812,7 +32049,7 @@ var KanbanController = class extends DataViewControlController {
31812
32049
  } else {
31813
32050
  const toNum = Number(sortValue);
31814
32051
  if (Number.isNaN(toNum)) {
31815
- throw new RuntimeError61(
32052
+ throw new RuntimeError62(
31816
32053
  "".concat(item.srfmajortext, "\u7684\u6392\u5E8F\u5C5E\u6027\u65E0\u6CD5\u8F6C\u6362\u6210\u6570\u503C")
31817
32054
  );
31818
32055
  }
@@ -31898,7 +32135,7 @@ var KanbanController = class extends DataViewControlController {
31898
32135
  }
31899
32136
  handleDataGroup() {
31900
32137
  if (!this.model.enableGroup || this.model.groupMode === "NONE") {
31901
- throw new RuntimeError61("\u770B\u677F\u90E8\u4EF6\u5FC5\u987B\u5F00\u542F\u5206\u7EC4");
32138
+ throw new RuntimeError62("\u770B\u677F\u90E8\u4EF6\u5FC5\u987B\u5F00\u542F\u5206\u7EC4");
31902
32139
  }
31903
32140
  return super.handleDataGroup();
31904
32141
  }
@@ -32241,12 +32478,12 @@ var KanbanController = class extends DataViewControlController {
32241
32478
 
32242
32479
  // src/controller/control/tree-grid-ex/tree-grid-ex.controller.ts
32243
32480
  import {
32244
- RuntimeError as RuntimeError62,
32481
+ RuntimeError as RuntimeError63,
32245
32482
  RuntimeModelError as RuntimeModelError68,
32246
32483
  awaitTimeout as awaitTimeout3,
32247
32484
  recursiveIterate as recursiveIterate12
32248
32485
  } from "@ibiz-template/core";
32249
- import { clone as clone30 } from "ramda";
32486
+ import { clone as clone31 } from "ramda";
32250
32487
 
32251
32488
  // src/controller/control/tree-grid-ex/tree-grid-ex.service.ts
32252
32489
  var TreeGridExService = class extends TreeService {
@@ -32501,11 +32738,11 @@ var TreeGridExController = class extends TreeController {
32501
32738
  return;
32502
32739
  }
32503
32740
  if (nodeData._nodeType !== "DE") {
32504
- throw new RuntimeError62("\u975E\u5B9E\u4F53\u8282\u70B9\u6570\u636E\u4E0D\u80FD\u4FDD\u5B58");
32741
+ throw new RuntimeError63("\u975E\u5B9E\u4F53\u8282\u70B9\u6570\u636E\u4E0D\u80FD\u4FDD\u5B58");
32505
32742
  }
32506
32743
  const rowState = this.state.rows[nodeData._uuid];
32507
32744
  if (!rowState) {
32508
- throw new RuntimeError62("\u884C\u6570\u636E\u4E0D\u5B58\u5728");
32745
+ throw new RuntimeError63("\u884C\u6570\u636E\u4E0D\u5B58\u5728");
32509
32746
  }
32510
32747
  if (!rowState.modified) {
32511
32748
  ibiz.log.debug("\u503C\u6CA1\u6709\u53D1\u751F\u6539\u53D8");
@@ -32519,7 +32756,7 @@ var TreeGridExController = class extends TreeController {
32519
32756
  const { appDataEntityId, updateAppDEActionId } = nodeModel;
32520
32757
  const isCreate = nodeData._deData.srfuf === 0 /* CREATE */;
32521
32758
  if (isCreate) {
32522
- throw new RuntimeError62("\u6682\u4E0D\u652F\u6301\u65B0\u5EFA");
32759
+ throw new RuntimeError63("\u6682\u4E0D\u652F\u6301\u65B0\u5EFA");
32523
32760
  }
32524
32761
  if (!updateAppDEActionId) {
32525
32762
  throw new RuntimeModelError68(nodeModel, "\u6811\u8282\u70B9\u6CA1\u6709\u914D\u7F6E\u66F4\u65B0\u5B9E\u4F53\u884C\u4E3A");
@@ -32679,10 +32916,10 @@ var TreeGridExController = class extends TreeController {
32679
32916
  (item) => item.showRowEdit
32680
32917
  );
32681
32918
  if (editingRow) {
32682
- throw new RuntimeError62("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");
32919
+ throw new RuntimeError63("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");
32683
32920
  }
32684
32921
  if (row.data._deData.srfuf === 1 /* UPDATE */) {
32685
- row.cacheData = clone30(row.data);
32922
+ row.cacheData = clone31(row.data);
32686
32923
  const defaultVal = this.calcDefaultValue(row.data, false);
32687
32924
  Object.assign(row.data, defaultVal);
32688
32925
  }
@@ -32792,10 +33029,10 @@ var TreeGridExColumnController = class {
32792
33029
  // src/controller/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-node-column.controller.ts
32793
33030
  import {
32794
33031
  DataTypes as DataTypes5,
32795
- RuntimeError as RuntimeError63,
33032
+ RuntimeError as RuntimeError64,
32796
33033
  RuntimeModelError as RuntimeModelError69
32797
33034
  } from "@ibiz-template/core";
32798
- import { clone as clone31 } from "ramda";
33035
+ import { clone as clone32 } from "ramda";
32799
33036
  import dayjs6 from "dayjs";
32800
33037
  var TreeGridExNodeColumnController = class {
32801
33038
  /**
@@ -32993,7 +33230,7 @@ var TreeGridExNodeColumnController = class {
32993
33230
  const valueItem = this.nodeColumn.linkValueItem || "srfkey";
32994
33231
  const value = row.data[valueItem];
32995
33232
  if (value == null) {
32996
- throw new RuntimeError63("\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(valueItem, " \u7684\u503C"));
33233
+ throw new RuntimeError64("\u672A\u5728\u884C\u6570\u636E\u4E2D\u53D6\u5230 ".concat(valueItem, " \u7684\u503C"));
32997
33234
  }
32998
33235
  const { linkAppViewId } = this.nodeColumn;
32999
33236
  if (!linkAppViewId) {
@@ -33004,7 +33241,7 @@ var TreeGridExNodeColumnController = class {
33004
33241
  srfkey: value,
33005
33242
  ...wfContext
33006
33243
  });
33007
- const tempParams = clone31(this.params);
33244
+ const tempParams = clone32(this.params);
33008
33245
  const { userParam } = this.nodeColumn;
33009
33246
  if (userParam) {
33010
33247
  const { navigateContexts, navigateParams } = parseUserParams(userParam);
@@ -33406,8 +33643,8 @@ var TreeGridService = class extends GridService {
33406
33643
  };
33407
33644
 
33408
33645
  // src/controller/control/medit-view-panel/medit-view-panel.controller.ts
33409
- import { RuntimeError as RuntimeError64 } from "@ibiz-template/core";
33410
- import { createUUID as createUUID13 } from "qx-util";
33646
+ import { RuntimeError as RuntimeError65 } from "@ibiz-template/core";
33647
+ import { createUUID as createUUID14 } from "qx-util";
33411
33648
 
33412
33649
  // src/controller/control/medit-view-panel/medit-view-panel.service.ts
33413
33650
  var MEditViewPanelService = class extends MDControlService {
@@ -33494,7 +33731,7 @@ var MEditViewPanelController = class extends MDControlController {
33494
33731
  */
33495
33732
  handlePanelItemParams(arg) {
33496
33733
  const [{ parameterName }] = this.parameters;
33497
- const id = arg[parameterName] ? arg[parameterName] : "mockId:".concat(createUUID13());
33734
+ const id = arg[parameterName] ? arg[parameterName] : "mockId:".concat(createUUID14());
33498
33735
  const item = {
33499
33736
  id,
33500
33737
  context: this.context.clone(),
@@ -33622,7 +33859,7 @@ var MEditViewPanelController = class extends MDControlController {
33622
33859
  (item) => item.id === id
33623
33860
  );
33624
33861
  if (panelUiItemIndex < 0) {
33625
- throw new RuntimeError64("\u7F16\u8F91\u89C6\u56FE\u9762\u677F\u90E8\u4EF6UI\u6570\u636E\u4E0D\u5B58\u5728");
33862
+ throw new RuntimeError65("\u7F16\u8F91\u89C6\u56FE\u9762\u677F\u90E8\u4EF6UI\u6570\u636E\u4E0D\u5B58\u5728");
33626
33863
  }
33627
33864
  const tempUiItem = this.state.panelUiItems[panelUiItemIndex];
33628
33865
  if (tempUiItem.id.startsWith("mockId:")) {
@@ -34130,7 +34367,7 @@ var ReportPanelController = class extends ControlController {
34130
34367
  // src/controller/control/gantt/gantt.controller.ts
34131
34368
  import {
34132
34369
  awaitTimeout as awaitTimeout4,
34133
- RuntimeError as RuntimeError65,
34370
+ RuntimeError as RuntimeError66,
34134
34371
  RuntimeModelError as RuntimeModelError71
34135
34372
  } from "@ibiz-template/core";
34136
34373
 
@@ -34574,11 +34811,11 @@ var GanttController = class extends TreeGridExController {
34574
34811
  */
34575
34812
  async modifyNodeTime(nodeData, { begin, end }) {
34576
34813
  if (nodeData._nodeType !== "DE") {
34577
- throw new RuntimeError65("\u4E0D\u662F\u5B9E\u4F53\u7518\u7279\u8282\u70B9\u6570\u636E");
34814
+ throw new RuntimeError66("\u4E0D\u662F\u5B9E\u4F53\u7518\u7279\u8282\u70B9\u6570\u636E");
34578
34815
  }
34579
34816
  const rowState = this.getRowState(nodeData._id);
34580
34817
  if (!rowState) {
34581
- throw new RuntimeError65("\u884C\u6570\u636E\u4E0D\u5B58\u5728");
34818
+ throw new RuntimeError66("\u884C\u6570\u636E\u4E0D\u5B58\u5728");
34582
34819
  }
34583
34820
  const { beginDataItemName, endDataItemName } = this.model;
34584
34821
  this.setRowValue(rowState, beginDataItemName, begin);
@@ -34598,11 +34835,11 @@ var GanttController = class extends TreeGridExController {
34598
34835
  return;
34599
34836
  }
34600
34837
  if (nodeData._nodeType !== "DE") {
34601
- throw new RuntimeError65("\u975E\u5B9E\u4F53\u8282\u70B9\u6570\u636E\u4E0D\u80FD\u4FDD\u5B58");
34838
+ throw new RuntimeError66("\u975E\u5B9E\u4F53\u8282\u70B9\u6570\u636E\u4E0D\u80FD\u4FDD\u5B58");
34602
34839
  }
34603
34840
  const rowState = this.state.rows[nodeData._uuid];
34604
34841
  if (!rowState) {
34605
- throw new RuntimeError65("\u884C\u6570\u636E\u4E0D\u5B58\u5728");
34842
+ throw new RuntimeError66("\u884C\u6570\u636E\u4E0D\u5B58\u5728");
34606
34843
  }
34607
34844
  if (!rowState.modified) {
34608
34845
  ibiz.log.debug("\u503C\u6CA1\u6709\u53D1\u751F\u6539\u53D8");
@@ -34650,7 +34887,7 @@ var GanttController = class extends TreeGridExController {
34650
34887
  async remove(args) {
34651
34888
  const { context, params, data } = this.handlerAbilityParams(args);
34652
34889
  if (!(data == null ? void 0 : data.length)) {
34653
- throw new RuntimeError65("\u672A\u9009\u4E2D\u6570\u636E");
34890
+ throw new RuntimeError66("\u672A\u9009\u4E2D\u6570\u636E");
34654
34891
  }
34655
34892
  if ((args == null ? void 0 : args.silent) !== true) {
34656
34893
  const del = await ibiz.confirm.error({
@@ -34759,7 +34996,7 @@ var GanttController = class extends TreeGridExController {
34759
34996
  (item) => item.showRowEdit
34760
34997
  );
34761
34998
  if (editingRow) {
34762
- throw new RuntimeError65("\u8BF7\u5148\u5B8C\u6210\u5F53\u524D\u884C\u7F16\u8F91\u4E2D\u7684\u884C\u7684\u64CD\u4F5C");
34999
+ throw new RuntimeError66("\u8BF7\u5148\u5B8C\u6210\u5F53\u524D\u884C\u7F16\u8F91\u4E2D\u7684\u884C\u7684\u64CD\u4F5C");
34763
35000
  }
34764
35001
  }
34765
35002
  let parentModel;
@@ -34853,7 +35090,7 @@ import { QXEvent as QXEvent9 } from "qx-util";
34853
35090
 
34854
35091
  // src/controller/notification/async-action.controller.ts
34855
35092
  import { QXEvent as QXEvent7 } from "qx-util";
34856
- import { clone as clone32 } from "ramda";
35093
+ import { clone as clone33 } from "ramda";
34857
35094
  import { isNil as isNil31, isNumber as isNumber2 } from "lodash-es";
34858
35095
  import dayjs7 from "dayjs";
34859
35096
  var AsyncActionController = class {
@@ -34961,7 +35198,7 @@ var AsyncActionController = class {
34961
35198
  } else {
34962
35199
  this.noticeResult(action);
34963
35200
  }
34964
- this.evt.emit("add", clone32(action));
35201
+ this.evt.emit("add", clone33(action));
34965
35202
  this.evt.emit("dataChange");
34966
35203
  }
34967
35204
  /**
@@ -34983,7 +35220,7 @@ var AsyncActionController = class {
34983
35220
  }
34984
35221
  this.noticeResult(action);
34985
35222
  }
34986
- this.evt.emit("change", clone32(action));
35223
+ this.evt.emit("change", clone33(action));
34987
35224
  this.evt.emit("dataChange");
34988
35225
  }
34989
35226
  noticeResult(action) {
@@ -35379,7 +35616,7 @@ var AppHub = class {
35379
35616
  this.registerAppView(appView);
35380
35617
  return appView;
35381
35618
  }
35382
- throw new RuntimeError66("\u89C6\u56FE[".concat(id, "]\u4E0D\u5B58\u5728"));
35619
+ throw new RuntimeError67("\u89C6\u56FE[".concat(id, "]\u4E0D\u5B58\u5728"));
35383
35620
  }
35384
35621
  /**
35385
35622
  * 根据视图模型路径,加参数重新计算视图模型
@@ -35400,7 +35637,7 @@ var AppHub = class {
35400
35637
  );
35401
35638
  return model;
35402
35639
  }
35403
- throw new RuntimeError66("\u89C6\u56FE[".concat(modelPath, "]\u4E0D\u5B58\u5728"));
35640
+ throw new RuntimeError67("\u89C6\u56FE[".concat(modelPath, "]\u4E0D\u5B58\u5728"));
35404
35641
  }
35405
35642
  /**
35406
35643
  * 根据应用实体代码名称查找应用视图
@@ -35431,7 +35668,7 @@ var AppHub = class {
35431
35668
  this.registerAppDataEntity(entity, appId2);
35432
35669
  return entity;
35433
35670
  }
35434
- throw new RuntimeError66("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(id, "]"));
35671
+ throw new RuntimeError67("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(id, "]"));
35435
35672
  }
35436
35673
  /**
35437
35674
  * 新建 hub 应用
@@ -35446,7 +35683,7 @@ var AppHub = class {
35446
35683
  return this.appMap.get(id);
35447
35684
  }
35448
35685
  if (!this.modelLoaderProvider) {
35449
- throw new RuntimeError66("\u8BF7\u5148\u6CE8\u518C\u6A21\u578B\u52A0\u8F7D\u9002\u914D\u5668");
35686
+ throw new RuntimeError67("\u8BF7\u5148\u6CE8\u518C\u6A21\u578B\u52A0\u8F7D\u9002\u914D\u5668");
35450
35687
  }
35451
35688
  const appModel = await this.modelLoaderProvider.getApp(id);
35452
35689
  const app = new Application(appModel);
@@ -35577,7 +35814,7 @@ var EngineFactory = class {
35577
35814
  };
35578
35815
 
35579
35816
  // src/engine/view-base.engine.ts
35580
- import { RuntimeError as RuntimeError67, findRecursiveChild as findRecursiveChild3 } from "@ibiz-template/core";
35817
+ import { RuntimeError as RuntimeError68, findRecursiveChild as findRecursiveChild3 } from "@ibiz-template/core";
35581
35818
  var ViewEngineBase = class {
35582
35819
  /**
35583
35820
  * 构造函数在视图控制器的构造函数逻辑内部执行
@@ -35845,7 +36082,7 @@ var ViewEngineBase = class {
35845
36082
  const { appDataEntityId } = this.view.model;
35846
36083
  const { evt, context, params } = this.view;
35847
36084
  if (!appDataEntityId) {
35848
- throw new RuntimeError67("\u8BE5\u89C6\u56FE\u6CA1\u6709\u5B9E\u4F53\uFF0C\u65E0\u6CD5\u52A0\u8F7D\u5B9E\u4F53\u6570\u636E");
36085
+ throw new RuntimeError68("\u8BE5\u89C6\u56FE\u6CA1\u6709\u5B9E\u4F53\uFF0C\u65E0\u6CD5\u52A0\u8F7D\u5B9E\u4F53\u6570\u636E");
35849
36086
  }
35850
36087
  const app = ibiz.hub.getApp(context.srfappid);
35851
36088
  const res = await app.deService.exec(
@@ -35867,7 +36104,7 @@ var ViewEngineBase = class {
35867
36104
 
35868
36105
  // src/engine/md-view.engine.ts
35869
36106
  import { RuntimeModelError as RuntimeModelError72 } from "@ibiz-template/core";
35870
- import { clone as clone33 } from "ramda";
36107
+ import { clone as clone34 } from "ramda";
35871
36108
  var MDViewEngine = class extends ViewEngineBase {
35872
36109
  /**
35873
36110
  * 多数据部件名称
@@ -36091,7 +36328,7 @@ var MDViewEngine = class extends ViewEngineBase {
36091
36328
  if (!openAppViewLogic) {
36092
36329
  throw new RuntimeModelError72(this.view.model, "\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");
36093
36330
  }
36094
- const params = clone33(this.view.params);
36331
+ const params = clone34(this.view.params);
36095
36332
  if (copyMode) {
36096
36333
  params.srfcopymode = copyMode;
36097
36334
  }
@@ -36389,7 +36626,7 @@ var GlobalUtil = class {
36389
36626
  };
36390
36627
 
36391
36628
  // src/logic-scheduler/executor/logic-executor.ts
36392
- import { RuntimeError as RuntimeError68 } from "@ibiz-template/core";
36629
+ import { RuntimeError as RuntimeError69 } from "@ibiz-template/core";
36393
36630
  var LogicExecutor = class {
36394
36631
  /**
36395
36632
  * @author lxm
@@ -36410,7 +36647,7 @@ var LogicExecutor = class {
36410
36647
  */
36411
36648
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
36412
36649
  execute(_executeParams) {
36413
- throw new RuntimeError68("Method not implemented.");
36650
+ throw new RuntimeError69("Method not implemented.");
36414
36651
  }
36415
36652
  /**
36416
36653
  * 销毁方法
@@ -36847,7 +37084,7 @@ var LogicSchedulerCenter = class {
36847
37084
  };
36848
37085
 
36849
37086
  // src/logic-scheduler/trigger/logic-trigger.ts
36850
- import { RuntimeError as RuntimeError69 } from "@ibiz-template/core";
37087
+ import { RuntimeError as RuntimeError70 } from "@ibiz-template/core";
36851
37088
  var LogicTrigger = class {
36852
37089
  /**
36853
37090
  * @author lxm
@@ -36907,7 +37144,7 @@ var LogicTrigger = class {
36907
37144
  if (this.executor) {
36908
37145
  return this.executor.execute(executeParams);
36909
37146
  }
36910
- throw new RuntimeError69("".concat(this.logic.id, "\u6CA1\u6709\u7ED1\u5B9Aexecutor"));
37147
+ throw new RuntimeError70("".concat(this.logic.id, "\u6CA1\u6709\u7ED1\u5B9Aexecutor"));
36911
37148
  }
36912
37149
  /**
36913
37150
  * 销毁方法
@@ -36924,12 +37161,12 @@ var CustomTrigger = class extends LogicTrigger {
36924
37161
  };
36925
37162
 
36926
37163
  // src/logic-scheduler/trigger/item-dyna-logic-trigger.ts
36927
- import { RuntimeError as RuntimeError70 } from "@ibiz-template/core";
37164
+ import { RuntimeError as RuntimeError71 } from "@ibiz-template/core";
36928
37165
  var ItemDynaLogicTrigger = class extends LogicTrigger {
36929
37166
  bindExecutor(executor) {
36930
37167
  super.bindExecutor(executor);
36931
37168
  if (this.executor.type !== "SCRIPT") {
36932
- throw new RuntimeError70(
37169
+ throw new RuntimeError71(
36933
37170
  "\u9884\u5B9A\u4E49\u903B\u8F91\u7C7B\u578B".concat(this.type, "\u7684\u89E6\u53D1\u5668\u7C7B\u578B\u53EA\u80FD\u662F\u811A\u672C")
36934
37171
  );
36935
37172
  }
@@ -36966,7 +37203,7 @@ var ItemDynaLogicTrigger = class extends LogicTrigger {
36966
37203
  };
36967
37204
 
36968
37205
  // src/logic-scheduler/trigger/timer-trigger.ts
36969
- import { RuntimeError as RuntimeError71, RuntimeModelError as RuntimeModelError74 } from "@ibiz-template/core";
37206
+ import { RuntimeError as RuntimeError72, RuntimeModelError as RuntimeModelError74 } from "@ibiz-template/core";
36970
37207
  var TimerTrigger = class extends LogicTrigger {
36971
37208
  constructor() {
36972
37209
  super(...arguments);
@@ -36978,7 +37215,7 @@ var TimerTrigger = class extends LogicTrigger {
36978
37215
  }
36979
37216
  this.timer = setInterval(() => {
36980
37217
  if (!this.scheduler.defaultParamsCb) {
36981
- throw new RuntimeError71("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");
37218
+ throw new RuntimeError72("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");
36982
37219
  }
36983
37220
  const params = this.scheduler.defaultParamsCb();
36984
37221
  this.executor.execute(params);
@@ -36995,7 +37232,7 @@ var TimerTrigger = class extends LogicTrigger {
36995
37232
  // src/logic-scheduler/executor/app-ui-logic-executor.ts
36996
37233
  import {
36997
37234
  ModelError as ModelError34,
36998
- RuntimeError as RuntimeError72,
37235
+ RuntimeError as RuntimeError73,
36999
37236
  RuntimeModelError as RuntimeModelError75
37000
37237
  } from "@ibiz-template/core";
37001
37238
  import { notNilEmpty as notNilEmpty9 } from "qx-util";
@@ -37033,7 +37270,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
37033
37270
  const { context, params, ...rest } = parameters;
37034
37271
  const { data } = parameters;
37035
37272
  if (!(data == null ? void 0 : data[0])) {
37036
- throw new RuntimeError72("opendata\u6CA1\u6709\u53EF\u64CD\u4F5C\u6570\u636E\uFF01");
37273
+ throw new RuntimeError73("opendata\u6CA1\u6709\u53EF\u64CD\u4F5C\u6570\u636E\uFF01");
37037
37274
  }
37038
37275
  const openViewRefs = appUILogic.openDataAppViews;
37039
37276
  let openViewRef;
@@ -37093,7 +37330,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
37093
37330
  const openViewRefs = appUILogic.openDataAppViews;
37094
37331
  const findView = openViewRefs == null ? void 0 : openViewRefs.find((item) => item.refMode === formTypeValue);
37095
37332
  if (!findView) {
37096
- throw new RuntimeError72(
37333
+ throw new RuntimeError73(
37097
37334
  "\u6CA1\u6709\u627E\u5230\u4E0E\u8868\u5355\u7C7B\u578B".concat(formTypeValue, "\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE")
37098
37335
  );
37099
37336
  }
@@ -37218,7 +37455,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
37218
37455
  }
37219
37456
  const selectData = (_a = result.data) == null ? void 0 : _a[0];
37220
37457
  if (!selectData) {
37221
- throw new RuntimeError72("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");
37458
+ throw new RuntimeError73("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");
37222
37459
  }
37223
37460
  const indexType = selectData.srfkey;
37224
37461
  const findView = newDataAppViews == null ? void 0 : newDataAppViews.find(
@@ -37228,7 +37465,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
37228
37465
  }
37229
37466
  );
37230
37467
  if (!findView) {
37231
- throw new RuntimeError72(
37468
+ throw new RuntimeError73(
37232
37469
  "\u6CA1\u6709\u627E\u5230\u4E0E\u7D22\u5F15\u7C7B\u578B".concat(indexType, "\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE")
37233
37470
  );
37234
37471
  }
@@ -37265,7 +37502,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
37265
37502
  }
37266
37503
  });
37267
37504
  if (pickParentFieldName === void 0) {
37268
- throw new RuntimeError72(
37505
+ throw new RuntimeError73(
37269
37506
  "\u6CA1\u6709\u627E\u5230".concat(pickParentDeName, "\u5728\u5F53\u524D\u5B9E\u4F53\u7684\u5916\u952E\u5C5E\u6027")
37270
37507
  );
37271
37508
  }
@@ -37712,6 +37949,7 @@ export {
37712
37949
  ScriptFunction,
37713
37950
  SearchBarController,
37714
37951
  SearchBarFilterController,
37952
+ SearchBarFilterItemsController,
37715
37953
  SearchFilter,
37716
37954
  SearchFormController,
37717
37955
  SearchFormService,