@ibiz-template/runtime 0.1.26 → 0.1.27

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 (79) hide show
  1. package/dist/index.esm.js +452 -261
  2. package/dist/index.system.min.js +1 -1
  3. package/dist/index.system.min.js.map +1 -1
  4. package/out/controller/common/control/md-control.controller.d.ts +1 -0
  5. package/out/controller/common/control/md-control.controller.d.ts.map +1 -1
  6. package/out/controller/common/control/md-control.controller.js +7 -0
  7. package/out/controller/control/data-view/data-view.controller.d.ts +42 -1
  8. package/out/controller/control/data-view/data-view.controller.d.ts.map +1 -1
  9. package/out/controller/control/data-view/data-view.controller.js +126 -0
  10. package/out/controller/control/exp-bar/exp-bar.controller.d.ts.map +1 -1
  11. package/out/controller/control/exp-bar/exp-bar.controller.js +4 -1
  12. package/out/controller/control/form/edit-form/edit-form.controller.d.ts +1 -0
  13. package/out/controller/control/form/edit-form/edit-form.controller.d.ts.map +1 -1
  14. package/out/controller/control/form/edit-form/edit-form.controller.js +7 -0
  15. package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts.map +1 -1
  16. package/out/controller/control/form/form-detail/form-item/form-item.controller.js +10 -68
  17. package/out/controller/control/form/search-form/search-form.controller.d.ts +1 -0
  18. package/out/controller/control/form/search-form/search-form.controller.d.ts.map +1 -1
  19. package/out/controller/control/form/search-form/search-form.controller.js +7 -0
  20. package/out/controller/control/grid/grid/grid-row.state.d.ts +1 -0
  21. package/out/controller/control/grid/grid/grid-row.state.d.ts.map +1 -1
  22. package/out/controller/control/grid/grid/grid.controller.d.ts +10 -0
  23. package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
  24. package/out/controller/control/grid/grid/grid.controller.js +61 -17
  25. package/out/controller/control/kanban/kanban.controller.d.ts +1 -34
  26. package/out/controller/control/kanban/kanban.controller.d.ts.map +1 -1
  27. package/out/controller/control/kanban/kanban.controller.js +0 -83
  28. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.d.ts +20 -0
  29. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.d.ts.map +1 -1
  30. package/out/controller/control/tab-exp-panel/tab-exp-panel.controller.js +45 -0
  31. package/out/controller/utils/index.d.ts +1 -0
  32. package/out/controller/utils/index.d.ts.map +1 -1
  33. package/out/controller/utils/index.js +1 -0
  34. package/out/controller/utils/value-default/value-default.d.ts +37 -0
  35. package/out/controller/utils/value-default/value-default.d.ts.map +1 -0
  36. package/out/controller/utils/value-default/value-default.js +65 -0
  37. package/out/de-logic/de-logic-node/end-node/end-node.d.ts.map +1 -1
  38. package/out/de-logic/de-logic-node/end-node/end-node.js +4 -0
  39. package/out/engine/md-view.engine.d.ts.map +1 -1
  40. package/out/engine/md-view.engine.js +7 -0
  41. package/out/interface/controller/state/control/i-control.state.d.ts +7 -0
  42. package/out/interface/controller/state/control/i-control.state.d.ts.map +1 -1
  43. package/out/interface/controller/state/control/i-data-view-control.state.d.ts +8 -0
  44. package/out/interface/controller/state/control/i-data-view-control.state.d.ts.map +1 -1
  45. package/out/interface/controller/state/control/i-grid.state.d.ts +7 -0
  46. package/out/interface/controller/state/control/i-grid.state.d.ts.map +1 -1
  47. package/out/interface/controller/state/control/i-kanban.state.d.ts +0 -8
  48. package/out/interface/controller/state/control/i-kanban.state.d.ts.map +1 -1
  49. package/out/interface/controller/state/control/i-md-control.state.d.ts +14 -0
  50. package/out/interface/controller/state/control/i-md-control.state.d.ts.map +1 -1
  51. package/out/interface/controller/state/control/i-tab-exp-panel.state.d.ts +8 -0
  52. package/out/interface/controller/state/control/i-tab-exp-panel.state.d.ts.map +1 -1
  53. package/out/model/layout/layout.d.ts.map +1 -1
  54. package/out/model/layout/layout.js +17 -1
  55. package/out/ui-logic/ui-logic-node/end-node/end-node.d.ts.map +1 -1
  56. package/out/ui-logic/ui-logic-node/end-node/end-node.js +4 -0
  57. package/package.json +4 -4
  58. package/src/controller/common/control/md-control.controller.ts +9 -0
  59. package/src/controller/control/data-view/data-view.controller.ts +147 -0
  60. package/src/controller/control/exp-bar/exp-bar.controller.ts +5 -1
  61. package/src/controller/control/form/edit-form/edit-form.controller.ts +9 -0
  62. package/src/controller/control/form/form-detail/form-item/form-item.controller.ts +13 -67
  63. package/src/controller/control/form/search-form/search-form.controller.ts +9 -0
  64. package/src/controller/control/grid/grid/grid-row.state.ts +2 -0
  65. package/src/controller/control/grid/grid/grid.controller.ts +69 -18
  66. package/src/controller/control/kanban/kanban.controller.ts +1 -98
  67. package/src/controller/control/tab-exp-panel/tab-exp-panel.controller.ts +45 -0
  68. package/src/controller/utils/index.ts +1 -0
  69. package/src/controller/utils/value-default/value-default.ts +110 -0
  70. package/src/de-logic/de-logic-node/end-node/end-node.ts +6 -0
  71. package/src/engine/md-view.engine.ts +8 -0
  72. package/src/interface/controller/state/control/i-control.state.ts +8 -0
  73. package/src/interface/controller/state/control/i-data-view-control.state.ts +10 -1
  74. package/src/interface/controller/state/control/i-grid.state.ts +8 -0
  75. package/src/interface/controller/state/control/i-kanban.state.ts +0 -9
  76. package/src/interface/controller/state/control/i-md-control.state.ts +16 -0
  77. package/src/interface/controller/state/control/i-tab-exp-panel.state.ts +9 -0
  78. package/src/model/layout/layout.ts +16 -2
  79. package/src/ui-logic/ui-logic-node/end-node/end-node.ts +6 -0
package/dist/index.esm.js CHANGED
@@ -71,10 +71,10 @@ var require_utils = __commonJS({
71
71
  };
72
72
  }
73
73
  exports.isFunction = isFunction2;
74
- var isArray5 = Array.isArray || function(value) {
74
+ var isArray6 = Array.isArray || function(value) {
75
75
  return value && typeof value === "object" ? toString.call(value) === "[object Array]" : false;
76
76
  };
77
- exports.isArray = isArray5;
77
+ exports.isArray = isArray6;
78
78
  function indexOf(array, value) {
79
79
  for (var i = 0, len = array.length; i < len; i++) {
80
80
  if (array[i] === value) {
@@ -102,7 +102,7 @@ var require_utils = __commonJS({
102
102
  function isEmpty9(value) {
103
103
  if (!value && value !== 0) {
104
104
  return true;
105
- } else if (isArray5(value) && value.length === 0) {
105
+ } else if (isArray6(value) && value.length === 0) {
106
106
  return true;
107
107
  } else {
108
108
  return false;
@@ -6832,6 +6832,7 @@ function parseUserParams(userParams) {
6832
6832
  }
6833
6833
 
6834
6834
  // src/model/layout/layout.ts
6835
+ import { isArray as isArray2, isObject, isString } from "lodash-es";
6835
6836
  function calcLayoutHeightWidth(layoutPos) {
6836
6837
  const { width, height, widthMode, heightMode } = layoutPos;
6837
6838
  const result = { width: "", height: "" };
@@ -6926,10 +6927,23 @@ function calcGridLayoutPos(layoutPos) {
6926
6927
  };
6927
6928
  }
6928
6929
  function calcDynaClass(expression, data) {
6929
- return ScriptFactory.execScriptFn({ data }, expression, {
6930
+ const classArr = [];
6931
+ const result = ScriptFactory.execScriptFn({ data }, expression, {
6930
6932
  singleRowReturn: true,
6931
6933
  isAsync: false
6932
6934
  });
6935
+ if (isString(result)) {
6936
+ classArr.push(result);
6937
+ } else if (isArray2(result)) {
6938
+ classArr.push(...result);
6939
+ } else if (isObject(result)) {
6940
+ Object.keys(result).forEach((key) => {
6941
+ if (result[key]) {
6942
+ classArr.push(key);
6943
+ }
6944
+ });
6945
+ }
6946
+ return classArr;
6933
6947
  }
6934
6948
 
6935
6949
  // src/model/main-state/main-state.ts
@@ -12040,6 +12054,9 @@ var EndNode = class extends DELogicNode {
12040
12054
  async exec(ctx) {
12041
12055
  ctx.isEndNode = true;
12042
12056
  const { returnParamId, returnType, rawValue } = this.model;
12057
+ if (!returnType) {
12058
+ return;
12059
+ }
12043
12060
  switch (returnType) {
12044
12061
  case "NONEVALUE":
12045
12062
  ctx.result = void 0;
@@ -13524,7 +13541,7 @@ var ControlService = class {
13524
13541
 
13525
13542
  // src/service/service/control/md-control.service.ts
13526
13543
  import { RuntimeError as RuntimeError15 } from "@ibiz-template/core";
13527
- import { isArray as isArray2 } from "qx-util";
13544
+ import { isArray as isArray3 } from "qx-util";
13528
13545
  var MDControlService = class extends ControlService {
13529
13546
  /**
13530
13547
  * 执行查询多条数据的方法
@@ -13656,7 +13673,7 @@ var MDControlService = class extends ControlService {
13656
13673
  }
13657
13674
  }
13658
13675
  if (res.ok) {
13659
- if (isArray2(res.data)) {
13676
+ if (isArray3(res.data)) {
13660
13677
  res.data = res.data.map((item) => this.toUIData(item));
13661
13678
  } else {
13662
13679
  res.data = this.toUIData(res.data);
@@ -14529,9 +14546,9 @@ var PanelNotifyState = /* @__PURE__ */ ((PanelNotifyState2) => {
14529
14546
  })(PanelNotifyState || {});
14530
14547
 
14531
14548
  // src/controller/common/view/view.controller.ts
14532
- import { createUUID as createUUID2, notNilEmpty as notNilEmpty6 } from "qx-util";
14533
- import { IBizContext as IBizContext2, RuntimeError as RuntimeError22 } from "@ibiz-template/core";
14534
- import { isEmpty as isEmpty8, isNil as isNil12, isNotNil as isNotNil2 } from "ramda";
14549
+ import { createUUID as createUUID3, notNilEmpty as notNilEmpty6 } from "qx-util";
14550
+ import { IBizContext as IBizContext2, RuntimeError as RuntimeError23 } from "@ibiz-template/core";
14551
+ import { isEmpty as isEmpty8, isNil as isNil13, isNotNil as isNotNil3 } from "ramda";
14535
14552
 
14536
14553
  // src/controller/utils/loading/loading.state.ts
14537
14554
  import { NOOP } from "@ibiz-template/core";
@@ -15250,6 +15267,60 @@ var ValueExUtil = class {
15250
15267
  }
15251
15268
  };
15252
15269
 
15270
+ // src/controller/utils/value-default/value-default.ts
15271
+ import { RuntimeError as RuntimeError22, ModelError as ModelError16 } from "@ibiz-template/core";
15272
+ import dayjs from "dayjs";
15273
+ import { createUUID as createUUID2 } from "qx-util";
15274
+ import { isNil as isNil12, isNotNil as isNotNil2 } from "ramda";
15275
+ function getDefaultValue(opts, origins) {
15276
+ var _a;
15277
+ const { name, valueType, defaultValue, valueFormat } = opts;
15278
+ const { data, context, params } = origins;
15279
+ if (isNil12(valueType) && isNil12(defaultValue)) {
15280
+ return;
15281
+ }
15282
+ if (valueType === "RESET") {
15283
+ return null;
15284
+ }
15285
+ const value = data[name];
15286
+ if (isNotNil2(value)) {
15287
+ return;
15288
+ }
15289
+ if (!valueType && defaultValue) {
15290
+ return defaultValue;
15291
+ }
15292
+ switch (valueType) {
15293
+ case "APPDATA":
15294
+ if (Object.prototype.hasOwnProperty.call(params, defaultValue)) {
15295
+ return params[defaultValue];
15296
+ }
15297
+ if (Object.prototype.hasOwnProperty.call(context, defaultValue)) {
15298
+ return context[defaultValue];
15299
+ }
15300
+ break;
15301
+ case "OPERATORNAME":
15302
+ return context.srfusername;
15303
+ case "OPERATOR":
15304
+ return context.srfuserid;
15305
+ case "CURTIME":
15306
+ return dayjs().format(valueFormat);
15307
+ case "PARAM":
15308
+ return data[defaultValue];
15309
+ case "SESSION":
15310
+ case "APPLICATION":
15311
+ if (!((_a = ibiz.appData) == null ? void 0 : _a.context)) {
15312
+ throw new RuntimeError22("appdata.context\u4E0D\u5B58\u5728");
15313
+ }
15314
+ return ibiz.appData.context[defaultValue];
15315
+ case "CONTEXT":
15316
+ return params[defaultValue];
15317
+ case "UNIQUEID":
15318
+ return createUUID2();
15319
+ default:
15320
+ throw new ModelError16({}, "\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(valueType, "]\u672A\u652F\u6301"));
15321
+ }
15322
+ }
15323
+
15253
15324
  // src/controller/common/base.controller.ts
15254
15325
  var SELF_KEY = "__self";
15255
15326
  var BaseController = class {
@@ -15595,7 +15666,7 @@ var ViewController = class extends BaseController {
15595
15666
  async onCreated() {
15596
15667
  await super.onCreated();
15597
15668
  this.modal.hooks.beforeDismiss.tapPromise(async (modalData) => {
15598
- if (isNotNil2(this.state.closeOK)) {
15669
+ if (isNotNil3(this.state.closeOK)) {
15599
15670
  modalData.ok = this.state.closeOK;
15600
15671
  }
15601
15672
  await this._evt.emit("onCloseView", { ...modalData });
@@ -15665,8 +15736,8 @@ var ViewController = class extends BaseController {
15665
15736
  */
15666
15737
  handleContextParams() {
15667
15738
  this.context.srfappid = this.model.appId;
15668
- if (isNil12(this.context.srfsessionid) || isEmpty8(this.context.srfsessionid)) {
15669
- this.context.srfsessionid = createUUID2();
15739
+ if (isNil13(this.context.srfsessionid) || isEmpty8(this.context.srfsessionid)) {
15740
+ this.context.srfsessionid = createUUID3();
15670
15741
  }
15671
15742
  const navContexts = this.model.appViewNavContexts;
15672
15743
  let context = {};
@@ -15697,7 +15768,7 @@ var ViewController = class extends BaseController {
15697
15768
  async callUIAction(key, args) {
15698
15769
  const result = this.call(key, args);
15699
15770
  if (result === void 0) {
15700
- throw new RuntimeError22("\u6CA1\u6709\u5F15\u64CE\u652F\u6301\u9884\u7F6E\u754C\u9762\u884C\u4E3A".concat(key));
15771
+ throw new RuntimeError23("\u6CA1\u6709\u5F15\u64CE\u652F\u6301\u9884\u7F6E\u754C\u9762\u884C\u4E3A".concat(key));
15701
15772
  }
15702
15773
  return result;
15703
15774
  }
@@ -15928,7 +15999,7 @@ var CodeListEditorController = class extends EditorController {
15928
15999
 
15929
16000
  // src/controller/common/control/control.controller.ts
15930
16001
  import { NoticeError } from "@ibiz-template/core";
15931
- import { isNil as isNil13 } from "ramda";
16002
+ import { isNil as isNil14 } from "ramda";
15932
16003
  var ControlController = class extends BaseController {
15933
16004
  /**
15934
16005
  * Creates an instance of ControlController.
@@ -16105,7 +16176,7 @@ var ControlController = class extends BaseController {
16105
16176
  let message;
16106
16177
  let duration;
16107
16178
  if (msgItem && msgItem.content) {
16108
- duration = isNil13(msgItem.timeout) ? void 0 : msgItem.timeout / 1e3;
16179
+ duration = isNil14(msgItem.timeout) ? void 0 : msgItem.timeout / 1e3;
16109
16180
  const scriptParams = { ...this.getEventArgs() };
16110
16181
  if (opts == null ? void 0 : opts.data) {
16111
16182
  scriptParams.data = opts.data;
@@ -16144,7 +16215,7 @@ var ControlController = class extends BaseController {
16144
16215
  };
16145
16216
 
16146
16217
  // src/controller/common/control/md-control.controller.ts
16147
- import { isElementSame, RuntimeError as RuntimeError23 } from "@ibiz-template/core";
16218
+ import { isElementSame, RuntimeError as RuntimeError24 } from "@ibiz-template/core";
16148
16219
  var MDControlController = class extends ControlController {
16149
16220
  constructor() {
16150
16221
  super(...arguments);
@@ -16187,6 +16258,12 @@ var MDControlController = class extends ControlController {
16187
16258
  ibiz.mc.command.change.on(this.onDataChange);
16188
16259
  this.setSort();
16189
16260
  }
16261
+ async onMounted() {
16262
+ await super.onMounted();
16263
+ if (this.state.loadDefault) {
16264
+ this.load({ isInitialLoad: true });
16265
+ }
16266
+ }
16190
16267
  onDestroyed() {
16191
16268
  ibiz.mc.command.change.off(this.onDataChange);
16192
16269
  return super.onDestroyed();
@@ -16320,7 +16397,7 @@ var MDControlController = class extends ControlController {
16320
16397
  async remove(args) {
16321
16398
  const { context, params, data } = this.handlerAbilityParams(args);
16322
16399
  if (!(data == null ? void 0 : data.length)) {
16323
- throw new RuntimeError23("\u672A\u9009\u4E2D\u6570\u636E");
16400
+ throw new RuntimeError24("\u672A\u9009\u4E2D\u6570\u636E");
16324
16401
  }
16325
16402
  if ((args == null ? void 0 : args.silent) !== true) {
16326
16403
  const del = await ibiz.confirm.error({
@@ -16464,7 +16541,7 @@ var MDControlController = class extends ControlController {
16464
16541
  // src/controller/control/app-menu/app-menu.controller.ts
16465
16542
  import {
16466
16543
  findRecursiveChild,
16467
- RuntimeError as RuntimeError24,
16544
+ RuntimeError as RuntimeError25,
16468
16545
  RuntimeModelError as RuntimeModelError21
16469
16546
  } from "@ibiz-template/core";
16470
16547
  var AppMenuController = class extends ControlController {
@@ -16504,7 +16581,7 @@ var AppMenuController = class extends ControlController {
16504
16581
  childrenFields: ["appMenuItems"]
16505
16582
  });
16506
16583
  if (!menuItem) {
16507
- throw new RuntimeError24("\u627E\u4E0D\u5230\u540D\u4E3A".concat(id, "\u7684\u83DC\u5355\u9879"));
16584
+ throw new RuntimeError25("\u627E\u4E0D\u5230\u540D\u4E3A".concat(id, "\u7684\u83DC\u5355\u9879"));
16508
16585
  }
16509
16586
  this.evt.emit("onClick", {
16510
16587
  eventArg: id,
@@ -16594,7 +16671,7 @@ var AppMenuController = class extends ControlController {
16594
16671
  // src/controller/control/app-menu-icon-view/app-menu-icon-view.controller.ts
16595
16672
  import {
16596
16673
  findRecursiveChild as findRecursiveChild2,
16597
- RuntimeError as RuntimeError25,
16674
+ RuntimeError as RuntimeError26,
16598
16675
  RuntimeModelError as RuntimeModelError22
16599
16676
  } from "@ibiz-template/core";
16600
16677
  var AppMenuIconViewController = class extends AppMenuController {
@@ -16604,7 +16681,7 @@ var AppMenuIconViewController = class extends AppMenuController {
16604
16681
  childrenFields: ["appMenuItems"]
16605
16682
  });
16606
16683
  if (!menuItem) {
16607
- throw new RuntimeError25("\u627E\u4E0D\u5230\u540D\u4E3A".concat(id, "\u7684\u83DC\u5355\u9879"));
16684
+ throw new RuntimeError26("\u627E\u4E0D\u5230\u540D\u4E3A".concat(id, "\u7684\u83DC\u5355\u9879"));
16608
16685
  }
16609
16686
  this.evt.emit("onClick", {
16610
16687
  eventArg: id,
@@ -16629,10 +16706,10 @@ var AppMenuIconViewController = class extends AppMenuController {
16629
16706
  };
16630
16707
 
16631
16708
  // src/controller/control/calendar/calendar.controller.ts
16632
- import dayjs from "dayjs";
16709
+ import dayjs2 from "dayjs";
16633
16710
 
16634
16711
  // src/controller/control/calendar/calendar.service.ts
16635
- import { RuntimeError as RuntimeError26 } from "@ibiz-template/core";
16712
+ import { RuntimeError as RuntimeError27 } from "@ibiz-template/core";
16636
16713
  var CalendarService = class extends MDControlService {
16637
16714
  /**
16638
16715
  * 执行查询多条数据的方法
@@ -16682,11 +16759,11 @@ var CalendarService = class extends MDControlService {
16682
16759
  setCalendarConfigData(items, index) {
16683
16760
  const { sysCalendarItems } = this.model;
16684
16761
  if (!sysCalendarItems) {
16685
- throw new RuntimeError26("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");
16762
+ throw new RuntimeError27("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");
16686
16763
  }
16687
16764
  const calendarItem = sysCalendarItems[index];
16688
16765
  if (!calendarItem) {
16689
- throw new RuntimeError26("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");
16766
+ throw new RuntimeError27("\u672A\u627E\u5230\u65E5\u5386\u9879\u6A21\u578B");
16690
16767
  }
16691
16768
  return items.map((item) => {
16692
16769
  return new CalendarItemData(calendarItem, item);
@@ -16799,8 +16876,8 @@ var CalendarController = class extends MDControlController {
16799
16876
  1
16800
16877
  );
16801
16878
  return {
16802
- start: dayjs(firstDayOfMonth).format("YYYY-MM-DD HH:mm:ss"),
16803
- end: dayjs(lastDayOfMonth).format("YYYY-MM-DD HH:mm:ss")
16879
+ start: dayjs2(firstDayOfMonth).format("YYYY-MM-DD HH:mm:ss"),
16880
+ end: dayjs2(lastDayOfMonth).format("YYYY-MM-DD HH:mm:ss")
16804
16881
  };
16805
16882
  }
16806
16883
  return { start, end };
@@ -16876,29 +16953,29 @@ var CalendarController = class extends MDControlController {
16876
16953
  };
16877
16954
 
16878
16955
  // src/controller/control/chart/chart.controller.ts
16879
- import { RuntimeError as RuntimeError28 } from "@ibiz-template/core";
16956
+ import { RuntimeError as RuntimeError29 } from "@ibiz-template/core";
16880
16957
 
16881
16958
  // src/controller/control/chart/generator/chart-options-generator.ts
16882
16959
  import { mergeDeepRight as mergeDeepRight3 } from "ramda";
16883
- import { RuntimeError as RuntimeError27 } from "@ibiz-template/core";
16960
+ import { RuntimeError as RuntimeError28 } from "@ibiz-template/core";
16884
16961
 
16885
16962
  // src/controller/control/chart/generator/line-series-generator.ts
16886
16963
  import { RuntimeModelError as RuntimeModelError24 } from "@ibiz-template/core";
16887
16964
 
16888
16965
  // src/controller/control/chart/generator/base-series-generator.ts
16889
16966
  import { RuntimeModelError as RuntimeModelError23, toNumberOrNil } from "@ibiz-template/core";
16890
- import dayjs2 from "dayjs";
16967
+ import dayjs3 from "dayjs";
16891
16968
  import minMax from "dayjs/plugin/minMax";
16892
16969
  import isSameOrBefore from "dayjs/plugin/isSameOrBefore";
16893
16970
  import quarterOfYear from "dayjs/plugin/quarterOfYear";
16894
16971
  import weekOfYear from "dayjs/plugin/weekOfYear";
16895
16972
  import isoWeek from "dayjs/plugin/isoWeek";
16896
- import { clone as clone11, isNil as isNil14, mergeDeepRight } from "ramda";
16897
- dayjs2.extend(minMax);
16898
- dayjs2.extend(isSameOrBefore);
16899
- dayjs2.extend(quarterOfYear);
16900
- dayjs2.extend(weekOfYear);
16901
- dayjs2.extend(isoWeek);
16973
+ import { clone as clone11, isNil as isNil15, mergeDeepRight } from "ramda";
16974
+ dayjs3.extend(minMax);
16975
+ dayjs3.extend(isSameOrBefore);
16976
+ dayjs3.extend(quarterOfYear);
16977
+ dayjs3.extend(weekOfYear);
16978
+ dayjs3.extend(isoWeek);
16902
16979
  var DEFAULT_GROUP = "$default_group";
16903
16980
  var BaseSeriesGenerator = class {
16904
16981
  /**
@@ -16982,10 +17059,10 @@ var BaseSeriesGenerator = class {
16982
17059
  * @return {*} {(string | undefined)}
16983
17060
  */
16984
17061
  translateVal(codeListKey, val, isExclude = false) {
16985
- if (isNil14(val)) {
17062
+ if (isNil15(val)) {
16986
17063
  return void 0;
16987
17064
  }
16988
- if (isNil14(codeListKey)) {
17065
+ if (isNil15(codeListKey)) {
16989
17066
  return val;
16990
17067
  }
16991
17068
  const codeListItems = this.chartGenerator.codeListMap.get(codeListKey);
@@ -17015,7 +17092,7 @@ var BaseSeriesGenerator = class {
17015
17092
  seriesCodeListId,
17016
17093
  item[this.groupField]
17017
17094
  );
17018
- if (isNil14(groupVal)) {
17095
+ if (isNil15(groupVal)) {
17019
17096
  return;
17020
17097
  }
17021
17098
  group = groupVal;
@@ -17131,25 +17208,25 @@ var BaseSeriesGenerator = class {
17131
17208
  format = "YYYY-MM";
17132
17209
  }
17133
17210
  if (singleData[this.catalogField]) {
17134
- const formattedDate = dayjs2(singleData[this.catalogField]).format(
17211
+ const formattedDate = dayjs3(singleData[this.catalogField]).format(
17135
17212
  format
17136
17213
  );
17137
17214
  singleData[this.catalogField] = formattedDate;
17138
17215
  }
17139
17216
  } else if (groupMode === "QUARTER") {
17140
17217
  if (singleData[this.catalogField]) {
17141
- const formattedDate = "".concat(dayjs2(
17218
+ const formattedDate = "".concat(dayjs3(
17142
17219
  singleData[this.catalogField]
17143
- ).format("YYYY"), "-").concat(dayjs2(
17220
+ ).format("YYYY"), "-").concat(dayjs3(
17144
17221
  singleData[this.catalogField]
17145
17222
  ).quarter());
17146
17223
  singleData[this.catalogField] = formattedDate;
17147
17224
  }
17148
17225
  } else if (groupMode === "YEARWEEK") {
17149
17226
  if (singleData[this.catalogField]) {
17150
- const formattedDate = "".concat(dayjs2(
17227
+ const formattedDate = "".concat(dayjs3(
17151
17228
  singleData[this.catalogField]
17152
- ).format("YYYY"), "-").concat(dayjs2(singleData[this.catalogField]).week());
17229
+ ).format("YYYY"), "-").concat(dayjs3(singleData[this.catalogField]).week());
17153
17230
  singleData[this.catalogField] = formattedDate;
17154
17231
  }
17155
17232
  }
@@ -17171,7 +17248,7 @@ var BaseSeriesGenerator = class {
17171
17248
  let sortedKeys = [];
17172
17249
  if (groupMode === "DAY" || groupMode === "YEAR" || groupMode === "MONTH") {
17173
17250
  sortedKeys = Array.from(dateMap.keys()).sort(
17174
- (a, b) => dayjs2(a).diff(dayjs2(b))
17251
+ (a, b) => dayjs3(a).diff(dayjs3(b))
17175
17252
  );
17176
17253
  } else if (groupMode === "QUARTER" || groupMode === "YEARWEEK") {
17177
17254
  sortedKeys = Array.from(dateMap.keys()).sort((a, b) => {
@@ -17205,11 +17282,11 @@ var BaseSeriesGenerator = class {
17205
17282
  const dates = [];
17206
17283
  Object.keys(data).forEach((key) => {
17207
17284
  data[key].forEach((_val, date) => {
17208
- dates.push(dayjs2(date));
17285
+ dates.push(dayjs3(date));
17209
17286
  });
17210
17287
  });
17211
- const maxDate = dayjs2.max(dates);
17212
- const minDate = dayjs2.min(dates);
17288
+ const maxDate = dayjs3.max(dates);
17289
+ const minDate = dayjs3.min(dates);
17213
17290
  if (groupMode === "DAY") {
17214
17291
  let currentDate = minDate;
17215
17292
  const endDate = maxDate;
@@ -17291,7 +17368,7 @@ var BaseSeriesGenerator = class {
17291
17368
  const [minYear] = minYearWeek.split("-");
17292
17369
  const [maxYear] = maxYearWeek.split("-");
17293
17370
  for (let year = parseInt(minYear, 10); year <= parseInt(maxYear, 10); year++) {
17294
- const numWeeks = dayjs2("".concat(year, "-12-31")).isoWeek();
17371
+ const numWeeks = dayjs3("".concat(year, "-12-31")).isoWeek();
17295
17372
  for (let week = 1; week <= numWeeks; week++) {
17296
17373
  const yearWeek = "".concat(year, "-").concat(week);
17297
17374
  Object.keys(data).forEach((key) => {
@@ -17816,7 +17893,7 @@ var ChartOptionsGenerator2 = class {
17816
17893
  getSrfkeyByParams(params) {
17817
17894
  const generator = this.seriesGenerators[params.seriesIndex];
17818
17895
  if (!generator) {
17819
- throw new RuntimeError27("\u627E\u4E0D\u5230".concat(params.seriesIndex, "\u5E8F\u5217\u7684generator\uFF01"));
17896
+ throw new RuntimeError28("\u627E\u4E0D\u5230".concat(params.seriesIndex, "\u5E8F\u5217\u7684generator\uFF01"));
17820
17897
  }
17821
17898
  return generator.getSrfkeyByParams(params);
17822
17899
  }
@@ -17928,10 +18005,10 @@ var ChartController = class extends MDControlController {
17928
18005
  */
17929
18006
  updateChart() {
17930
18007
  if (!this.chart) {
17931
- throw new RuntimeError28("chart\u5BF9\u8C61\u6CA1\u6709\u6B63\u786E\u521D\u59CB\u5316");
18008
+ throw new RuntimeError29("chart\u5BF9\u8C61\u6CA1\u6709\u6B63\u786E\u521D\u59CB\u5316");
17932
18009
  }
17933
18010
  if (!this.options) {
17934
- throw new RuntimeError28("options\u8FD8\u6CA1\u8BA1\u7B97");
18011
+ throw new RuntimeError29("options\u8FD8\u6CA1\u8BA1\u7B97");
17935
18012
  }
17936
18013
  this.chart.setOption(this.options);
17937
18014
  this.resizeChart();
@@ -17980,16 +18057,16 @@ import { recursiveIterate } from "@ibiz-template/core";
17980
18057
 
17981
18058
  // src/ui-action/provider/backend-ui-action-provider.ts
17982
18059
  import { RuntimeModelError as RuntimeModelError44 } from "@ibiz-template/core";
17983
- import { isArray as isArray3 } from "qx-util";
18060
+ import { isArray as isArray4 } from "qx-util";
17984
18061
 
17985
18062
  // src/ui-action/provider/ui-action-provider-base.ts
17986
18063
  import { RuntimeModelError as RuntimeModelError43 } from "@ibiz-template/core";
17987
18064
 
17988
18065
  // src/ui-logic/index.ts
17989
- import { RuntimeError as RuntimeError33 } from "@ibiz-template/core";
18066
+ import { RuntimeError as RuntimeError34 } from "@ibiz-template/core";
17990
18067
 
17991
18068
  // src/ui-logic/ui-logic.ts
17992
- import { ModelError as ModelError23, RuntimeModelError as RuntimeModelError42 } from "@ibiz-template/core";
18069
+ import { ModelError as ModelError24, RuntimeModelError as RuntimeModelError42 } from "@ibiz-template/core";
17993
18070
 
17994
18071
  // src/ui-logic/ui-logic-context.ts
17995
18072
  var UILogicContext = class {
@@ -18115,7 +18192,7 @@ var UILogicContext = class {
18115
18192
  import { RuntimeModelError as RuntimeModelError29 } from "@ibiz-template/core";
18116
18193
 
18117
18194
  // src/ui-logic/ui-logic-link/ui-logic-link.ts
18118
- import { ModelError as ModelError17 } from "@ibiz-template/core";
18195
+ import { ModelError as ModelError18 } from "@ibiz-template/core";
18119
18196
 
18120
18197
  // src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts
18121
18198
  import { RuntimeModelError as RuntimeModelError28 } from "@ibiz-template/core";
@@ -18125,7 +18202,7 @@ var UILogicLinkCond = class {
18125
18202
  };
18126
18203
 
18127
18204
  // src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts
18128
- import { ModelError as ModelError16, RuntimeModelError as RuntimeModelError27 } from "@ibiz-template/core";
18205
+ import { ModelError as ModelError17, RuntimeModelError as RuntimeModelError27 } from "@ibiz-template/core";
18129
18206
  var UILogicLinkSingleCond = class extends UILogicLinkCond {
18130
18207
  constructor(model) {
18131
18208
  super();
@@ -18179,7 +18256,7 @@ var UILogicLinkSingleCond = class extends UILogicLinkCond {
18179
18256
  return testCond(dst[this.dstField], this.op, src[this.value]);
18180
18257
  }
18181
18258
  case "CURTIME":
18182
- throw new ModelError16(this.model, "\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");
18259
+ throw new ModelError17(this.model, "\u6682\u672A\u652F\u6301\u6761\u4EF6\u503C\u7C7B\u578B\u4E3A[\u5F53\u524D\u65F6\u95F4]");
18183
18260
  default:
18184
18261
  return testCond(dst[this.dstField], this.op, this.value);
18185
18262
  }
@@ -18321,13 +18398,13 @@ var UILogicLink = class {
18321
18398
  case 1:
18322
18399
  return true;
18323
18400
  case 2:
18324
- throw new ModelError17(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");
18401
+ throw new ModelError18(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u7ED3\u675F");
18325
18402
  case 3:
18326
- throw new ModelError17(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");
18403
+ throw new ModelError18(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u6B65\u62D2\u7EDD");
18327
18404
  case 9:
18328
- throw new ModelError17(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");
18405
+ throw new ModelError18(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B: \u5F02\u5E38\u5904\u7406");
18329
18406
  default:
18330
- throw new ModelError17(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(linkMode));
18407
+ throw new ModelError18(this.model, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8FDE\u63A5\u7C7B\u578B:".concat(linkMode));
18331
18408
  }
18332
18409
  }
18333
18410
  };
@@ -18411,11 +18488,14 @@ var StartNode2 = class extends UILogicNode {
18411
18488
  };
18412
18489
 
18413
18490
  // src/ui-logic/ui-logic-node/end-node/end-node.ts
18414
- import { ModelError as ModelError18 } from "@ibiz-template/core";
18491
+ import { ModelError as ModelError19 } from "@ibiz-template/core";
18415
18492
  var EndNode2 = class extends UILogicNode {
18416
18493
  async exec(ctx) {
18417
18494
  ctx.isEndNode = true;
18418
18495
  const { returnType, rawValue, returnParamId } = this.model;
18496
+ if (!returnType) {
18497
+ return;
18498
+ }
18419
18499
  switch (returnType) {
18420
18500
  case "NONEVALUE":
18421
18501
  ctx.result = void 0;
@@ -18432,7 +18512,7 @@ var EndNode2 = class extends UILogicNode {
18432
18512
  case "LOGICPARAMFIELD":
18433
18513
  case "BREAK":
18434
18514
  default:
18435
- throw new ModelError18(
18515
+ throw new ModelError19(
18436
18516
  this.model,
18437
18517
  "\u6682\u672A\u652F\u6301\u7684\u7ED3\u675F\u8282\u70B9\u8FD4\u56DE\u503C\u7C7B\u578B: ".concat(returnType)
18438
18518
  );
@@ -18441,11 +18521,11 @@ var EndNode2 = class extends UILogicNode {
18441
18521
  };
18442
18522
 
18443
18523
  // src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts
18444
- import { ModelError as ModelError20 } from "@ibiz-template/core";
18524
+ import { ModelError as ModelError21 } from "@ibiz-template/core";
18445
18525
  import { clone as clone13 } from "ramda";
18446
18526
 
18447
18527
  // src/ui-logic/utils/handle-src-val.ts
18448
- import { ModelError as ModelError19 } from "@ibiz-template/core";
18528
+ import { ModelError as ModelError20 } from "@ibiz-template/core";
18449
18529
  import { clone as clone12 } from "ramda";
18450
18530
  function handleSrcVal2(ctx, srcValParams) {
18451
18531
  const { srcDEUILogicParamId, srcFieldName, srcValue } = srcValParams;
@@ -18475,7 +18555,7 @@ function handleSrcVal2(ctx, srcValParams) {
18475
18555
  value = clone12(ibiz.env);
18476
18556
  break;
18477
18557
  default:
18478
- throw new ModelError19(srcValParams, "\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(srcValueType));
18558
+ throw new ModelError20(srcValParams, "\u6682\u672A\u652F\u6301\u6E90\u503C\u7C7B\u578B".concat(srcValueType));
18479
18559
  }
18480
18560
  const srcField = srcFieldName;
18481
18561
  if (value && srcField) {
@@ -18515,7 +18595,7 @@ var PrepareJSParamNode = class extends UILogicNode {
18515
18595
  await this.sortParam(nodeParam, ctx);
18516
18596
  break;
18517
18597
  default:
18518
- throw new ModelError20(
18598
+ throw new ModelError21(
18519
18599
  nodeParam,
18520
18600
  "\u6682\u672A\u652F\u6301\u903B\u8F91\u5904\u7406\u53C2\u6570\u64CD\u4F5C".concat(nodeParam.paramAction)
18521
18601
  );
@@ -18629,7 +18709,7 @@ var PrepareJSParamNode = class extends UILogicNode {
18629
18709
  };
18630
18710
 
18631
18711
  // src/ui-logic/ui-logic-node/view-ctrl-invoke-node/view-ctrl-invoke-node.ts
18632
- import { RuntimeError as RuntimeError29, RuntimeModelError as RuntimeModelError31 } from "@ibiz-template/core";
18712
+ import { RuntimeError as RuntimeError30, RuntimeModelError as RuntimeModelError31 } from "@ibiz-template/core";
18633
18713
  import { isFunction } from "lodash-es";
18634
18714
  var ViewCtrlInvokeNode = class extends UILogicNode {
18635
18715
  async exec(ctx) {
@@ -18646,14 +18726,14 @@ var ViewCtrlInvokeNode = class extends UILogicNode {
18646
18726
  }
18647
18727
  const invokeParam = ctx.params[invokeParamId];
18648
18728
  if (!invokeParam) {
18649
- throw new RuntimeError29("\u6CA1\u6709\u627E\u5230\u64CD\u4F5C\u53C2\u6570".concat(invokeParamId));
18729
+ throw new RuntimeError30("\u6CA1\u6709\u627E\u5230\u64CD\u4F5C\u53C2\u6570".concat(invokeParamId));
18650
18730
  }
18651
18731
  const invokeCtrl = ctx.params[invokeCtrlId];
18652
18732
  if (!invokeCtrl) {
18653
- throw new RuntimeError29("\u6CA1\u6709\u627E\u5230\u754C\u9762\u5BF9\u8C61".concat(invokeCtrlId));
18733
+ throw new RuntimeError30("\u6CA1\u6709\u627E\u5230\u754C\u9762\u5BF9\u8C61".concat(invokeCtrlId));
18654
18734
  }
18655
18735
  if (!invokeCtrl[invokeMethod] || !isFunction(invokeCtrl[invokeMethod])) {
18656
- throw new RuntimeError29("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(invokeMethod));
18736
+ throw new RuntimeError30("\u6CA1\u6709\u627E\u5230\u8C03\u7528\u65B9\u6CD5".concat(invokeMethod));
18657
18737
  }
18658
18738
  await invokeCtrl[invokeMethod](invokeParam);
18659
18739
  }
@@ -18676,7 +18756,7 @@ var BindParamNode2 = class extends UILogicNode {
18676
18756
  };
18677
18757
 
18678
18758
  // src/ui-logic/ui-logic-node/msg-box-node/msg-box-node.ts
18679
- import { ModelError as ModelError21, RuntimeModelError as RuntimeModelError33 } from "@ibiz-template/core";
18759
+ import { ModelError as ModelError22, RuntimeModelError as RuntimeModelError33 } from "@ibiz-template/core";
18680
18760
  var MsgBoxNode = class extends UILogicNode {
18681
18761
  constructor() {
18682
18762
  super(...arguments);
@@ -18735,7 +18815,7 @@ var MsgBoxNode = class extends UILogicNode {
18735
18815
  resultTags = ["ok", "cancel"];
18736
18816
  break;
18737
18817
  default:
18738
- throw new ModelError21(this.model, "".concat(buttonsType, "\u6682\u672A\u652F\u6301"));
18818
+ throw new ModelError22(this.model, "".concat(buttonsType, "\u6682\u672A\u652F\u6301"));
18739
18819
  }
18740
18820
  const result = await ibiz.modal.confirm(modalParams);
18741
18821
  ctx.setLastReturn(resultTags[result ? 0 : 1]);
@@ -18866,16 +18946,16 @@ var DataSetNode2 = class extends UILogicNode {
18866
18946
  };
18867
18947
 
18868
18948
  // src/ui-logic/ui-logic-node/throw-exception-node/throw-exception-node.ts
18869
- import { RuntimeError as RuntimeError30 } from "@ibiz-template/core";
18949
+ import { RuntimeError as RuntimeError31 } from "@ibiz-template/core";
18870
18950
  var ThrowExceptionNode2 = class extends UILogicNode {
18871
18951
  async exec(_ctx) {
18872
18952
  const { errorInfo } = this.model;
18873
- throw new RuntimeError30(errorInfo);
18953
+ throw new RuntimeError31(errorInfo);
18874
18954
  }
18875
18955
  };
18876
18956
 
18877
18957
  // src/ui-logic/ui-logic-node/view-ctrl-fire-event-node/view-ctrl-fire-event-node.ts
18878
- import { RuntimeError as RuntimeError31, RuntimeModelError as RuntimeModelError40 } from "@ibiz-template/core";
18958
+ import { RuntimeError as RuntimeError32, RuntimeModelError as RuntimeModelError40 } from "@ibiz-template/core";
18879
18959
  var ViewCtrlFireEventNode = class extends UILogicNode {
18880
18960
  async exec(ctx) {
18881
18961
  ctx.isEndNode = true;
@@ -18891,18 +18971,18 @@ var ViewCtrlFireEventNode = class extends UILogicNode {
18891
18971
  }
18892
18972
  const invokeCtrl = ctx.params[fireCtrlId];
18893
18973
  if (!invokeCtrl) {
18894
- throw new RuntimeError31("\u6CA1\u6709\u627E\u5230\u89E6\u53D1\u5BF9\u8C61".concat(fireCtrlId));
18974
+ throw new RuntimeError32("\u6CA1\u6709\u627E\u5230\u89E6\u53D1\u5BF9\u8C61".concat(fireCtrlId));
18895
18975
  }
18896
18976
  const eventParam = ctx.params[eventParamId];
18897
18977
  if (!eventParam) {
18898
- throw new RuntimeError31("\u6CA1\u6709\u627E\u5230\u4E8B\u4EF6\u53C2\u6570\u5BF9\u8C61".concat(eventParamId));
18978
+ throw new RuntimeError32("\u6CA1\u6709\u627E\u5230\u4E8B\u4EF6\u53C2\u6570\u5BF9\u8C61".concat(eventParamId));
18899
18979
  }
18900
18980
  await invokeCtrl.evt.emit(eventName, eventParam);
18901
18981
  }
18902
18982
  };
18903
18983
 
18904
18984
  // src/ui-logic/ui-logic-node/execute-de-logic-node/execute-de-logic-node.ts
18905
- import { RuntimeError as RuntimeError32, RuntimeModelError as RuntimeModelError41 } from "@ibiz-template/core";
18985
+ import { RuntimeError as RuntimeError33, RuntimeModelError as RuntimeModelError41 } from "@ibiz-template/core";
18906
18986
  var ExecuteDELogicNode = class extends UILogicNode {
18907
18987
  async exec(ctx) {
18908
18988
  const {
@@ -18922,7 +19002,7 @@ var ExecuteDELogicNode = class extends UILogicNode {
18922
19002
  }
18923
19003
  const dstParam = ctx.params[dstDEUILogicParamId];
18924
19004
  if (!dstParam) {
18925
- throw new RuntimeError32("\u6CA1\u6709\u627E\u5230\u4F20\u5165\u53C2\u6570".concat(dstDEUILogicParamId));
19005
+ throw new RuntimeError33("\u6CA1\u6709\u627E\u5230\u4F20\u5165\u53C2\u6570".concat(dstDEUILogicParamId));
18926
19006
  }
18927
19007
  const result = await execDELogicById(
18928
19008
  dstAppDELogicId,
@@ -18938,7 +19018,7 @@ var ExecuteDELogicNode = class extends UILogicNode {
18938
19018
  };
18939
19019
 
18940
19020
  // src/ui-logic/ui-logic-param/ui-logic-param.ts
18941
- import { ModelError as ModelError22 } from "@ibiz-template/core";
19021
+ import { ModelError as ModelError23 } from "@ibiz-template/core";
18942
19022
  var UILogicParam = class {
18943
19023
  /**
18944
19024
  * Creates an instance of UILogicParam.
@@ -18984,7 +19064,7 @@ var UILogicParam = class {
18984
19064
  } else if (m.entityListParam) {
18985
19065
  ctx.params[tag] = [];
18986
19066
  } else if (m.entityPageParam) {
18987
- throw new ModelError22(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");
19067
+ throw new ModelError23(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5206\u9875\u67E5\u8BE2\u7ED3\u679C");
18988
19068
  } else if (m.entityParam) {
18989
19069
  ctx.params[tag] = {};
18990
19070
  } else if (m.lastReturnParam) {
@@ -18992,9 +19072,9 @@ var UILogicParam = class {
18992
19072
  } else if (m.navContextParam) {
18993
19073
  ctx.params[tag] = context;
18994
19074
  } else if (m.navViewParamParam) {
18995
- throw new ModelError22(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");
19075
+ throw new ModelError23(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u89C6\u56FE\u8DEF\u7531\u53C2\u6570");
18996
19076
  } else if (m.routeViewSessionParam) {
18997
- throw new ModelError22(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8DEF\u7531\u89C6\u56FE\u4F1A\u8BDD");
19077
+ throw new ModelError23(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u8DEF\u7531\u89C6\u56FE\u4F1A\u8BDD");
18998
19078
  } else if (m.simpleListParam) {
18999
19079
  ctx.params[tag] = [];
19000
19080
  } else if (m.simpleParam) {
@@ -19002,7 +19082,7 @@ var UILogicParam = class {
19002
19082
  } else if (m.viewNavDataParam) {
19003
19083
  ctx.params[tag] = viewParams;
19004
19084
  } else if (m.viewSessionParam) {
19005
- throw new ModelError22(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5F53\u524D\u89C6\u56FE\u4F1A\u8BDD");
19085
+ throw new ModelError23(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B: \u5F53\u524D\u89C6\u56FE\u4F1A\u8BDD");
19006
19086
  }
19007
19087
  }
19008
19088
  /**
@@ -19019,7 +19099,7 @@ var UILogicParam = class {
19019
19099
  } else if (m.simpleParam || m.entityParam) {
19020
19100
  ctx.params[tag] = {};
19021
19101
  } else {
19022
- throw new ModelError22(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF");
19102
+ throw new ModelError23(m, "\u672A\u652F\u6301\u7684\u903B\u8F91\u53C2\u6570\u7C7B\u578B\u91CD\u65B0\u5EFA\u7ACB\u53D8\u91CF");
19023
19103
  }
19024
19104
  }
19025
19105
  };
@@ -19116,7 +19196,7 @@ var UILogic = class {
19116
19196
  break;
19117
19197
  case "PFPLUGIN":
19118
19198
  default:
19119
- throw new ModelError23(node, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(logicNodeType));
19199
+ throw new ModelError24(node, "\u672A\u652F\u6301\u7684\u903B\u8F91\u8282\u70B9\u7C7B\u578B: ".concat(logicNodeType));
19120
19200
  }
19121
19201
  this.nodes.set(node.id, logicNode);
19122
19202
  });
@@ -19215,7 +19295,7 @@ async function execUILogic(deUILogicId, appDataEntityId, parameters) {
19215
19295
  const app = ibiz.hub.getApp(parameters.context.srfappid);
19216
19296
  const deUILogic = await app.getDEUILogic(deUILogicId, appDataEntityId);
19217
19297
  if (!deUILogic) {
19218
- throw new RuntimeError33(
19298
+ throw new RuntimeError34(
19219
19299
  "\u627E\u4E0D\u5230\u5B9E\u4F53".concat(appDataEntityId, "\u7684\u754C\u9762\u903B\u8F91").concat(deUILogicId)
19220
19300
  );
19221
19301
  }
@@ -19228,7 +19308,7 @@ async function execUILogic(deUILogicId, appDataEntityId, parameters) {
19228
19308
  }
19229
19309
 
19230
19310
  // src/ui-action/uiaction-util.ts
19231
- import { RuntimeError as RuntimeError34 } from "@ibiz-template/core";
19311
+ import { RuntimeError as RuntimeError35 } from "@ibiz-template/core";
19232
19312
  var UIActionUtil = class {
19233
19313
  /**
19234
19314
  * 执行界面行为
@@ -19243,7 +19323,7 @@ var UIActionUtil = class {
19243
19323
  static async exec(actionId, params) {
19244
19324
  const action = await getUIActionById(actionId);
19245
19325
  if (!action) {
19246
- throw new RuntimeError34("\u6CA1\u627E\u5230".concat(actionId, "\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));
19326
+ throw new RuntimeError35("\u6CA1\u627E\u5230".concat(actionId, "\u7684\u754C\u9762\u884C\u4E3A\u6A21\u578B"));
19247
19327
  }
19248
19328
  const provider = await getUIActionProvider(action);
19249
19329
  return provider.exec(action, params);
@@ -19510,7 +19590,7 @@ var BackendUIActionProvider = class extends UIActionProviderBase {
19510
19590
  ibiz.message.success(action.successMsg);
19511
19591
  }
19512
19592
  Object.assign(actionResult, {
19513
- data: isArray3(res.data) ? res.data : [res.data],
19593
+ data: isArray4(res.data) ? res.data : [res.data],
19514
19594
  nextContext: resultContext,
19515
19595
  nextParams: tempParams
19516
19596
  });
@@ -19572,7 +19652,7 @@ var SysUIActionProvider = class extends UIActionProviderBase {
19572
19652
  };
19573
19653
 
19574
19654
  // src/ui-action/provider/front-ui-action-provider.ts
19575
- import { StringUtil, RuntimeModelError as RuntimeModelError45, ModelError as ModelError24 } from "@ibiz-template/core";
19655
+ import { StringUtil, RuntimeModelError as RuntimeModelError45, ModelError as ModelError25 } from "@ibiz-template/core";
19576
19656
  var FrontUIActionProvider = class extends UIActionProviderBase {
19577
19657
  async execAction(action, args) {
19578
19658
  const { context, params, data, event, noWaitRoute } = args;
@@ -19616,7 +19696,7 @@ var FrontUIActionProvider = class extends UIActionProviderBase {
19616
19696
  actionResult = this.doOther(action, args);
19617
19697
  break;
19618
19698
  default:
19619
- throw new ModelError24(
19699
+ throw new ModelError25(
19620
19700
  action,
19621
19701
  "\u672A\u652F\u6301\u7684\u524D\u53F0\u5904\u7406\u6A21\u5F0F[".concat(action.frontProcessType, "]")
19622
19702
  );
@@ -20127,7 +20207,7 @@ var ViewPortletController = class extends PortletPartController {
20127
20207
 
20128
20208
  // src/controller/control/data-view/data-view.controller.ts
20129
20209
  import { RuntimeModelError as RuntimeModelError46 } from "@ibiz-template/core";
20130
- import { isNil as isNil15 } from "ramda";
20210
+ import { isNil as isNil16 } from "ramda";
20131
20211
 
20132
20212
  // src/controller/control/data-view/data-view.service.ts
20133
20213
  var DataViewControlService = class extends MDControlService {
@@ -20159,6 +20239,16 @@ var DataViewControlService = class extends MDControlService {
20159
20239
 
20160
20240
  // src/controller/control/data-view/data-view.controller.ts
20161
20241
  var DataViewControlController = class extends MDControlController {
20242
+ /**
20243
+ * 是否允许新建
20244
+ * @author lxm
20245
+ * @date 2023-09-11 04:05:25
20246
+ * @readonly
20247
+ * @type {boolean}
20248
+ */
20249
+ get enableNew() {
20250
+ return this.model.enableCardNew === true;
20251
+ }
20162
20252
  /**
20163
20253
  * 初始化State
20164
20254
  *
@@ -20169,6 +20259,7 @@ var DataViewControlController = class extends MDControlController {
20169
20259
  super.initState();
20170
20260
  this.state.noSort = this.model.noSort === true;
20171
20261
  this.state.size = this.model.pagingSize || 20;
20262
+ this.state.singleSelect = this.model.singleSelect === true;
20172
20263
  }
20173
20264
  /**
20174
20265
  * 初始化
@@ -20192,6 +20283,92 @@ var DataViewControlController = class extends MDControlController {
20192
20283
  this.service = new DataViewControlService(this.model);
20193
20284
  await this.service.init(this.context);
20194
20285
  }
20286
+ /**
20287
+ * 初始化分组右侧界面行为按钮的状态
20288
+ *
20289
+ * @author chitanda
20290
+ * @date 2023-08-02 17:08:04
20291
+ * @return {*} {Promise<void>}
20292
+ */
20293
+ async initGroupActionStates() {
20294
+ var _a;
20295
+ const { groupUIActionGroup } = this.model;
20296
+ if (!((_a = groupUIActionGroup == null ? void 0 : groupUIActionGroup.uiactionGroupDetails) == null ? void 0 : _a.length)) {
20297
+ return;
20298
+ }
20299
+ this.state.groups.forEach(async (group) => {
20300
+ const containerState = new ButtonContainerState();
20301
+ groupUIActionGroup.uiactionGroupDetails.forEach((detail) => {
20302
+ const actionid = detail.uiactionId;
20303
+ if (actionid) {
20304
+ const buttonState = new UIActionButtonState(
20305
+ detail.id,
20306
+ this.context.srfappid,
20307
+ actionid
20308
+ );
20309
+ containerState.addState(detail.id, buttonState);
20310
+ }
20311
+ });
20312
+ await containerState.update();
20313
+ group.groupActionGroupState = containerState;
20314
+ });
20315
+ }
20316
+ /**
20317
+ * 行单击事件
20318
+ *
20319
+ * @author lxm
20320
+ * @date 2022-08-18 22:08:16
20321
+ * @param {IData} data 选中的单条数据
20322
+ */
20323
+ async onRowClick(data) {
20324
+ super.onRowClick(data);
20325
+ const { groupAppDEFieldId } = this.model;
20326
+ if (groupAppDEFieldId) {
20327
+ this.state.groups.forEach((group) => {
20328
+ group.selectedData = [];
20329
+ });
20330
+ this.state.selectedData.forEach((select) => {
20331
+ const groupVal = select[groupAppDEFieldId];
20332
+ const selectGroup = this.state.groups.find(
20333
+ (group) => group.key === groupVal
20334
+ );
20335
+ if (selectGroup) {
20336
+ selectGroup.selectedData.push(select);
20337
+ }
20338
+ });
20339
+ if (this.state.singleSelect) {
20340
+ this.state.groups.forEach((group) => {
20341
+ let tempData = data;
20342
+ if (group.selectedData.indexOf(tempData) !== -1) {
20343
+ if (tempData && tempData instanceof ControlVO) {
20344
+ tempData = tempData.getOrigin();
20345
+ }
20346
+ if (tempData) {
20347
+ group.groupActionGroupState.update(
20348
+ tempData,
20349
+ this.model.appDataEntityId
20350
+ );
20351
+ }
20352
+ } else {
20353
+ group.groupActionGroupState.update(
20354
+ void 0,
20355
+ this.model.appDataEntityId
20356
+ );
20357
+ }
20358
+ });
20359
+ } else {
20360
+ const actionGroup = this.state.groups.find((group) => {
20361
+ return group.children.indexOf(data) !== -1;
20362
+ });
20363
+ if (actionGroup) {
20364
+ actionGroup.groupActionGroupState.update(
20365
+ actionGroup.selectedData[0],
20366
+ this.model.appDataEntityId
20367
+ );
20368
+ }
20369
+ }
20370
+ }
20371
+ }
20195
20372
  /**
20196
20373
  * 加载更多
20197
20374
  *
@@ -20205,6 +20382,7 @@ var DataViewControlController = class extends MDControlController {
20205
20382
  }
20206
20383
  async afterLoad(args, items) {
20207
20384
  await this.handleDataGroup();
20385
+ await this.initGroupActionStates();
20208
20386
  return items;
20209
20387
  }
20210
20388
  /**
@@ -20308,7 +20486,7 @@ var DataViewControlController = class extends MDControlController {
20308
20486
  const groupMap = /* @__PURE__ */ new Map();
20309
20487
  items.forEach((item) => {
20310
20488
  const groupVal = item[groupAppDEFieldId];
20311
- if (isNil15(groupVal)) {
20489
+ if (isNil16(groupVal)) {
20312
20490
  return;
20313
20491
  }
20314
20492
  if (!groupMap.has(groupVal)) {
@@ -20402,13 +20580,49 @@ var DataViewControlController = class extends MDControlController {
20402
20580
  }
20403
20581
  }
20404
20582
  }
20583
+ /**
20584
+ * 点击新建
20585
+ * @author lxm
20586
+ * @date 2023-09-11 07:22:33
20587
+ * @param {MouseEvent} event
20588
+ * @param {(string | number)} group 分组标识
20589
+ */
20590
+ onClickNew(event, group) {
20591
+ const params = { ...this.params, srfgroup: group };
20592
+ UIActionUtil.execAndResolved("new", {
20593
+ context: this.context,
20594
+ params,
20595
+ data: [],
20596
+ view: this.view,
20597
+ event
20598
+ });
20599
+ }
20600
+ /**
20601
+ * 分组工具栏点击处理回调
20602
+ * @author lxm
20603
+ * @date 2023-09-11 04:48:06
20604
+ * @param {IUIActionGroupDetail} detail
20605
+ * @param {MouseEvent} event
20606
+ * @return {*} {Promise<void>}
20607
+ */
20608
+ async onGroupToolbarClick(detail, event, group) {
20609
+ const actionId = detail.uiactionId;
20610
+ const params = { ...this.params, srfgroup: group.key };
20611
+ await UIActionUtil.execAndResolved(actionId, {
20612
+ context: this.context,
20613
+ params,
20614
+ data: group.selectedData || [],
20615
+ view: this.view,
20616
+ event
20617
+ });
20618
+ }
20405
20619
  };
20406
20620
 
20407
20621
  // src/controller/control/exp-bar/calendar-exp-bar.controller.ts
20408
20622
  import { RuntimeModelError as RuntimeModelError48 } from "@ibiz-template/core";
20409
20623
 
20410
20624
  // src/controller/control/exp-bar/exp-bar.controller.ts
20411
- import { RuntimeError as RuntimeError35, RuntimeModelError as RuntimeModelError47 } from "@ibiz-template/core";
20625
+ import { RuntimeError as RuntimeError36, RuntimeModelError as RuntimeModelError47 } from "@ibiz-template/core";
20412
20626
  var ExpBarControlController = class extends ControlController {
20413
20627
  constructor() {
20414
20628
  super(...arguments);
@@ -20570,6 +20784,9 @@ var ExpBarControlController = class extends ControlController {
20570
20784
  );
20571
20785
  });
20572
20786
  }
20787
+ if (this.state.loadDefault) {
20788
+ this.load();
20789
+ }
20573
20790
  }
20574
20791
  /**
20575
20792
  * 多数据部件加载成功 设置默认选中
@@ -20599,7 +20816,6 @@ var ExpBarControlController = class extends ControlController {
20599
20816
  (item) => item[this.navKeyName] === this.state.srfnav
20600
20817
  );
20601
20818
  const routeAndHasSub = this.routeDepth && window.location.hash.split("/").length > this.routeDepth * 2 + 2;
20602
- console.log("routeAndHasSub", routeAndHasSub);
20603
20819
  if (routeAndHasSub) {
20604
20820
  if (selectItem) {
20605
20821
  this.xDataController.setSelection([selectItem]);
@@ -20694,7 +20910,7 @@ var ExpBarControlController = class extends ControlController {
20694
20910
  if (["GRID", "DATAVIEW", "LIST"].includes(((_a = this.XDataModel) == null ? void 0 : _a.controlType) || "")) {
20695
20911
  return this.XDataModel.navAppViewId;
20696
20912
  }
20697
- throw new RuntimeError35("\u591A\u8282\u70B9\u89C6\u56FE\u7531\u5B50\u7C7B\u5B9E\u73B0");
20913
+ throw new RuntimeError36("\u591A\u8282\u70B9\u89C6\u56FE\u7531\u5B50\u7C7B\u5B9E\u73B0");
20698
20914
  }
20699
20915
  /**
20700
20916
  * 获取导航视图
@@ -20836,7 +21052,7 @@ var CalendarExpBarController = class extends ExpBarControlController {
20836
21052
  };
20837
21053
 
20838
21054
  // src/controller/control/exp-bar/tree-exp-bar.controller.ts
20839
- import { RuntimeError as RuntimeError36, RuntimeModelError as RuntimeModelError49 } from "@ibiz-template/core";
21055
+ import { RuntimeError as RuntimeError37, RuntimeModelError as RuntimeModelError49 } from "@ibiz-template/core";
20840
21056
  var TreeExpBarController = class extends ExpBarControlController {
20841
21057
  constructor() {
20842
21058
  super(...arguments);
@@ -20911,7 +21127,7 @@ var TreeExpBarController = class extends ExpBarControlController {
20911
21127
  const deData = node.deData || node;
20912
21128
  const nodeModel = this.getNodeModel(node.nodeId);
20913
21129
  if (!nodeModel) {
20914
- throw new RuntimeError36("\u627E\u4E0D\u5230".concat(node.nodeId, "\u7684\u8282\u70B9\u6A21\u578B"));
21130
+ throw new RuntimeError37("\u627E\u4E0D\u5230".concat(node.nodeId, "\u7684\u8282\u70B9\u6A21\u578B"));
20915
21131
  }
20916
21132
  const result = this.prepareParams(nodeModel, deData, context, params);
20917
21133
  result.context.currentSrfNav = nodeId;
@@ -21224,6 +21440,12 @@ var SearchFormController = class extends FormController {
21224
21440
  await this.service.init(this.context);
21225
21441
  await this.load();
21226
21442
  }
21443
+ async onMounted() {
21444
+ await super.onMounted();
21445
+ if (this.state.loadDefault) {
21446
+ this.load();
21447
+ }
21448
+ }
21227
21449
  /**
21228
21450
  * 加载草稿
21229
21451
  *
@@ -21650,7 +21872,7 @@ var FormButtonController = class extends FormDetailController {
21650
21872
 
21651
21873
  // src/controller/control/form/form-detail/form-druipart/form-druipart.controller.ts
21652
21874
  import { isOverlap as isOverlap2 } from "@ibiz-template/core";
21653
- import { createUUID as createUUID3, notNilEmpty as notNilEmpty7 } from "qx-util";
21875
+ import { createUUID as createUUID4, notNilEmpty as notNilEmpty7 } from "qx-util";
21654
21876
 
21655
21877
  // src/controller/control/form/form-detail/form-druipart/form-druipart.state.ts
21656
21878
  var FormDruipartState = class extends FormDetailState {
@@ -21763,7 +21985,7 @@ var FormDRUIPartController = class extends FormDetailController {
21763
21985
  this.form.context
21764
21986
  );
21765
21987
  if (!this.state.viewComponentKey) {
21766
- this.state.viewComponentKey = createUUID3();
21988
+ this.state.viewComponentKey = createUUID4();
21767
21989
  this.navContext = newContext;
21768
21990
  this.navParams = newParams;
21769
21991
  } else if (JSON.stringify(this.navContext) !== JSON.stringify(newContext) || JSON.stringify(this.navParams) !== JSON.stringify(newParams)) {
@@ -21914,9 +22136,7 @@ var FormGroupPanelController = class extends FormDetailController {
21914
22136
 
21915
22137
  // src/controller/control/form/form-detail/form-item/form-item.controller.ts
21916
22138
  import Schema from "async-validator";
21917
- import { createUUID as createUUID4, isNilOrEmpty as isNilOrEmpty6 } from "qx-util";
21918
- import { ModelError as ModelError25, RuntimeError as RuntimeError37 } from "@ibiz-template/core";
21919
- import dayjs3 from "dayjs";
22139
+ import { isNilOrEmpty as isNilOrEmpty6 } from "qx-util";
21920
22140
 
21921
22141
  // src/controller/control/form/form-detail/form-item/form-item.state.ts
21922
22142
  var FormItemState = class extends FormDetailState {
@@ -22189,60 +22409,20 @@ var FormItemController = class extends FormDetailController {
22189
22409
  * @param {boolean} isCreate 新建默认值还是更新默认值
22190
22410
  */
22191
22411
  setDefaultValue(isCreate, data = this.data) {
22192
- var _a;
22193
22412
  const { createDVT, createDV, updateDVT, updateDV } = this.model;
22194
22413
  const valueType = isCreate ? createDVT : updateDVT;
22195
22414
  const defaultValue = isCreate ? createDV : updateDV;
22196
- if (valueType === "RESET") {
22197
- data[this.name] = null;
22198
- return;
22199
- }
22200
- if (this.value) {
22201
- return;
22202
- }
22203
- if (isNilOrEmpty6(valueType) && isNilOrEmpty6(defaultValue)) {
22204
- return;
22205
- }
22206
- if (!valueType && defaultValue) {
22207
- data[this.name] = defaultValue;
22208
- return;
22209
- }
22210
- switch (valueType) {
22211
- case "APPDATA":
22212
- if (Object.prototype.hasOwnProperty.call(this.params, defaultValue)) {
22213
- data[this.name] = this.params[defaultValue];
22214
- }
22215
- if (Object.prototype.hasOwnProperty.call(this.context, defaultValue)) {
22216
- data[this.name] = this.context[defaultValue];
22217
- }
22218
- break;
22219
- case "OPERATORNAME":
22220
- data[this.name] = this.context.srfusername;
22221
- break;
22222
- case "OPERATOR":
22223
- data[this.name] = this.context.srfuserid;
22224
- break;
22225
- case "CURTIME":
22226
- data[this.name] = dayjs3().format(this.model.valueFormat);
22227
- break;
22228
- case "PARAM":
22229
- data[this.name] = this.data[defaultValue];
22230
- break;
22231
- case "SESSION":
22232
- case "APPLICATION":
22233
- if (!((_a = ibiz.appData) == null ? void 0 : _a.context)) {
22234
- throw new RuntimeError37("appdata.context\u4E0D\u5B58\u5728");
22235
- }
22236
- data[this.name] = ibiz.appData.context[defaultValue];
22237
- break;
22238
- case "CONTEXT":
22239
- data[this.name] = this.params[defaultValue];
22240
- break;
22241
- case "UNIQUEID":
22242
- data[this.name] = createUUID4();
22243
- break;
22244
- default:
22245
- throw new ModelError25(this.model, "\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(valueType, "]\u672A\u652F\u6301"));
22415
+ const defaultVal = getDefaultValue(
22416
+ {
22417
+ name: this.name,
22418
+ valueType,
22419
+ defaultValue,
22420
+ valueFormat: this.model.valueFormat
22421
+ },
22422
+ { data, context: this.context, params: this.params }
22423
+ );
22424
+ if (defaultVal !== void 0) {
22425
+ data[this.name] = defaultVal;
22246
22426
  }
22247
22427
  }
22248
22428
  };
@@ -22475,7 +22655,7 @@ var FormMDCtrlDataViewController = class extends FormMDCtrlControlController {
22475
22655
 
22476
22656
  // src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.ts
22477
22657
  import { mergeInLeft as mergeInLeft2 } from "@ibiz-template/core";
22478
- import { isArray as isArray4 } from "lodash-es";
22658
+ import { isArray as isArray5 } from "lodash-es";
22479
22659
 
22480
22660
  // src/controller/control/form/edit-form/edit-form.controller.ts
22481
22661
  import {
@@ -22782,6 +22962,12 @@ var EditFormController = class extends FormController {
22782
22962
  trailing: true
22783
22963
  });
22784
22964
  }
22965
+ async onMounted() {
22966
+ await super.onMounted();
22967
+ if (this.state.loadDefault) {
22968
+ this.load();
22969
+ }
22970
+ }
22785
22971
  /**
22786
22972
  * 加载草稿行为
22787
22973
  * @author lxm
@@ -23169,7 +23355,7 @@ var FormMDCtrlFormController = class extends FormMDCtrlControlController {
23169
23355
  handleResponse(response) {
23170
23356
  const res = response;
23171
23357
  if (res.ok) {
23172
- if (isArray4(res.data)) {
23358
+ if (isArray5(res.data)) {
23173
23359
  res.data = res.data.map(
23174
23360
  (item) => this.service.toUIData(item)
23175
23361
  );
@@ -24096,6 +24282,7 @@ var GridRowState = class {
24096
24282
  import {
24097
24283
  awaitTimeout as awaitTimeout2,
24098
24284
  debounceAndAsyncMerge as debounceAndAsyncMerge2,
24285
+ mergeDefaultInLeft as mergeDefaultInLeft3,
24099
24286
  recursiveIterate as recursiveIterate4,
24100
24287
  RuntimeError as RuntimeError41,
24101
24288
  RuntimeModelError as RuntimeModelError51
@@ -24472,21 +24659,26 @@ var GridController = class extends MDControlController {
24472
24659
  if (editingRow) {
24473
24660
  throw new RuntimeError41("\u8BF7\u5148\u5B8C\u6210\u5F53\u524D\u884C\u7F16\u8F91\u4E2D\u7684\u884C\u7684\u64CD\u4F5C");
24474
24661
  }
24662
+ const queryParams = { ...this.params };
24663
+ const defaultData = this.calcDefaultValue({}, true);
24664
+ Object.assign(queryParams, defaultData);
24475
24665
  let res;
24476
24666
  try {
24477
- res = await this.service.getDraft(this.context, this.params);
24667
+ res = await this.service.getDraft(this.context, queryParams);
24478
24668
  } catch (error) {
24479
24669
  this.actionNotification("GETDRAFTERROR", {
24480
24670
  error
24481
24671
  });
24482
24672
  throw error;
24483
24673
  }
24484
- this.state.items.unshift(res.data);
24485
- const newRow = new GridRowState(res.data, this);
24674
+ const draftData = res.data;
24675
+ mergeDefaultInLeft3(draftData, defaultData);
24676
+ this.state.items.unshift(draftData);
24677
+ const newRow = new GridRowState(draftData, this);
24486
24678
  this.state.rows.unshift(newRow);
24487
24679
  this.gridStateNotify(newRow, "DRAFT" /* DRAFT */);
24488
24680
  this.switchRowEdit(this.state.rows[0], true);
24489
- this.actionNotification("GETDRAFTSUCCESS", { data: res.data });
24681
+ this.actionNotification("GETDRAFTSUCCESS", { data: draftData });
24490
24682
  }
24491
24683
  /**
24492
24684
  * 保存
@@ -24750,19 +24942,24 @@ var GridController = class extends MDControlController {
24750
24942
  if (toState === false) {
24751
24943
  if (isSave) {
24752
24944
  await this.save(row.data);
24753
- } else {
24754
- if (row.data.srfuf === 0 /* CREATE */) {
24755
- row.showRowEdit = false;
24756
- this.evt.emit("onRowEditChange", { row });
24757
- return this.remove({ data: [row.data], silent: true });
24758
- }
24945
+ } else if (row.data.srfuf === 0 /* CREATE */) {
24946
+ row.showRowEdit = false;
24947
+ this.evt.emit("onRowEditChange", { row });
24948
+ return this.remove({ data: [row.data], silent: true });
24949
+ } else if (row.cacheData) {
24950
+ row.data = row.cacheData;
24951
+ delete row.cacheData;
24759
24952
  }
24760
- }
24761
- if (toState === true) {
24953
+ } else {
24762
24954
  const editingRow = this.state.rows.find((item) => item.showRowEdit);
24763
24955
  if (editingRow) {
24764
24956
  throw new RuntimeError41("\u540C\u65F6\u53EA\u80FD\u6709\u4E00\u884C\u5F00\u542F\u884C\u7F16\u8F91");
24765
24957
  }
24958
+ if (row.data.srfuf === 1 /* UPDATE */) {
24959
+ row.cacheData = clone15(row.data);
24960
+ const defaultVal = this.calcDefaultValue(row.data, false);
24961
+ Object.assign(row.data, defaultVal);
24962
+ }
24766
24963
  }
24767
24964
  row.showRowEdit = toState;
24768
24965
  Object.values(this.editColumns).forEach((column) => {
@@ -24951,6 +25148,36 @@ var GridController = class extends MDControlController {
24951
25148
  // 单元格是否自适应
24952
25149
  });
24953
25150
  }
25151
+ /**
25152
+ * 计算默认值并返回一个对象,对象里的属性就是要填充的默认值
25153
+ * 没有的属性就是不需要填充默认值的属性
25154
+ * @author lxm
25155
+ * @date 2023-09-18 04:01:06
25156
+ * @param {IData} data
25157
+ * @param {boolean} isCreate
25158
+ * @return {*} {IData}
25159
+ */
25160
+ calcDefaultValue(data, isCreate) {
25161
+ const result = {};
25162
+ Object.values(this.editColumns).forEach((c) => {
25163
+ const { createDV, createDVT, updateDV, updateDVT } = c.editItem;
25164
+ const valueType = isCreate ? createDVT : updateDVT;
25165
+ const defaultValue = isCreate ? createDV : updateDV;
25166
+ const defaultVal = getDefaultValue(
25167
+ {
25168
+ name: c.fieldName,
25169
+ valueType,
25170
+ defaultValue,
25171
+ valueFormat: c.valueFormat
25172
+ },
25173
+ { data, context: this.context, params: this.params }
25174
+ );
25175
+ if (defaultVal !== void 0) {
25176
+ result[c.fieldName] = defaultVal;
25177
+ }
25178
+ });
25179
+ return result;
25180
+ }
24954
25181
  };
24955
25182
 
24956
25183
  // src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts
@@ -26364,6 +26591,23 @@ var SearchBarController = class extends ControlController {
26364
26591
 
26365
26592
  // src/controller/control/tab-exp-panel/tab-exp-panel.controller.ts
26366
26593
  var TabExpPanelController = class extends ControlController {
26594
+ constructor() {
26595
+ super(...arguments);
26596
+ /**
26597
+ * 是否显示文本
26598
+ * @return {*}
26599
+ * @author: zhujiamin
26600
+ * @Date: 2023-09-20 10:36:35
26601
+ */
26602
+ this.isShowCaption = true;
26603
+ /**
26604
+ * 是否显示图标
26605
+ * @return {*}
26606
+ * @author: zhujiamin
26607
+ * @Date: 2023-09-20 10:36:46
26608
+ */
26609
+ this.isShowIcon = false;
26610
+ }
26367
26611
  /**
26368
26612
  * 初始化state的属性
26369
26613
  *
@@ -26386,6 +26630,7 @@ var TabExpPanelController = class extends ControlController {
26386
26630
  await super.onCreated();
26387
26631
  this.layoutPanel = this.view.layoutPanel;
26388
26632
  this.initTabPages();
26633
+ this.initIconCaption();
26389
26634
  }
26390
26635
  /**
26391
26636
  * 初始化分页数据
@@ -26399,7 +26644,8 @@ var TabExpPanelController = class extends ControlController {
26399
26644
  tabPages.push({
26400
26645
  caption: panel.caption,
26401
26646
  tabTag: panel.id,
26402
- class: panel.sysCss ? [panel.sysCss.cssName] : []
26647
+ class: panel.sysCss ? [panel.sysCss.cssName] : [],
26648
+ sysImage: panel.sysImage
26403
26649
  });
26404
26650
  });
26405
26651
  this.state.tabPages = tabPages;
@@ -26407,6 +26653,31 @@ var TabExpPanelController = class extends ControlController {
26407
26653
  this.initDefaultPage();
26408
26654
  }
26409
26655
  }
26656
+ /**
26657
+ * 初始化图标和文本显示
26658
+ *
26659
+ * @memberof TabExpPanelController
26660
+ */
26661
+ initIconCaption() {
26662
+ if (this.params.showmode) {
26663
+ switch (this.params.showmode) {
26664
+ case "ICONANDSHORTWORD":
26665
+ this.isShowIcon = true;
26666
+ this.isShowCaption = true;
26667
+ break;
26668
+ case "ICON":
26669
+ this.isShowIcon = true;
26670
+ this.isShowCaption = false;
26671
+ break;
26672
+ case "SHORTWORD":
26673
+ this.isShowIcon = false;
26674
+ this.isShowCaption = true;
26675
+ break;
26676
+ default:
26677
+ break;
26678
+ }
26679
+ }
26680
+ }
26410
26681
  /**
26411
26682
  * 初始化默认分页
26412
26683
  *
@@ -27565,7 +27836,7 @@ var MDCtrlController = class extends MDControlController {
27565
27836
 
27566
27837
  // src/controller/control/kanban/kanban.controller.ts
27567
27838
  import { RuntimeError as RuntimeError45, RuntimeModelError as RuntimeModelError53 } from "@ibiz-template/core";
27568
- import { isNil as isNil16 } from "ramda";
27839
+ import { isNil as isNil17 } from "ramda";
27569
27840
 
27570
27841
  // src/controller/control/kanban/kanban.service.ts
27571
27842
  var KanbanService = class extends DataViewControlService {
@@ -27609,16 +27880,6 @@ var KanbanController = class extends DataViewControlController {
27609
27880
  get enableEditGroup() {
27610
27881
  return this.model.enableCardEditGroup === true;
27611
27882
  }
27612
- /**
27613
- * 是否允许新建
27614
- * @author lxm
27615
- * @date 2023-09-11 04:05:25
27616
- * @readonly
27617
- * @type {boolean}
27618
- */
27619
- get enableNew() {
27620
- return this.model.enableCardNew === true;
27621
- }
27622
27883
  async initControlService() {
27623
27884
  this.service = new KanbanService(this.model);
27624
27885
  await this.service.init(this.context);
@@ -27638,47 +27899,6 @@ var KanbanController = class extends DataViewControlController {
27638
27899
  */
27639
27900
  async onCreated() {
27640
27901
  await super.onCreated();
27641
- await this.initGroupActionStates();
27642
- }
27643
- /**
27644
- * 初始化分组右侧界面行为按钮的状态
27645
- *
27646
- * @author chitanda
27647
- * @date 2023-08-02 17:08:04
27648
- * @return {*} {Promise<void>}
27649
- */
27650
- async initGroupActionStates() {
27651
- var _a;
27652
- const { groupUIActionGroup } = this.model;
27653
- if (!((_a = groupUIActionGroup == null ? void 0 : groupUIActionGroup.uiactionGroupDetails) == null ? void 0 : _a.length)) {
27654
- return;
27655
- }
27656
- const containerState = new ButtonContainerState();
27657
- groupUIActionGroup.uiactionGroupDetails.forEach((detail) => {
27658
- const actionid = detail.uiactionId;
27659
- if (actionid) {
27660
- const buttonState = new UIActionButtonState(
27661
- detail.id,
27662
- this.context.srfappid,
27663
- actionid
27664
- );
27665
- containerState.addState(detail.id, buttonState);
27666
- }
27667
- });
27668
- await containerState.update();
27669
- this.state.groupActionGroupState = containerState;
27670
- this.evt.on("onSelectionChange", (event) => {
27671
- let data = event.data[0];
27672
- if (data && data instanceof ControlVO) {
27673
- data = data.getOrigin();
27674
- }
27675
- if (data) {
27676
- this.state.groupActionGroupState.update(
27677
- data,
27678
- this.model.appDataEntityId
27679
- );
27680
- }
27681
- });
27682
27902
  }
27683
27903
  /**
27684
27904
  * 本地排序items
@@ -27698,7 +27918,7 @@ var KanbanController = class extends DataViewControlController {
27698
27918
  const isAsc = minorSortDir === "ASC";
27699
27919
  items.forEach((item) => {
27700
27920
  const sortValue = item[sortField];
27701
- if (isNil16(sortValue)) {
27921
+ if (isNil17(sortValue)) {
27702
27922
  item[sortField] = 0;
27703
27923
  } else {
27704
27924
  const toNum = Number(sortValue);
@@ -27840,42 +28060,6 @@ var KanbanController = class extends DataViewControlController {
27840
28060
  await this.afterLoad({}, this.state.items);
27841
28061
  }
27842
28062
  }
27843
- /**
27844
- * 点击新建
27845
- * @author lxm
27846
- * @date 2023-09-11 07:22:33
27847
- * @param {MouseEvent} event
27848
- * @param {(string | number)} group 分组标识
27849
- */
27850
- onClickNew(event, group) {
27851
- const params = { ...this.params, srfgroup: group };
27852
- UIActionUtil.execAndResolved("new", {
27853
- context: this.context,
27854
- params,
27855
- data: [],
27856
- view: this.view,
27857
- event
27858
- });
27859
- }
27860
- /**
27861
- * 分组工具栏点击处理回调
27862
- * @author lxm
27863
- * @date 2023-09-11 04:48:06
27864
- * @param {IUIActionGroupDetail} detail
27865
- * @param {MouseEvent} event
27866
- * @return {*} {Promise<void>}
27867
- */
27868
- async onGroupToolbarClick(detail, event, group) {
27869
- const actionId = detail.uiactionId;
27870
- const params = { ...this.params, srfgroup: group };
27871
- await UIActionUtil.execAndResolved(actionId, {
27872
- context: this.context,
27873
- params,
27874
- data: this.state.selectedData,
27875
- view: this.view,
27876
- event
27877
- });
27878
- }
27879
28063
  };
27880
28064
 
27881
28065
  // src/controller/hub.controller.ts
@@ -28491,6 +28675,12 @@ var MDViewEngine = class extends ViewEngineBase {
28491
28675
  await super.onCreated();
28492
28676
  const { childNames } = this.view;
28493
28677
  childNames.push(this.xdataControlName, "searchform", "searchbar");
28678
+ if (this.xdataControlName) {
28679
+ if (!this.view.slotProps[this.xdataControlName]) {
28680
+ this.view.slotProps[this.xdataControlName] = {};
28681
+ }
28682
+ this.view.slotProps[this.xdataControlName].loadDefault = false;
28683
+ }
28494
28684
  }
28495
28685
  async onMounted() {
28496
28686
  await super.onMounted();
@@ -30131,6 +30321,7 @@ export {
30131
30321
  getControlProvider,
30132
30322
  getControlsByView,
30133
30323
  getDeACMode,
30324
+ getDefaultValue,
30134
30325
  getEditorProvider,
30135
30326
  getFormDetailProvider,
30136
30327
  getFormTypeFieldName,