@ibiz-template/runtime 0.2.11 → 0.2.13

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 (99) hide show
  1. package/dist/index.esm.js +223 -72
  2. package/dist/index.system.min.js +1 -1
  3. package/dist/index.system.min.js.map +1 -1
  4. package/out/controller/common/view/view.controller.d.ts.map +1 -1
  5. package/out/controller/common/view/view.controller.js +6 -0
  6. package/out/controller/control/calendar/calendar.controller.js +5 -5
  7. package/out/controller/control/chart/generator/base-series-generator.d.ts.map +1 -1
  8. package/out/controller/control/chart/generator/base-series-generator.js +2 -2
  9. package/out/controller/control/exp-bar/calendar-exp-bar.controller.d.ts +1 -1
  10. package/out/controller/control/exp-bar/calendar-exp-bar.controller.d.ts.map +1 -1
  11. package/out/controller/control/exp-bar/calendar-exp-bar.controller.js +2 -2
  12. package/out/controller/control/exp-bar/exp-bar.controller.d.ts +3 -3
  13. package/out/controller/control/exp-bar/exp-bar.controller.d.ts.map +1 -1
  14. package/out/controller/control/exp-bar/exp-bar.controller.js +23 -10
  15. package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts +13 -1
  16. package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts.map +1 -1
  17. package/out/controller/control/exp-bar/tree-exp-bar.controller.js +29 -12
  18. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.d.ts +3 -3
  19. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.d.ts.map +1 -1
  20. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.js +7 -3
  21. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.d.ts +2 -2
  22. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.js +2 -2
  23. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.d.ts +3 -3
  24. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.d.ts.map +1 -1
  25. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.js +13 -3
  26. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.d.ts +2 -2
  27. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.d.ts.map +1 -1
  28. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.js +6 -2
  29. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.d.ts.map +1 -1
  30. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.js +4 -3
  31. package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.js +3 -3
  32. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.d.ts +11 -1
  33. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.d.ts.map +1 -1
  34. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.js +27 -14
  35. package/out/controller/control/tree/tree.controller.d.ts +1 -0
  36. package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
  37. package/out/controller/control/tree/tree.controller.js +25 -0
  38. package/out/controller/utils/index.d.ts +1 -0
  39. package/out/controller/utils/index.d.ts.map +1 -1
  40. package/out/controller/utils/index.js +1 -0
  41. package/out/controller/utils/route/route.d.ts +10 -0
  42. package/out/controller/utils/route/route.d.ts.map +1 -0
  43. package/out/controller/utils/route/route.js +11 -0
  44. package/out/controller/utils/view-msg/view-msg-controller.d.ts.map +1 -1
  45. package/out/controller/utils/view-msg/view-msg-controller.js +10 -1
  46. package/out/interface/controller/common/i-nav-view-msg/i-nav-view-msg.d.ts +18 -0
  47. package/out/interface/controller/common/i-nav-view-msg/i-nav-view-msg.d.ts.map +1 -1
  48. package/out/interface/controller/common/view-message/i-view-message.d.ts +9 -0
  49. package/out/interface/controller/common/view-message/i-view-message.d.ts.map +1 -1
  50. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts +1 -1
  51. package/out/interface/controller/controller/control/i-exp-bar-control.controller.d.ts.map +1 -1
  52. package/out/interface/controller/controller/control/i-tree.controller.d.ts +8 -0
  53. package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -1
  54. package/out/interface/controller/state/control/i-tree.state.d.ts +7 -0
  55. package/out/interface/controller/state/control/i-tree.state.d.ts.map +1 -1
  56. package/out/logic-scheduler/executor/app-ui-action-executor.d.ts.map +1 -1
  57. package/out/logic-scheduler/executor/app-ui-action-executor.js +4 -0
  58. package/out/service/service/entity/util/util.d.ts +1 -0
  59. package/out/service/service/entity/util/util.d.ts.map +1 -1
  60. package/out/service/service/entity/util/util.js +1 -0
  61. package/out/service/service/work-flow/work-flow.service.d.ts +11 -0
  62. package/out/service/service/work-flow/work-flow.service.d.ts.map +1 -1
  63. package/out/service/service/work-flow/work-flow.service.js +15 -2
  64. package/out/service/vo/control.vo.d.ts.map +1 -1
  65. package/out/service/vo/control.vo.js +11 -0
  66. package/out/service/vo/tree-node-data/tree-code-list-node-data.d.ts +0 -1
  67. package/out/service/vo/tree-node-data/tree-code-list-node-data.d.ts.map +1 -1
  68. package/out/service/vo/tree-node-data/tree-code-list-node-data.js +0 -1
  69. package/out/ui-action/provider/backend-ui-action-provider.d.ts.map +1 -1
  70. package/out/ui-action/provider/backend-ui-action-provider.js +3 -1
  71. package/package.json +3 -4
  72. package/src/controller/common/view/view.controller.ts +6 -0
  73. package/src/controller/control/calendar/calendar.controller.ts +5 -5
  74. package/src/controller/control/chart/generator/base-series-generator.ts +5 -2
  75. package/src/controller/control/exp-bar/calendar-exp-bar.controller.ts +2 -2
  76. package/src/controller/control/exp-bar/exp-bar.controller.ts +24 -13
  77. package/src/controller/control/exp-bar/tree-exp-bar.controller.ts +30 -11
  78. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.ts +7 -4
  79. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.ts +2 -2
  80. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.ts +14 -5
  81. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.ts +6 -3
  82. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.ts +4 -3
  83. package/src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts +3 -3
  84. package/src/controller/control/tab-exp-panel/tab-exp-panel.controller.ts +31 -11
  85. package/src/controller/control/tree/tree.controller.ts +36 -0
  86. package/src/controller/utils/index.ts +1 -0
  87. package/src/controller/utils/route/route.ts +11 -0
  88. package/src/controller/utils/view-msg/view-msg-controller.ts +11 -1
  89. package/src/interface/controller/common/i-nav-view-msg/i-nav-view-msg.ts +20 -0
  90. package/src/interface/controller/common/view-message/i-view-message.ts +10 -0
  91. package/src/interface/controller/controller/control/i-exp-bar-control.controller.ts +1 -1
  92. package/src/interface/controller/controller/control/i-tree.controller.ts +9 -0
  93. package/src/interface/controller/state/control/i-tree.state.ts +8 -0
  94. package/src/logic-scheduler/executor/app-ui-action-executor.ts +8 -1
  95. package/src/service/service/entity/util/util.ts +1 -0
  96. package/src/service/service/work-flow/work-flow.service.ts +20 -2
  97. package/src/service/vo/control.vo.ts +12 -0
  98. package/src/service/vo/tree-node-data/tree-code-list-node-data.ts +0 -3
  99. package/src/ui-action/provider/backend-ui-action-provider.ts +5 -1
package/dist/index.esm.js CHANGED
@@ -2892,7 +2892,7 @@ var require_base64 = __commonJS({
2892
2892
  var littleZ = 122;
2893
2893
  var zero = 48;
2894
2894
  var nine = 57;
2895
- var plus = 43;
2895
+ var plus3 = 43;
2896
2896
  var slash = 47;
2897
2897
  var littleOffset = 26;
2898
2898
  var numberOffset = 52;
@@ -2905,7 +2905,7 @@ var require_base64 = __commonJS({
2905
2905
  if (zero <= charCode && charCode <= nine) {
2906
2906
  return charCode - zero + numberOffset;
2907
2907
  }
2908
- if (charCode == plus) {
2908
+ if (charCode == plus3) {
2909
2909
  return 62;
2910
2910
  }
2911
2911
  if (charCode == slash) {
@@ -22697,6 +22697,19 @@ var WorkFlowService = class {
22697
22697
  }
22698
22698
  return data;
22699
22699
  }
22700
+ /**
22701
+ * 获取工作流实例标记
22702
+ *
22703
+ * @author zk
22704
+ * @date 2023-11-06 06:11:07
22705
+ * @private
22706
+ * @param {IParams} context
22707
+ * @return {*} {string}
22708
+ * @memberof WorkFlowService
22709
+ */
22710
+ getWFInstanceTag(context) {
22711
+ return context.srfprocessinstanceid || "alls";
22712
+ }
22700
22713
  /**
22701
22714
  * 根据当前步骤和任务获取工作流步骤数据(如:流程表单等)
22702
22715
  *
@@ -22739,7 +22752,9 @@ var WorkFlowService = class {
22739
22752
  async getWFHistory(context) {
22740
22753
  const deKeyValue = context[this.model.codeName.toLowerCase()];
22741
22754
  return this.app.net.get(
22742
- "".concat(this.getBaseUrl(), "/").concat(deKeyValue, "/process-instances/alls/history")
22755
+ "".concat(this.getBaseUrl(), "/").concat(deKeyValue, "/process-instances/").concat(this.getWFInstanceTag(
22756
+ context
22757
+ ), "/history")
22743
22758
  );
22744
22759
  }
22745
22760
  /**
@@ -22753,7 +22768,9 @@ var WorkFlowService = class {
22753
22768
  async getWFProcessDiagram(context) {
22754
22769
  const deKeyValue = context[this.model.codeName.toLowerCase()];
22755
22770
  return this.app.net.request(
22756
- "".concat(this.getBaseUrl(), "/").concat(deKeyValue, "/process-instances/alls/processdiagram"),
22771
+ "".concat(this.getBaseUrl(), "/").concat(deKeyValue, "/process-instances/").concat(this.getWFInstanceTag(
22772
+ context
22773
+ ), "/processdiagram"),
22757
22774
  {
22758
22775
  method: "post",
22759
22776
  data: {},
@@ -25403,6 +25420,16 @@ var ControlVO = class _ControlVO {
25403
25420
  configurable: true,
25404
25421
  value: $dataUIMap || /* @__PURE__ */ new Map()
25405
25422
  });
25423
+ Object.defineProperty(this, "srfactionparam", {
25424
+ get() {
25425
+ return this.$origin.srfactionparam;
25426
+ },
25427
+ set(val) {
25428
+ this.$origin.srfactionparam = val;
25429
+ },
25430
+ enumerable: true,
25431
+ configurable: true
25432
+ });
25406
25433
  ["srfkey", "srfmajortext"].forEach((key) => {
25407
25434
  if (Object.prototype.hasOwnProperty.call(this.$origin, key)) {
25408
25435
  Object.defineProperty(this, key, {
@@ -26074,7 +26101,6 @@ var TreeCodeListNodeData = class extends TreeNodeData {
26074
26101
  constructor(model, parentNodeData, opts) {
26075
26102
  super(model, parentNodeData, opts);
26076
26103
  const { data } = opts;
26077
- this.deData = data;
26078
26104
  this.text = data.text;
26079
26105
  this.value = data.value;
26080
26106
  this.id = parentNodeData ? "".concat(parentNodeData.id, ":").concat(model.id, "@").concat(this.value) : model.id + this.value;
@@ -27820,6 +27846,11 @@ var ControllerEvent = class {
27820
27846
  }
27821
27847
  };
27822
27848
 
27849
+ // src/controller/utils/route/route.ts
27850
+ function hasSubRoute(routeDepth) {
27851
+ return window.location.hash.split("/").length > routeDepth * 2 + 2;
27852
+ }
27853
+
27823
27854
  // src/controller/utils/util/util.ts
27824
27855
  import { isNil as isNil12 } from "ramda";
27825
27856
  function isValueChange(value, value2) {
@@ -28455,20 +28486,29 @@ var ViewMsgController = class _ViewMsgController {
28455
28486
  */
28456
28487
  calcStaticMsg(detail) {
28457
28488
  const { position: position1 } = detail;
28489
+ const viewMsg = this.viewMsgMap.get(detail.appViewMsgId);
28458
28490
  const {
28459
28491
  title,
28460
28492
  message,
28461
28493
  removeMode,
28462
28494
  position: position2,
28463
28495
  messageType
28464
- } = this.viewMsgMap.get(detail.appViewMsgId);
28496
+ } = viewMsg;
28497
+ const { userTag, userTag2, userTag3, userTag4 } = viewMsg;
28465
28498
  const position = position1 || position2;
28466
28499
  return {
28467
28500
  title,
28468
28501
  message,
28469
28502
  position,
28470
28503
  messageType,
28471
- removeMode
28504
+ removeMode,
28505
+ // 额外参数
28506
+ extraParams: {
28507
+ userTag,
28508
+ userTag2,
28509
+ userTag3,
28510
+ userTag4
28511
+ }
28472
28512
  };
28473
28513
  }
28474
28514
  /**
@@ -28867,6 +28907,11 @@ var ViewController = class extends BaseController {
28867
28907
  title: message.title,
28868
28908
  desc: message.message
28869
28909
  };
28910
+ if (message.extraParams.userTag) {
28911
+ Object.assign(modalParams, {
28912
+ confirmButtonText: message.extraParams.userTag
28913
+ });
28914
+ }
28870
28915
  if (message.messageType === "WARN") {
28871
28916
  await ibiz.modal.warning(modalParams);
28872
28917
  } else if (message.messageType === "ERROR") {
@@ -30054,8 +30099,8 @@ var CalendarController = class extends MDControlController {
30054
30099
  */
30055
30100
  getCurSelectDate(param) {
30056
30101
  const { selectedDate } = this.state;
30057
- const { start, end } = param;
30058
- if (!start || !end) {
30102
+ const { srfstartdate, srfenddate } = param;
30103
+ if (!srfstartdate || !srfenddate) {
30059
30104
  const firstDayOfMonth = new Date(
30060
30105
  selectedDate.getFullYear(),
30061
30106
  selectedDate.getMonth(),
@@ -30067,11 +30112,11 @@ var CalendarController = class extends MDControlController {
30067
30112
  1
30068
30113
  );
30069
30114
  return {
30070
- start: dayjs2(firstDayOfMonth).format("YYYY-MM-DD HH:mm:ss"),
30071
- end: dayjs2(lastDayOfMonth).format("YYYY-MM-DD HH:mm:ss")
30115
+ srfstartdate: dayjs2(firstDayOfMonth).format("YYYY-MM-DD HH:mm:ss"),
30116
+ srfenddate: dayjs2(lastDayOfMonth).format("YYYY-MM-DD HH:mm:ss")
30072
30117
  };
30073
30118
  }
30074
- return { start, end };
30119
+ return { srfstartdate, srfenddate };
30075
30120
  }
30076
30121
  /**
30077
30122
  * 获取请求参数
@@ -30154,7 +30199,7 @@ import { RuntimeError as RuntimeError32 } from "@ibiz-template/core";
30154
30199
  import { RuntimeModelError as RuntimeModelError25 } from "@ibiz-template/core";
30155
30200
 
30156
30201
  // src/controller/control/chart/generator/base-series-generator.ts
30157
- import { RuntimeModelError as RuntimeModelError24, toNumberOrNil } from "@ibiz-template/core";
30202
+ import { plus, RuntimeModelError as RuntimeModelError24, toNumberOrNil } from "@ibiz-template/core";
30158
30203
  import dayjs3 from "dayjs";
30159
30204
  import minMax from "dayjs/plugin/minMax";
30160
30205
  import isSameOrBefore from "dayjs/plugin/isSameOrBefore";
@@ -30308,7 +30353,10 @@ var BaseSeriesGenerator = class {
30308
30353
  if (!groupData[group].get(catalog)) {
30309
30354
  groupData[group].set(catalog, { value: 0 });
30310
30355
  }
30311
- groupData[group].get(catalog).value += item[this.valueField];
30356
+ groupData[group].get(catalog).value = plus(
30357
+ groupData[group].get(catalog).value,
30358
+ item[this.valueField]
30359
+ );
30312
30360
  groupData[group].get(catalog).deData = item;
30313
30361
  });
30314
30362
  return groupData;
@@ -32905,8 +32953,14 @@ var BackendUIActionProvider = class extends UIActionProviderBase {
32905
32953
  if (resultData.length === 0) {
32906
32954
  resultData.push({});
32907
32955
  }
32956
+ const actionData = res2.data.map(
32957
+ (item) => {
32958
+ var _a;
32959
+ return ((_a = item.getOrigin) == null ? void 0 : _a.call(item)) || item || {};
32960
+ }
32961
+ );
32908
32962
  resultData.forEach((item) => {
32909
- item.srfactionparam = res2.data;
32963
+ item.srfactionparam = actionData;
32910
32964
  });
32911
32965
  }
32912
32966
  }
@@ -34323,7 +34377,7 @@ var ExpBarControlController = class extends ControlController {
34323
34377
  this.xDataLoadSuccess(event);
34324
34378
  });
34325
34379
  this.xDataController.evt.on("onRemoveSuccess", () => {
34326
- this.defaultNavByFirstItem();
34380
+ this.navByFirstItem();
34327
34381
  });
34328
34382
  }
34329
34383
  if (this.toolbarController) {
@@ -34348,9 +34402,9 @@ var ExpBarControlController = class extends ControlController {
34348
34402
  xDataLoadSuccess(event) {
34349
34403
  if (event.isInitialLoad) {
34350
34404
  if (this.state.srfnav && this.routeDepth) {
34351
- this.defaultNavBySrfnav();
34405
+ this.navBySrfnav();
34352
34406
  } else {
34353
- this.defaultNavByFirstItem();
34407
+ this.navByFirstItem();
34354
34408
  }
34355
34409
  }
34356
34410
  }
@@ -34360,12 +34414,12 @@ var ExpBarControlController = class extends ControlController {
34360
34414
  * @date 2023-08-10 04:04:08
34361
34415
  * @protected
34362
34416
  */
34363
- defaultNavBySrfnav() {
34417
+ navBySrfnav() {
34364
34418
  var _a;
34365
34419
  const selectItem = (_a = this.xDataController) == null ? void 0 : _a.state.items.find(
34366
34420
  (item) => item[this.navKeyName] === this.state.srfnav
34367
34421
  );
34368
- const routeAndHasSub = this.routeDepth && window.location.hash.split("/").length > this.routeDepth * 2 + 2;
34422
+ const routeAndHasSub = this.routeDepth && hasSubRoute(this.routeDepth);
34369
34423
  if (routeAndHasSub) {
34370
34424
  if (selectItem) {
34371
34425
  this.xDataController.setSelection([selectItem]);
@@ -34373,13 +34427,25 @@ var ExpBarControlController = class extends ControlController {
34373
34427
  this._evt.emit("onNavViewChange", {
34374
34428
  navViewMsg: {
34375
34429
  key: this.state.srfnav,
34430
+ isRoutePushed: true,
34376
34431
  isCache: this.isCache
34377
34432
  },
34378
34433
  context: this.context
34379
34434
  });
34380
- } else if (selectItem) {
34435
+ return;
34436
+ }
34437
+ if (selectItem) {
34381
34438
  this.xDataController.setActive(selectItem);
34382
34439
  this.xDataController.setSelection([selectItem]);
34440
+ } else {
34441
+ this._evt.emit("onNavViewChange", {
34442
+ navViewMsg: {
34443
+ key: this.state.srfnav,
34444
+ is404: true,
34445
+ isCache: this.isCache
34446
+ },
34447
+ context: this.context
34448
+ });
34383
34449
  }
34384
34450
  }
34385
34451
  /**
@@ -34390,7 +34456,7 @@ var ExpBarControlController = class extends ControlController {
34390
34456
  * @date 2023-08-10 03:58:15
34391
34457
  * @protected
34392
34458
  */
34393
- defaultNavByFirstItem() {
34459
+ navByFirstItem() {
34394
34460
  const data = this.xDataController.state.items[0];
34395
34461
  if (!data) {
34396
34462
  this.state.srfnav = "";
@@ -34525,10 +34591,10 @@ var ExpBarControlController = class extends ControlController {
34525
34591
  * @date 2023-09-14 07:03:39
34526
34592
  * @param {{ srfnav?: string; path: string }} info 当前系统的路由的从一级到最后一级的所有路径。
34527
34593
  */
34528
- onRouterChange(info) {
34594
+ async onRouterChange(info) {
34529
34595
  if (this.state.srfnav !== info.srfnav) {
34530
34596
  this.state.srfnav = info.srfnav;
34531
- this.defaultNavBySrfnav();
34597
+ this.navBySrfnav();
34532
34598
  }
34533
34599
  }
34534
34600
  };
@@ -34563,12 +34629,12 @@ var CalendarExpBarController = class extends ExpBarControlController {
34563
34629
  }
34564
34630
  return controller;
34565
34631
  }
34566
- defaultNavBySrfnav() {
34632
+ navBySrfnav() {
34567
34633
  var _a;
34568
34634
  const selectItem = (_a = this.xDataController) == null ? void 0 : _a.state.items.find(
34569
34635
  (item) => item.navId === this.state.srfnav
34570
34636
  );
34571
- super.defaultNavBySrfnav();
34637
+ super.navBySrfnav();
34572
34638
  if (!selectItem) {
34573
34639
  return;
34574
34640
  }
@@ -34698,7 +34764,7 @@ var TreeExpBarController = class extends ExpBarControlController {
34698
34764
  ...result
34699
34765
  };
34700
34766
  }
34701
- defaultNavByFirstItem() {
34767
+ navByFirstItem() {
34702
34768
  const data = this.xDataController.state.items.find((node) => {
34703
34769
  if (!this.xDataController.model.rootVisible && this.xDataController.state.rootNodes.includes(node)) {
34704
34770
  return false;
@@ -34723,17 +34789,34 @@ var TreeExpBarController = class extends ExpBarControlController {
34723
34789
  }
34724
34790
  });
34725
34791
  if (this.state.srfnav) {
34726
- const expandedKeys = [];
34727
- this.state.srfnav.split(":").forEach((item, index) => {
34728
- if (index === 0) {
34729
- expandedKeys.push(item);
34730
- } else {
34731
- expandedKeys.push("".concat(expandedKeys[index - 1], ":").concat(item));
34732
- }
34733
- });
34734
- expandedKeys.pop();
34735
- this.defaultExpandedKeys = expandedKeys;
34792
+ this.defaultExpandedKeys = this.calcExpandKeys(this.state.srfnav);
34793
+ }
34794
+ }
34795
+ /**
34796
+ * 根据srfnav计算需要展开的节点标识
34797
+ * @author lxm
34798
+ * @date 2023-11-07 02:42:45
34799
+ * @param {string} srfnav
34800
+ * @return {*} {string[]}
34801
+ */
34802
+ calcExpandKeys(srfnav) {
34803
+ const expandedKeys = [];
34804
+ srfnav.split(":").forEach((item, index) => {
34805
+ if (index === 0) {
34806
+ expandedKeys.push(item);
34807
+ } else {
34808
+ expandedKeys.push("".concat(expandedKeys[index - 1], ":").concat(item));
34809
+ }
34810
+ });
34811
+ expandedKeys.pop();
34812
+ return expandedKeys;
34813
+ }
34814
+ async onRouterChange(info) {
34815
+ if (this.state.srfnav !== info.srfnav) {
34816
+ const expandKeys = this.calcExpandKeys(info.srfnav);
34817
+ await this.xDataController.expandNodeByKey(expandKeys);
34736
34818
  }
34819
+ await super.onRouterChange(info);
34737
34820
  }
34738
34821
  };
34739
34822
 
@@ -36312,14 +36395,14 @@ var FormMDCtrlDataViewController = class extends FormMDCtrlControlController {
36312
36395
  this.state = { isSelect: false };
36313
36396
  }
36314
36397
  /**
36315
- * 表格挂载后把控制器抛出来
36398
+ * 卡片挂载后把控制器抛出来
36316
36399
  *
36317
36400
  * @author zk
36318
36401
  * @date 2023-07-30 07:07:25
36319
36402
  * @param {EventBase} event
36320
36403
  * @memberof FormMDCtrlDataViewController
36321
36404
  */
36322
- onDataViewMounted(event) {
36405
+ onDataViewCreated(event) {
36323
36406
  this.dataViewController = event.ctrl;
36324
36407
  }
36325
36408
  /**
@@ -36342,6 +36425,9 @@ var FormMDCtrlDataViewController = class extends FormMDCtrlControlController {
36342
36425
  * @memberof FormMDCtrlController
36343
36426
  */
36344
36427
  onDataRemove() {
36428
+ if (!this.dataViewController) {
36429
+ return;
36430
+ }
36345
36431
  this.dataViewController.remove();
36346
36432
  this.parent.state.contentCtrlData = this.dataViewController.state.items;
36347
36433
  this.parent.setFormDataValue();
@@ -36366,7 +36452,8 @@ var FormMDCtrlDataViewController = class extends FormMDCtrlControlController {
36366
36452
  * @memberof FormMDCtrlContentTypeController
36367
36453
  */
36368
36454
  async initData() {
36369
- this.dataViewController.load();
36455
+ var _a;
36456
+ (_a = this.dataViewController) == null ? void 0 : _a.load();
36370
36457
  }
36371
36458
  /**
36372
36459
  * 数据插入
@@ -37086,14 +37173,14 @@ var FormMDCtrlFormController = class extends FormMDCtrlControlController {
37086
37173
  this.state = { data: [] };
37087
37174
  }
37088
37175
  /**
37089
- * 表格挂载后把控制器抛出来
37176
+ * 表单初始化后把控制器抛出来
37090
37177
  *
37091
37178
  * @author zk
37092
37179
  * @date 2023-07-30 07:07:25
37093
37180
  * @param {EventBase} event
37094
37181
  * @memberof FormMDCtrlGridController
37095
37182
  */
37096
- onControlMounted(event, index) {
37183
+ onControlCreated(event, index) {
37097
37184
  const formController = event.ctrl;
37098
37185
  this.controlControllerArray[index] = formController;
37099
37186
  formController.load();
@@ -37274,14 +37361,14 @@ var FormMDCtrlGridController = class extends FormMDCtrlControlController {
37274
37361
  this.state = { isSelect: false };
37275
37362
  }
37276
37363
  /**
37277
- * 表格挂载后把控制器抛出来
37364
+ * 表格初始化后把控制器抛出来
37278
37365
  *
37279
37366
  * @author zk
37280
37367
  * @date 2023-07-30 07:07:25
37281
37368
  * @param {EventBase} event
37282
37369
  * @memberof FormMDCtrlGridController
37283
37370
  */
37284
- onGridMounted(event) {
37371
+ onGridCreated(event) {
37285
37372
  this.gridController = event.ctrl;
37286
37373
  }
37287
37374
  /**
@@ -37304,6 +37391,9 @@ var FormMDCtrlGridController = class extends FormMDCtrlControlController {
37304
37391
  * @memberof FormMDCtrlController
37305
37392
  */
37306
37393
  onDataRemove() {
37394
+ if (!this.gridController) {
37395
+ return;
37396
+ }
37307
37397
  this.gridController.remove();
37308
37398
  this.parent.state.contentCtrlData = this.gridController.state.items;
37309
37399
  this.parent.setFormDataValue();
@@ -37328,7 +37418,8 @@ var FormMDCtrlGridController = class extends FormMDCtrlControlController {
37328
37418
  * @memberof FormMDCtrlContentTypeController
37329
37419
  */
37330
37420
  async initData() {
37331
- this.gridController.load();
37421
+ var _a;
37422
+ (_a = this.gridController) == null ? void 0 : _a.load();
37332
37423
  }
37333
37424
  /**
37334
37425
  * 数据插入
@@ -37339,6 +37430,9 @@ var FormMDCtrlGridController = class extends FormMDCtrlControlController {
37339
37430
  * @memberof FormMDCtrlContentTypeController
37340
37431
  */
37341
37432
  async onDataInsert() {
37433
+ if (!this.gridController) {
37434
+ return;
37435
+ }
37342
37436
  await this.gridController.newRow();
37343
37437
  this.parent.state.contentCtrlData = this.gridController.state.items;
37344
37438
  this.parent.setFormDataValue();
@@ -37372,6 +37466,9 @@ var FormMDCtrlGridController = class extends FormMDCtrlControlController {
37372
37466
  * @memberof FormMDCtrlFormController
37373
37467
  */
37374
37468
  async validate() {
37469
+ if (!this.gridController) {
37470
+ return true;
37471
+ }
37375
37472
  const { rows } = this.gridController.state;
37376
37473
  const values = await Promise.all(
37377
37474
  rows.map((row) => this.gridController.validate(row))
@@ -37411,7 +37508,7 @@ var FormMDCtrlListController = class extends FormMDCtrlControlController {
37411
37508
  * @param {EventBase} event
37412
37509
  * @memberof FormMDCtrlListController
37413
37510
  */
37414
- onListMounted(event) {
37511
+ onListCreated(event) {
37415
37512
  this.listController = event.ctrl;
37416
37513
  }
37417
37514
  /**
@@ -37434,6 +37531,9 @@ var FormMDCtrlListController = class extends FormMDCtrlControlController {
37434
37531
  * @memberof FormMDCtrlController
37435
37532
  */
37436
37533
  onDataRemove() {
37534
+ if (!this.listController) {
37535
+ return;
37536
+ }
37437
37537
  this.listController.remove();
37438
37538
  this.parent.state.contentCtrlData = this.listController.state.items;
37439
37539
  this.parent.setFormDataValue();
@@ -37458,7 +37558,8 @@ var FormMDCtrlListController = class extends FormMDCtrlControlController {
37458
37558
  * @memberof FormMDCtrlContentTypeController
37459
37559
  */
37460
37560
  async initData() {
37461
- this.listController.load();
37561
+ var _a;
37562
+ (_a = this.listController) == null ? void 0 : _a.load();
37462
37563
  }
37463
37564
  /**
37464
37565
  * 数据插入
@@ -37820,11 +37921,12 @@ var FormMDCtrlController = class extends FormDetailController {
37820
37921
  };
37821
37922
 
37822
37923
  // src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.ts
37924
+ import { clone as clone20 } from "ramda";
37823
37925
  var FormMDCtrlItemController = class extends EditFormController {
37824
37926
  constructor(model, context, params, ctx, data, form) {
37825
- const { model: _model } = form;
37826
- Object.assign(_model, model);
37827
- super(_model, context, params, ctx);
37927
+ const tempModel = clone20(form.model);
37928
+ Object.assign(tempModel, model, { name: void 0 });
37929
+ super(tempModel, context, params, ctx);
37828
37930
  this.state.data = data;
37829
37931
  this.state.isSimple = true;
37830
37932
  }
@@ -38125,7 +38227,7 @@ import {
38125
38227
  RuntimeError as RuntimeError47,
38126
38228
  RuntimeModelError as RuntimeModelError53
38127
38229
  } from "@ibiz-template/core";
38128
- import { clone as clone20 } from "ramda";
38230
+ import { clone as clone21 } from "ramda";
38129
38231
 
38130
38232
  // src/controller/control/grid/grid/grid.service.ts
38131
38233
  var GridService = class extends MDControlService {
@@ -38785,7 +38887,7 @@ var GridController = class extends MDControlController {
38785
38887
  throw new RuntimeError47("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");
38786
38888
  }
38787
38889
  if (row.data.srfuf === 1 /* UPDATE */) {
38788
- row.cacheData = clone20(row.data);
38890
+ row.cacheData = clone21(row.data);
38789
38891
  const defaultVal = this.calcDefaultValue(row.data, false);
38790
38892
  Object.assign(row.data, defaultVal);
38791
38893
  }
@@ -38896,7 +38998,7 @@ var GridController = class extends MDControlController {
38896
38998
  async exportData(_args) {
38897
38999
  const items = this.fieldColumns;
38898
39000
  const formatExcelData = (data2) => {
38899
- const cloneData = clone20(
39001
+ const cloneData = clone21(
38900
39002
  data2.map((item) => {
38901
39003
  return item.getOrigin();
38902
39004
  })
@@ -39002,10 +39104,10 @@ var GridController = class extends MDControlController {
39002
39104
  };
39003
39105
 
39004
39106
  // src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts
39005
- import { DataTypes as DataTypes3, ModelError as ModelError26 } from "@ibiz-template/core";
39107
+ import { DataTypes as DataTypes3, ModelError as ModelError26, plus as plus2 } from "@ibiz-template/core";
39006
39108
  import dayjs4 from "dayjs";
39007
39109
  import { debounce as debounce3 } from "lodash-es";
39008
- import { clone as clone21, isNil as isNil21 } from "ramda";
39110
+ import { clone as clone22, isNil as isNil21 } from "ramda";
39009
39111
  var GridFieldColumnController = class extends GridColumnController {
39010
39112
  constructor() {
39011
39113
  super(...arguments);
@@ -39109,7 +39211,7 @@ var GridFieldColumnController = class extends GridColumnController {
39109
39211
  srfkey: value,
39110
39212
  ...wfContext
39111
39213
  });
39112
- const tempParams = clone21(this.params);
39214
+ const tempParams = clone22(this.params);
39113
39215
  const { context: newContext, params: newParams } = this.handlePublicParams(
39114
39216
  row.data,
39115
39217
  tempContext,
@@ -39188,10 +39290,10 @@ var GridFieldColumnController = class extends GridColumnController {
39188
39290
  if (this.grid.model.aggMode === "PAGE") {
39189
39291
  switch (aggMode) {
39190
39292
  case "SUM":
39191
- aggValue = items.map((item) => item[fieldName]).reduce((a, b) => a + b, 0);
39293
+ aggValue = items.map((item) => item[fieldName]).reduce((a, b) => plus2(a, b), 0);
39192
39294
  break;
39193
39295
  case "AVG":
39194
- aggValue = items.map((item) => item[fieldName]).reduce((a, b) => a + b, 0) / items.length;
39296
+ aggValue = items.map((item) => item[fieldName]).reduce((a, b) => plus2(a, b), 0) / items.length;
39195
39297
  break;
39196
39298
  case "MAX":
39197
39299
  aggValue = Math.max(...items.map((item) => item[fieldName]));
@@ -40798,6 +40900,18 @@ var TabExpPanelController = class extends ControlController {
40798
40900
  }
40799
40901
  return ibiz.config.view.expCacheMode.includes(this.model.controlType);
40800
40902
  }
40903
+ /**
40904
+ * 当前路由视图的层级
40905
+ *
40906
+ * @author zk
40907
+ * @date 2023-07-11 10:07:20
40908
+ * @readonly
40909
+ * @type {(number | undefined)}
40910
+ * @memberof ExpBarControlController
40911
+ */
40912
+ get routeDepth() {
40913
+ return this.view.modal.routeDepth;
40914
+ }
40801
40915
  /**
40802
40916
  * 初始化state的属性
40803
40917
  *
@@ -40876,23 +40990,22 @@ var TabExpPanelController = class extends ControlController {
40876
40990
  * @memberof TabExpPanelController
40877
40991
  */
40878
40992
  initDefaultPage() {
40879
- const initFirstPage = () => {
40880
- this.state.activeName = this.state.tabPages[0].tabTag;
40881
- this.handleTabChange();
40882
- };
40883
- if (!this.state.defaultTabName) {
40884
- initFirstPage();
40885
- } else {
40993
+ if (this.state.defaultTabName) {
40886
40994
  const activeTab = this.state.tabPages.find(
40887
40995
  (item) => item.tabTag === this.state.defaultTabName
40888
40996
  );
40889
- if (!activeTab) {
40890
- initFirstPage();
40891
- } else {
40997
+ if (activeTab) {
40892
40998
  this.state.activeName = activeTab.tabTag;
40893
- this.changeToTab();
40999
+ this.changeToTab(
41000
+ this.activeTabViewPanelModel,
41001
+ // 路由模式下并且有子路由
41002
+ this.routeDepth !== void 0 && hasSubRoute(this.routeDepth)
41003
+ );
41004
+ return;
40894
41005
  }
40895
41006
  }
41007
+ this.state.activeName = this.state.tabPages[0].tabTag;
41008
+ this.handleTabChange();
40896
41009
  }
40897
41010
  /**
40898
41011
  * 切换分页
@@ -40901,8 +41014,11 @@ var TabExpPanelController = class extends ControlController {
40901
41014
  * @protected
40902
41015
  * @param {IDETabViewPanel} [tab=this.activeTabViewPanelModel!]
40903
41016
  */
40904
- changeToTab(tab = this.activeTabViewPanelModel) {
41017
+ changeToTab(tab = this.activeTabViewPanelModel, isRoutePushed = false) {
40905
41018
  const navViewMsg = this.getNavViewMsg(tab);
41019
+ if (isRoutePushed === true) {
41020
+ navViewMsg.isRoutePushed = true;
41021
+ }
40906
41022
  this.evt.emit("onNavViewChange", { navViewMsg });
40907
41023
  }
40908
41024
  /**
@@ -41278,6 +41394,7 @@ var TreeController = class extends MDControlController {
41278
41394
  super.initState();
41279
41395
  this.state.defaultExpandedKeys = [];
41280
41396
  this.state.expandedKeys = [];
41397
+ this.state.navigational = false;
41281
41398
  this.state.size = 0;
41282
41399
  }
41283
41400
  async onCreated() {
@@ -41371,6 +41488,12 @@ var TreeController = class extends MDControlController {
41371
41488
  * @memberof TreeController
41372
41489
  */
41373
41490
  async onTreeNodeClick(nodeData) {
41491
+ if (this.state.navigational) {
41492
+ const nodeModel = this.getNodeModel(nodeData.nodeId);
41493
+ if (!(nodeModel == null ? void 0 : nodeModel.navAppViewId)) {
41494
+ return;
41495
+ }
41496
+ }
41374
41497
  if (this.state.singleSelect) {
41375
41498
  const { selectedData } = this.state;
41376
41499
  const filterArr = selectedData.filter((item) => item.id !== nodeData.id);
@@ -41536,6 +41659,26 @@ var TreeController = class extends MDControlController {
41536
41659
  children: nodes
41537
41660
  });
41538
41661
  }
41662
+ async expandNodeByKey(expandKeys) {
41663
+ const noExpandKeys = expandKeys.filter(
41664
+ (key) => !this.state.expandedKeys.includes(key)
41665
+ );
41666
+ if (noExpandKeys.length === 0) {
41667
+ return;
41668
+ }
41669
+ const existNodes = this.state.items.filter(
41670
+ (item) => noExpandKeys.includes(item.id)
41671
+ );
41672
+ this.state.expandedKeys.push(...noExpandKeys);
41673
+ if (existNodes.length === 0) {
41674
+ return;
41675
+ }
41676
+ await Promise.all(
41677
+ existNodes.map((node) => {
41678
+ return this.loadNodes(node);
41679
+ })
41680
+ );
41681
+ }
41539
41682
  };
41540
41683
 
41541
41684
  // src/controller/control/wizard-panel/wizard-panel.controller.ts
@@ -43761,7 +43904,7 @@ var ViewEngineBase = class {
43761
43904
 
43762
43905
  // src/engine/md-view.engine.ts
43763
43906
  import { RuntimeModelError as RuntimeModelError58 } from "@ibiz-template/core";
43764
- import { clone as clone22 } from "ramda";
43907
+ import { clone as clone23 } from "ramda";
43765
43908
  var MDViewEngine = class extends ViewEngineBase {
43766
43909
  /**
43767
43910
  * 多数据部件名称
@@ -43958,7 +44101,7 @@ var MDViewEngine = class extends ViewEngineBase {
43958
44101
  if (!openAppViewLogic) {
43959
44102
  throw new RuntimeModelError58(this.view.model, "\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");
43960
44103
  }
43961
- const params = clone22(this.view.params);
44104
+ const params = clone23(this.view.params);
43962
44105
  if (copyMode) {
43963
44106
  params.srfcopymode = copyMode;
43964
44107
  }
@@ -45185,9 +45328,16 @@ var ControlEventTrigger = class extends LogicTrigger {
45185
45328
  };
45186
45329
 
45187
45330
  // src/logic-scheduler/executor/app-ui-action-executor.ts
45331
+ import { RuntimeModelError as RuntimeModelError63 } from "@ibiz-template/core";
45188
45332
  var AppDEUIActionExecutor = class extends LogicExecutor {
45189
45333
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
45190
45334
  execute(executeParams) {
45335
+ if (!this.logic.appDEUIActionId) {
45336
+ throw new RuntimeModelError63(
45337
+ this.logic,
45338
+ "\u903B\u8F91\u4E2D\u7F3A\u5C11\u89E6\u53D1\u5E94\u7528\u5B9E\u4F53\u754C\u9762\u884C\u4E3Aid"
45339
+ );
45340
+ }
45191
45341
  UIActionUtil.execAndResolved(this.logic.appDEUIActionId, executeParams);
45192
45342
  }
45193
45343
  };
@@ -45596,6 +45746,7 @@ export {
45596
45746
  getWFSubmitViewId,
45597
45747
  handleAllSettled,
45598
45748
  hasDeCodeName,
45749
+ hasSubRoute,
45599
45750
  importData,
45600
45751
  install,
45601
45752
  installCommand,