@ibiz-template/runtime 0.4.12 → 0.4.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.js +1134 -225
- package/dist/index.system.min.js +2 -2
- package/out/config/global-config.js +1 -1
- package/out/controller/common/base.controller.d.ts +7 -0
- package/out/controller/common/base.controller.d.ts.map +1 -1
- package/out/controller/common/base.controller.js +10 -0
- package/out/controller/common/view/view.controller.d.ts +7 -0
- package/out/controller/common/view/view.controller.d.ts.map +1 -1
- package/out/controller/common/view/view.controller.js +11 -0
- package/out/controller/control/app-menu/app-menu.controller.d.ts +7 -0
- package/out/controller/control/app-menu/app-menu.controller.d.ts.map +1 -1
- package/out/controller/control/app-menu/app-menu.controller.js +22 -0
- package/out/controller/control/caption-bar/caption-bar.controller.d.ts.map +1 -1
- package/out/controller/control/caption-bar/caption-bar.controller.js +1 -6
- package/out/controller/control/form/form-detail/form-detail/form-detail.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-detail/form-detail.controller.js +5 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts +13 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.js +24 -3
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.d.ts +13 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.js +26 -2
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts +0 -8
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.js +0 -10
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts +8 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.js +10 -0
- package/out/controller/control/gantt/gantt.controller.d.ts +146 -2
- package/out/controller/control/gantt/gantt.controller.d.ts.map +1 -1
- package/out/controller/control/gantt/gantt.controller.js +270 -0
- package/out/controller/control/grid/grid/grid-row.state.d.ts +11 -0
- package/out/controller/control/grid/grid/grid-row.state.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid-row.state.js +13 -0
- package/out/controller/control/grid/grid/grid.controller.d.ts +7 -0
- package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid.controller.js +27 -0
- package/out/controller/control/grid/grid/grid.service.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid.service.js +30 -20
- package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.d.ts +21 -1
- package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.js +44 -1
- package/out/controller/control/kanban/kanban.controller.d.ts +13 -0
- package/out/controller/control/kanban/kanban.controller.d.ts.map +1 -1
- package/out/controller/control/kanban/kanban.controller.js +72 -0
- package/out/controller/control/report-panel/generator/user-generator.js +1 -1
- package/out/controller/control/search-bar/search-bar.controller.d.ts.map +1 -1
- package/out/controller/control/search-bar/search-bar.controller.js +2 -1
- package/out/controller/control/toolbar/toolbar.controllerr.d.ts +7 -0
- package/out/controller/control/toolbar/toolbar.controllerr.d.ts.map +1 -1
- package/out/controller/control/toolbar/toolbar.controllerr.js +22 -0
- package/out/controller/control/tree/tree.controller.d.ts +90 -2
- package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
- package/out/controller/control/tree/tree.controller.js +295 -2
- package/out/interface/common/i-global-config/i-global-view-config.d.ts +1 -1
- package/out/interface/common/i-global-config/i-global-view-config.d.ts.map +1 -1
- package/out/interface/controller/controller/control/i-tree.controller.d.ts +1 -1
- package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -1
- package/out/interface/controller/event/control/i-gantt.event.d.ts +42 -0
- package/out/interface/controller/event/control/i-gantt.event.d.ts.map +1 -1
- package/out/interface/controller/event/control/i-tree.event.d.ts +17 -0
- package/out/interface/controller/event/control/i-tree.event.d.ts.map +1 -1
- package/out/interface/controller/state/control/i-gantt.state.d.ts +22 -0
- package/out/interface/controller/state/control/i-gantt.state.d.ts.map +1 -1
- package/out/interface/controller/state/control/i-grid.state.d.ts +11 -0
- package/out/interface/controller/state/control/i-grid.state.d.ts.map +1 -1
- package/out/interface/controller/state/control/i-kanban.state.d.ts +24 -0
- package/out/interface/controller/state/control/i-kanban.state.d.ts.map +1 -1
- package/out/interface/controller/state/control/i-tree.state.d.ts +7 -0
- package/out/interface/controller/state/control/i-tree.state.d.ts.map +1 -1
- package/out/interface/provider/i-grid-column.provider.d.ts +2 -2
- package/out/interface/provider/i-grid-column.provider.d.ts.map +1 -1
- package/out/interface/service/i-data-entity/i-data-entity.d.ts +8 -0
- package/out/interface/service/i-data-entity/i-data-entity.d.ts.map +1 -1
- package/out/interface/service/service/i-app-de.service.d.ts +11 -0
- package/out/interface/service/service/i-app-de.service.d.ts.map +1 -1
- package/out/logic-scheduler/executor/app-ui-logic-executor.d.ts.map +1 -1
- package/out/logic-scheduler/executor/app-ui-logic-executor.js +4 -2
- package/out/model/index.d.ts +1 -0
- package/out/model/index.d.ts.map +1 -1
- package/out/model/index.js +1 -0
- package/out/model/toolbar/toolbar.d.ts +12 -0
- package/out/model/toolbar/toolbar.d.ts.map +1 -0
- package/out/model/toolbar/toolbar.js +22 -0
- package/out/register/helper/grid-column-register.d.ts +2 -2
- package/out/register/helper/grid-column-register.d.ts.map +1 -1
- package/out/register/helper/grid-column-register.js +14 -0
- package/out/service/dto/method.dto.d.ts.map +1 -1
- package/out/service/dto/method.dto.js +8 -1
- package/out/service/service/entity/de.service.d.ts +9 -1
- package/out/service/service/entity/de.service.d.ts.map +1 -1
- package/out/service/service/entity/de.service.js +69 -0
- package/out/service/service/entity/method/fetch.d.ts +5 -12
- package/out/service/service/entity/method/fetch.d.ts.map +1 -1
- package/out/service/service/entity/method/fetch.js +7 -74
- package/out/service/vo/gantt-node-data/gantt-code-list-node-data.d.ts +1 -0
- package/out/service/vo/gantt-node-data/gantt-code-list-node-data.d.ts.map +1 -1
- package/out/service/vo/gantt-node-data/gantt-data-set-node-data.d.ts +2 -0
- package/out/service/vo/gantt-node-data/gantt-data-set-node-data.d.ts.map +1 -1
- package/out/service/vo/gantt-node-data/gantt-data-set-node-data.js +2 -1
- package/out/service/vo/gantt-node-data/gantt-node-data-util.d.ts +7 -0
- package/out/service/vo/gantt-node-data/gantt-node-data-util.d.ts.map +1 -1
- package/out/service/vo/gantt-node-data/gantt-node-data-util.js +18 -0
- package/out/service/vo/gantt-node-data/gantt-static-node-data.d.ts +1 -0
- package/out/service/vo/gantt-node-data/gantt-static-node-data.d.ts.map +1 -1
- package/out/service/vo/tree-node-data/tree-code-list-node-data.d.ts.map +1 -1
- package/out/service/vo/tree-node-data/tree-code-list-node-data.js +8 -4
- package/out/service/vo/tree-node-data/tree-data-set-node-data.d.ts.map +1 -1
- package/out/service/vo/tree-node-data/tree-data-set-node-data.js +8 -4
- package/out/service/vo/tree-node-data/tree-node-data.d.ts +1 -0
- package/out/service/vo/tree-node-data/tree-node-data.d.ts.map +1 -1
- package/out/service/vo/tree-node-data/tree-node-data.js +2 -0
- package/out/service/vo/tree-node-data/tree-static-node-data.d.ts.map +1 -1
- package/out/service/vo/tree-node-data/tree-static-node-data.js +8 -2
- package/out/utils/layout-panel-util/layout-panel-util.js +1 -1
- package/package.json +2 -2
- package/src/config/global-config.ts +1 -1
- package/src/controller/common/base.controller.ts +11 -0
- package/src/controller/common/view/view.controller.ts +15 -0
- package/src/controller/control/app-menu/app-menu.controller.ts +25 -0
- package/src/controller/control/caption-bar/caption-bar.controller.ts +1 -8
- package/src/controller/control/form/form-detail/form-detail/form-detail.controller.ts +9 -1
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts +27 -3
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.ts +26 -2
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts +0 -11
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts +11 -0
- package/src/controller/control/gantt/gantt.controller.ts +331 -1
- package/src/controller/control/grid/grid/grid-row.state.ts +15 -0
- package/src/controller/control/grid/grid/grid.controller.ts +34 -0
- package/src/controller/control/grid/grid/grid.service.ts +34 -21
- package/src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts +67 -2
- package/src/controller/control/kanban/kanban.controller.ts +81 -0
- package/src/controller/control/report-panel/generator/user-generator.ts +1 -1
- package/src/controller/control/search-bar/search-bar.controller.ts +2 -1
- package/src/controller/control/toolbar/toolbar.controllerr.ts +29 -0
- package/src/controller/control/tree/tree.controller.ts +371 -3
- package/src/interface/common/i-global-config/i-global-view-config.ts +1 -1
- package/src/interface/controller/controller/control/i-tree.controller.ts +1 -1
- package/src/interface/controller/event/control/i-gantt.event.ts +37 -1
- package/src/interface/controller/event/control/i-tree.event.ts +14 -0
- package/src/interface/controller/state/control/i-gantt.state.ts +25 -0
- package/src/interface/controller/state/control/i-grid.state.ts +10 -0
- package/src/interface/controller/state/control/i-kanban.state.ts +26 -0
- package/src/interface/controller/state/control/i-tree.state.ts +8 -0
- package/src/interface/provider/i-grid-column.provider.ts +2 -2
- package/src/interface/service/i-data-entity/i-data-entity.ts +9 -0
- package/src/interface/service/service/i-app-de.service.ts +12 -0
- package/src/logic-scheduler/executor/app-ui-logic-executor.ts +8 -2
- package/src/model/index.ts +1 -0
- package/src/model/toolbar/toolbar.ts +35 -0
- package/src/register/helper/grid-column-register.ts +17 -2
- package/src/service/dto/method.dto.ts +8 -1
- package/src/service/service/entity/de.service.ts +74 -1
- package/src/service/service/entity/method/fetch.ts +8 -79
- package/src/service/vo/gantt-node-data/gantt-code-list-node-data.ts +2 -0
- package/src/service/vo/gantt-node-data/gantt-data-set-node-data.ts +6 -1
- package/src/service/vo/gantt-node-data/gantt-node-data-util.ts +21 -0
- package/src/service/vo/gantt-node-data/gantt-static-node-data.ts +2 -0
- package/src/service/vo/tree-node-data/tree-code-list-node-data.ts +10 -5
- package/src/service/vo/tree-node-data/tree-data-set-node-data.ts +10 -5
- package/src/service/vo/tree-node-data/tree-node-data.ts +3 -0
- package/src/service/vo/tree-node-data/tree-static-node-data.ts +10 -3
- package/src/utils/layout-panel-util/layout-panel-util.ts +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -5,7 +5,7 @@ var GlobalConfig = class {
|
|
|
5
5
|
this.view = {
|
|
6
6
|
enableDataInfoBar: true,
|
|
7
7
|
expCacheMode: "TABEXPPANEL:",
|
|
8
|
-
|
|
8
|
+
disableHomeTabs: false
|
|
9
9
|
};
|
|
10
10
|
// 全局表格配置
|
|
11
11
|
this.grid = {
|
|
@@ -1032,6 +1032,25 @@ function getAllPanelField(model) {
|
|
|
1032
1032
|
return _getAllPanelField(model);
|
|
1033
1033
|
}
|
|
1034
1034
|
|
|
1035
|
+
// src/model/toolbar/toolbar.ts
|
|
1036
|
+
import { recursiveIterate } from "@ibiz-template/core";
|
|
1037
|
+
function getUIActionItemsByActionLevel(toolbar, actionLevel) {
|
|
1038
|
+
const result = [];
|
|
1039
|
+
recursiveIterate(
|
|
1040
|
+
toolbar,
|
|
1041
|
+
(item) => {
|
|
1042
|
+
if (item.itemType === "DEUIACTION") {
|
|
1043
|
+
const uiItem = item;
|
|
1044
|
+
if (uiItem.actionLevel === actionLevel) {
|
|
1045
|
+
result.push(uiItem);
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
1048
|
+
},
|
|
1049
|
+
{ childrenFields: ["detoolbarItems"] }
|
|
1050
|
+
);
|
|
1051
|
+
return result;
|
|
1052
|
+
}
|
|
1053
|
+
|
|
1035
1054
|
// src/utils/open-redirect-view/open-redirect-view.ts
|
|
1036
1055
|
async function openRedirectView(appView, context, params = {}, opts = {}) {
|
|
1037
1056
|
return openDERedirectView(
|
|
@@ -2035,7 +2054,7 @@ var LayoutPanelUtil = class {
|
|
|
2035
2054
|
} else {
|
|
2036
2055
|
key = "".concat(viewType, "_").concat(viewStyle);
|
|
2037
2056
|
}
|
|
2038
|
-
if (ibiz.config.view.
|
|
2057
|
+
if (ibiz.config.view.disableHomeTabs && [
|
|
2039
2058
|
"APPINDEXVIEW_DEFAULT",
|
|
2040
2059
|
"APPINDEXVIEW_DEFAULT_LEFT",
|
|
2041
2060
|
"APPINDEXVIEW_DEFAULT_TOP"
|
|
@@ -3321,6 +3340,7 @@ function getProvider5(key) {
|
|
|
3321
3340
|
async function getGridColumnProvider(model) {
|
|
3322
3341
|
let provider;
|
|
3323
3342
|
const { columnType, enableRowEdit, sysPFPluginId, appId } = model;
|
|
3343
|
+
const { renderSysPFPluginId } = model;
|
|
3324
3344
|
if (sysPFPluginId) {
|
|
3325
3345
|
const pluginKey = await getPluginRegisterKey(sysPFPluginId, appId);
|
|
3326
3346
|
if (pluginKey) {
|
|
@@ -3332,6 +3352,17 @@ async function getGridColumnProvider(model) {
|
|
|
3332
3352
|
return provider;
|
|
3333
3353
|
}
|
|
3334
3354
|
}
|
|
3355
|
+
if (renderSysPFPluginId) {
|
|
3356
|
+
const pluginKey = await getPluginRegisterKey(renderSysPFPluginId, appId);
|
|
3357
|
+
if (pluginKey) {
|
|
3358
|
+
provider = getProvider5(pluginKey);
|
|
3359
|
+
}
|
|
3360
|
+
if (!provider) {
|
|
3361
|
+
ibiz.log.error("\u627E\u4E0D\u5230\u6811\u8868\u683C\u5217\u63D2\u4EF6".concat(pluginKey, "\u5BF9\u5E94\u7684\u9002\u914D\u5668"));
|
|
3362
|
+
} else {
|
|
3363
|
+
return provider;
|
|
3364
|
+
}
|
|
3365
|
+
}
|
|
3335
3366
|
const key = enableRowEdit ? "".concat(columnType, "_EDIT") : columnType;
|
|
3336
3367
|
provider = getProvider5(key);
|
|
3337
3368
|
if (!provider) {
|
|
@@ -5075,6 +5106,8 @@ import {
|
|
|
5075
5106
|
ModelError as ModelError5,
|
|
5076
5107
|
RuntimeError as RuntimeError16
|
|
5077
5108
|
} from "@ibiz-template/core";
|
|
5109
|
+
import { equals as equals2, isEmpty as isEmpty7, where as where2 } from "ramda";
|
|
5110
|
+
import { ascSort } from "qx-util";
|
|
5078
5111
|
|
|
5079
5112
|
// src/service/service/work-flow/work-flow.service.ts
|
|
5080
5113
|
import { RuntimeError as RuntimeError15 } from "@ibiz-template/core";
|
|
@@ -5543,6 +5576,55 @@ var DEService = class {
|
|
|
5543
5576
|
fetchTempDefault(context, params, params2) {
|
|
5544
5577
|
return this.exec("FetchTempDefault", context, params, params2);
|
|
5545
5578
|
}
|
|
5579
|
+
/**
|
|
5580
|
+
* 查询本地数据,根据属性
|
|
5581
|
+
*
|
|
5582
|
+
* @param {IParams} context
|
|
5583
|
+
* @param {IParams} params 根据多实体属性查找,例:{ name: '张三', age: 18, parent: null }
|
|
5584
|
+
* @return {*} {Promise<IDataEntity[]>}
|
|
5585
|
+
*/
|
|
5586
|
+
async selectLocal(context, params = {}) {
|
|
5587
|
+
let items = this.local.getList(context);
|
|
5588
|
+
items = ascSort(items, "srfordervalue");
|
|
5589
|
+
const data = {};
|
|
5590
|
+
const nullData = {};
|
|
5591
|
+
const undefinedData = {};
|
|
5592
|
+
const emptyData = {};
|
|
5593
|
+
if (params.srfkey) {
|
|
5594
|
+
data.srfkey = equals2(params.srfkey);
|
|
5595
|
+
delete params.srfkey;
|
|
5596
|
+
}
|
|
5597
|
+
for (const key in params) {
|
|
5598
|
+
if (Object.prototype.hasOwnProperty.call(params, key)) {
|
|
5599
|
+
const val = params[key];
|
|
5600
|
+
if (val == null) {
|
|
5601
|
+
nullData[key] = equals2(null);
|
|
5602
|
+
undefinedData[key] = equals2(void 0);
|
|
5603
|
+
emptyData[key] = equals2("");
|
|
5604
|
+
} else {
|
|
5605
|
+
data[key] = equals2(val);
|
|
5606
|
+
}
|
|
5607
|
+
}
|
|
5608
|
+
}
|
|
5609
|
+
if (!isEmpty7(data)) {
|
|
5610
|
+
const pred = where2(data);
|
|
5611
|
+
const nullPred = where2(nullData);
|
|
5612
|
+
const undefinedPred = where2(undefinedData);
|
|
5613
|
+
const emptyPred = where2(emptyData);
|
|
5614
|
+
items = items.filter((obj) => {
|
|
5615
|
+
if (isEmpty7(nullData)) {
|
|
5616
|
+
if (pred(obj)) {
|
|
5617
|
+
return true;
|
|
5618
|
+
}
|
|
5619
|
+
} else if (pred(obj) && (nullPred(obj) || undefinedPred(obj) || emptyPred(obj))) {
|
|
5620
|
+
return true;
|
|
5621
|
+
}
|
|
5622
|
+
return false;
|
|
5623
|
+
});
|
|
5624
|
+
}
|
|
5625
|
+
const list = items.map((obj) => obj.clone());
|
|
5626
|
+
return list;
|
|
5627
|
+
}
|
|
5546
5628
|
/**
|
|
5547
5629
|
* 执行服务方法 ac 模式
|
|
5548
5630
|
*
|
|
@@ -6661,7 +6743,9 @@ var MethodDto = class _MethodDto {
|
|
|
6661
6743
|
const service = await this.app.deService.getService(
|
|
6662
6744
|
field.refAppDataEntityId
|
|
6663
6745
|
);
|
|
6664
|
-
const items = service.
|
|
6746
|
+
const items = await service.selectLocal(context, {
|
|
6747
|
+
// srfpkey: data[this.entity.keyAppDEFieldId!],
|
|
6748
|
+
});
|
|
6665
6749
|
if (items) {
|
|
6666
6750
|
const arr = [];
|
|
6667
6751
|
for (let j = 0; j < items.length; j++) {
|
|
@@ -6708,6 +6792,10 @@ var MethodDto = class _MethodDto {
|
|
|
6708
6792
|
const dto = await this.getFieldDto(field);
|
|
6709
6793
|
const items = datum[key];
|
|
6710
6794
|
if (items) {
|
|
6795
|
+
const pKey = datum[this.entity.keyAppDEFieldId];
|
|
6796
|
+
items.forEach((item) => {
|
|
6797
|
+
item.srfpkey = pKey;
|
|
6798
|
+
});
|
|
6711
6799
|
await dto.sets(context, items);
|
|
6712
6800
|
} else {
|
|
6713
6801
|
await dto.sets(context, []);
|
|
@@ -8439,9 +8527,9 @@ import {
|
|
|
8439
8527
|
ModelError as ModelError13,
|
|
8440
8528
|
RuntimeModelError as RuntimeModelError20
|
|
8441
8529
|
} from "@ibiz-template/core";
|
|
8442
|
-
import { ascSort, descSort } from "qx-util";
|
|
8443
|
-
import { clone as clone13, equals as equals2, isEmpty as isEmpty7, isNil as isNil11, where as where2 } from "ramda";
|
|
8444
8530
|
import { isArray as isArray8 } from "lodash-es";
|
|
8531
|
+
import { clone as clone13, isEmpty as isEmpty8, isNil as isNil11 } from "ramda";
|
|
8532
|
+
import { ascSort as ascSort2, descSort } from "qx-util";
|
|
8445
8533
|
var FetchMethod = class extends Method {
|
|
8446
8534
|
get isLocalMode() {
|
|
8447
8535
|
return isLocalMode(this.method);
|
|
@@ -8487,63 +8575,14 @@ var FetchMethod = class extends Method {
|
|
|
8487
8575
|
}
|
|
8488
8576
|
return res;
|
|
8489
8577
|
}
|
|
8490
|
-
/**
|
|
8491
|
-
* 查询本地数据,根据属性
|
|
8492
|
-
*
|
|
8493
|
-
* @param {IParams} context
|
|
8494
|
-
* @param {IParams} params 根据多实体属性查找,例:{ name: '张三', age: 18, parent: null }
|
|
8495
|
-
* @return {*} {Promise<IDataEntity[]>}
|
|
8496
|
-
*/
|
|
8497
|
-
async selectLocal(context, params = {}) {
|
|
8498
|
-
const service = await this.getService();
|
|
8499
|
-
let items = service.local.getList(context);
|
|
8500
|
-
items = ascSort(items, "srfordervalue");
|
|
8501
|
-
const data = {};
|
|
8502
|
-
const nullData = {};
|
|
8503
|
-
const undefinedData = {};
|
|
8504
|
-
const emptyData = {};
|
|
8505
|
-
if (params.srfkey) {
|
|
8506
|
-
data.srfkey = equals2(params.srfkey);
|
|
8507
|
-
delete params.srfkey;
|
|
8508
|
-
}
|
|
8509
|
-
for (const key in params) {
|
|
8510
|
-
if (Object.prototype.hasOwnProperty.call(params, key)) {
|
|
8511
|
-
const val = params[key];
|
|
8512
|
-
if (val == null) {
|
|
8513
|
-
nullData[key] = equals2(null);
|
|
8514
|
-
undefinedData[key] = equals2(void 0);
|
|
8515
|
-
emptyData[key] = equals2("");
|
|
8516
|
-
} else {
|
|
8517
|
-
data[key] = equals2(val);
|
|
8518
|
-
}
|
|
8519
|
-
}
|
|
8520
|
-
}
|
|
8521
|
-
if (!isEmpty7(data)) {
|
|
8522
|
-
const pred = where2(data);
|
|
8523
|
-
const nullPred = where2(nullData);
|
|
8524
|
-
const undefinedPred = where2(undefinedData);
|
|
8525
|
-
const emptyPred = where2(emptyData);
|
|
8526
|
-
items = items.filter((obj) => {
|
|
8527
|
-
if (isEmpty7(nullData)) {
|
|
8528
|
-
if (pred(obj)) {
|
|
8529
|
-
return true;
|
|
8530
|
-
}
|
|
8531
|
-
} else if (pred(obj) && (nullPred(obj) || undefinedPred(obj) || emptyPred(obj))) {
|
|
8532
|
-
return true;
|
|
8533
|
-
}
|
|
8534
|
-
return false;
|
|
8535
|
-
});
|
|
8536
|
-
}
|
|
8537
|
-
const list = items.map((obj) => obj.clone());
|
|
8538
|
-
return list;
|
|
8539
|
-
}
|
|
8540
8578
|
/**
|
|
8541
8579
|
* 搜索本地数据
|
|
8542
8580
|
*
|
|
8543
|
-
* @
|
|
8544
|
-
* @
|
|
8581
|
+
* @author chitanda
|
|
8582
|
+
* @date 2023-12-18 11:12:27
|
|
8583
|
+
* @param {(PSDEDQCondEngine | null)} cond 查询实例
|
|
8545
8584
|
* @param {SearchFilter} filter 过滤对象
|
|
8546
|
-
* @param {string[]} [queryParamKeys=this.entity.
|
|
8585
|
+
* @param {string[]} [queryParamKeys=this.entity.quickSearchAppDEFieldIds!] 当前实体支持快速搜索的属性
|
|
8547
8586
|
* @return {*} {Promise<IDataEntity[]>}
|
|
8548
8587
|
*/
|
|
8549
8588
|
async searchLocal(cond, filter, queryParamKeys = this.entity.quickSearchAppDEFieldIds) {
|
|
@@ -8555,7 +8594,7 @@ var FetchMethod = class extends Method {
|
|
|
8555
8594
|
list = list.filter((obj) => cond.test(obj, filter));
|
|
8556
8595
|
}
|
|
8557
8596
|
} else {
|
|
8558
|
-
list = await
|
|
8597
|
+
list = await service.selectLocal(filter.context, filter.data);
|
|
8559
8598
|
if (list.length > 0) {
|
|
8560
8599
|
if (filter.query && filter.query !== "") {
|
|
8561
8600
|
if (queryParamKeys) {
|
|
@@ -8574,11 +8613,11 @@ var FetchMethod = class extends Method {
|
|
|
8574
8613
|
}
|
|
8575
8614
|
}
|
|
8576
8615
|
}
|
|
8577
|
-
if (!isNil11(filter.sortField) && !
|
|
8616
|
+
if (!isNil11(filter.sortField) && !isEmpty8(filter.sortField)) {
|
|
8578
8617
|
if (filter.sortMode === "DESC") {
|
|
8579
8618
|
list = descSort(list, filter.sortField);
|
|
8580
8619
|
} else {
|
|
8581
|
-
list =
|
|
8620
|
+
list = ascSort2(list, filter.sortField);
|
|
8582
8621
|
}
|
|
8583
8622
|
}
|
|
8584
8623
|
const { page, size } = filter;
|
|
@@ -8641,8 +8680,10 @@ function presetDEMethodProvider() {
|
|
|
8641
8680
|
}
|
|
8642
8681
|
|
|
8643
8682
|
// src/service/vo/tree-node-data/tree-node-data.ts
|
|
8683
|
+
import { createUUID as createUUID4 } from "qx-util";
|
|
8644
8684
|
var TreeNodeData = class {
|
|
8645
8685
|
constructor(model, parentNodeData, opts) {
|
|
8686
|
+
this._uuid = createUUID4();
|
|
8646
8687
|
this.leaf = false;
|
|
8647
8688
|
this.leaf = opts.leaf === true;
|
|
8648
8689
|
this.parent = parentNodeData;
|
|
@@ -8687,8 +8728,14 @@ var TreeCodeListNodeData = class extends TreeNodeData {
|
|
|
8687
8728
|
const { data } = opts;
|
|
8688
8729
|
this.text = data.text;
|
|
8689
8730
|
this.value = data.value;
|
|
8690
|
-
|
|
8691
|
-
this
|
|
8731
|
+
const selfId = "".concat(model.id, "@").concat(this.value).toLowerCase();
|
|
8732
|
+
Object.defineProperty(this, "id", {
|
|
8733
|
+
get() {
|
|
8734
|
+
return this.parent ? "".concat(this.parent.id, ":").concat(selfId) : selfId;
|
|
8735
|
+
},
|
|
8736
|
+
enumerable: true,
|
|
8737
|
+
configurable: true
|
|
8738
|
+
});
|
|
8692
8739
|
if (model.appDataEntityId) {
|
|
8693
8740
|
const deName = calcDeCodeNameById(model.appDataEntityId);
|
|
8694
8741
|
this.context = Object.assign(this.context || {}, {
|
|
@@ -8709,8 +8756,14 @@ var TreeDataSetNodeData = class extends TreeNodeData {
|
|
|
8709
8756
|
this.deData = data;
|
|
8710
8757
|
this.text = model.textAppDEFieldId ? data[model.textAppDEFieldId] : data.srfmajortext;
|
|
8711
8758
|
this.value = model.idAppDEFieldId ? data[model.idAppDEFieldId] : data.srfkey;
|
|
8712
|
-
|
|
8713
|
-
this
|
|
8759
|
+
const selfId = "".concat(model.id, "@").concat(data.srfkey).toLowerCase();
|
|
8760
|
+
Object.defineProperty(this, "id", {
|
|
8761
|
+
get() {
|
|
8762
|
+
return this.parent ? "".concat(this.parent.id, ":").concat(selfId) : selfId;
|
|
8763
|
+
},
|
|
8764
|
+
enumerable: true,
|
|
8765
|
+
configurable: true
|
|
8766
|
+
});
|
|
8714
8767
|
if (model.appDataEntityId) {
|
|
8715
8768
|
const deName = calcDeCodeNameById(model.appDataEntityId);
|
|
8716
8769
|
this.context = Object.assign(this.context || {}, {
|
|
@@ -8784,8 +8837,14 @@ var TreeStaticNodeData = class extends TreeNodeData {
|
|
|
8784
8837
|
var _a, _b;
|
|
8785
8838
|
super(model, parentNodeData, opts);
|
|
8786
8839
|
const nodeValue = model.nodeValue === "root" ? void 0 : model.nodeValue;
|
|
8787
|
-
|
|
8788
|
-
this
|
|
8840
|
+
const selfId = "".concat(model.id).toLowerCase();
|
|
8841
|
+
Object.defineProperty(this, "id", {
|
|
8842
|
+
get() {
|
|
8843
|
+
return this.parent ? "".concat(this.parent.id, ":").concat(selfId) : selfId;
|
|
8844
|
+
},
|
|
8845
|
+
enumerable: true,
|
|
8846
|
+
configurable: true
|
|
8847
|
+
});
|
|
8789
8848
|
this.text = model.text;
|
|
8790
8849
|
this.value = nodeValue;
|
|
8791
8850
|
if (parentNodeData && opts.parentValueLevel) {
|
|
@@ -9086,7 +9145,7 @@ var PanelData = class {
|
|
|
9086
9145
|
};
|
|
9087
9146
|
|
|
9088
9147
|
// src/service/vo/chart-data/chart-data.ts
|
|
9089
|
-
import { createUUID as
|
|
9148
|
+
import { createUUID as createUUID5 } from "qx-util";
|
|
9090
9149
|
function updateKeyDefine3(target, keys) {
|
|
9091
9150
|
keys.forEach((key) => {
|
|
9092
9151
|
if (!Object.prototype.hasOwnProperty.call(target, key)) {
|
|
@@ -9104,7 +9163,7 @@ var ChartData = class {
|
|
|
9104
9163
|
this._seriesModelId = seriesModel == null ? void 0 : seriesModel.id;
|
|
9105
9164
|
this._catalog = catalog;
|
|
9106
9165
|
this._groupName = groupName;
|
|
9107
|
-
this._uuid =
|
|
9166
|
+
this._uuid = createUUID5();
|
|
9108
9167
|
return new Proxy(this, {
|
|
9109
9168
|
set(target, p, value) {
|
|
9110
9169
|
if (Object.prototype.hasOwnProperty.call(deData, p)) {
|
|
@@ -9147,6 +9206,18 @@ var calcDataItemValue = (fieldCodeName, nodeModel, data = {}) => {
|
|
|
9147
9206
|
}
|
|
9148
9207
|
return result;
|
|
9149
9208
|
};
|
|
9209
|
+
var calcNodeDataItem = (nodeModel, data) => {
|
|
9210
|
+
var _a;
|
|
9211
|
+
const dataItem = {};
|
|
9212
|
+
(_a = nodeModel.detreeNodeDataItems) == null ? void 0 : _a.forEach((item) => {
|
|
9213
|
+
if (item.id && item.appDEFieldId) {
|
|
9214
|
+
Object.assign(dataItem, {
|
|
9215
|
+
[item.id.toLowerCase()]: data[item.appDEFieldId.toLowerCase()]
|
|
9216
|
+
});
|
|
9217
|
+
}
|
|
9218
|
+
});
|
|
9219
|
+
return dataItem;
|
|
9220
|
+
};
|
|
9150
9221
|
|
|
9151
9222
|
// src/service/vo/gantt-node-data/gantt-static-node-data.ts
|
|
9152
9223
|
var GanttStaticNodeData = class extends TreeStaticNodeData {
|
|
@@ -9208,6 +9279,7 @@ var GanttDataSetNodeData = class extends TreeDataSetNodeData {
|
|
|
9208
9279
|
nodeModel,
|
|
9209
9280
|
data
|
|
9210
9281
|
);
|
|
9282
|
+
this.nodeDataItem = calcNodeDataItem(nodeModel, data);
|
|
9211
9283
|
}
|
|
9212
9284
|
};
|
|
9213
9285
|
|
|
@@ -9250,7 +9322,7 @@ var GanttCodeListNodeData = class extends TreeCodeListNodeData {
|
|
|
9250
9322
|
};
|
|
9251
9323
|
|
|
9252
9324
|
// src/service/mqtt/mqtt.service.ts
|
|
9253
|
-
import { QXEvent as QXEvent3, createUUID as
|
|
9325
|
+
import { QXEvent as QXEvent3, createUUID as createUUID6, isNilOrEmpty as isNilOrEmpty6 } from "qx-util";
|
|
9254
9326
|
var MqttService = class {
|
|
9255
9327
|
/**
|
|
9256
9328
|
* Creates an instance of MqttService.
|
|
@@ -9284,7 +9356,7 @@ var MqttService = class {
|
|
|
9284
9356
|
// 超时时间
|
|
9285
9357
|
connectTimeout: 6e3,
|
|
9286
9358
|
// 认证信息
|
|
9287
|
-
clientId:
|
|
9359
|
+
clientId: createUUID6(),
|
|
9288
9360
|
username: "",
|
|
9289
9361
|
password: "",
|
|
9290
9362
|
// 心跳时间
|
|
@@ -9723,7 +9795,7 @@ function installCommand() {
|
|
|
9723
9795
|
}
|
|
9724
9796
|
|
|
9725
9797
|
// src/app-hub.ts
|
|
9726
|
-
import { RuntimeError as
|
|
9798
|
+
import { RuntimeError as RuntimeError59 } from "@ibiz-template/core";
|
|
9727
9799
|
|
|
9728
9800
|
// src/application.ts
|
|
9729
9801
|
import { Net, getToken } from "@ibiz-template/core";
|
|
@@ -9990,9 +10062,9 @@ var PanelNotifyState = /* @__PURE__ */ ((PanelNotifyState2) => {
|
|
|
9990
10062
|
})(PanelNotifyState || {});
|
|
9991
10063
|
|
|
9992
10064
|
// src/controller/common/view/view.controller.ts
|
|
9993
|
-
import { createUUID as
|
|
10065
|
+
import { createUUID as createUUID8, notNilEmpty as notNilEmpty6 } from "qx-util";
|
|
9994
10066
|
import { IBizContext as IBizContext2, RuntimeError as RuntimeError31 } from "@ibiz-template/core";
|
|
9995
|
-
import { isEmpty as
|
|
10067
|
+
import { isEmpty as isEmpty9, isNil as isNil18, isNotNil as isNotNil2 } from "ramda";
|
|
9996
10068
|
|
|
9997
10069
|
// src/controller/utils/loading/loading.state.ts
|
|
9998
10070
|
import { NOOP } from "@ibiz-template/core";
|
|
@@ -10807,7 +10879,7 @@ var ValueExUtil = class {
|
|
|
10807
10879
|
// src/controller/utils/value-default/value-default.ts
|
|
10808
10880
|
import { RuntimeError as RuntimeError28, ModelError as ModelError16 } from "@ibiz-template/core";
|
|
10809
10881
|
import dayjs from "dayjs";
|
|
10810
|
-
import { createUUID as
|
|
10882
|
+
import { createUUID as createUUID7 } from "qx-util";
|
|
10811
10883
|
import { isNil as isNil16, isNotNil } from "ramda";
|
|
10812
10884
|
function getDefaultValue(opts, origins) {
|
|
10813
10885
|
var _a;
|
|
@@ -10852,7 +10924,7 @@ function getDefaultValue(opts, origins) {
|
|
|
10852
10924
|
case "CONTEXT":
|
|
10853
10925
|
return params[defaultValue];
|
|
10854
10926
|
case "UNIQUEID":
|
|
10855
|
-
return
|
|
10927
|
+
return createUUID7();
|
|
10856
10928
|
default:
|
|
10857
10929
|
throw new ModelError16({}, "\u9ED8\u8BA4\u503C\u7C7B\u578B[".concat(valueType, "]\u672A\u652F\u6301"));
|
|
10858
10930
|
}
|
|
@@ -10984,6 +11056,7 @@ var BaseController = class {
|
|
|
10984
11056
|
this.childNames = [];
|
|
10985
11057
|
this.name = model.name || model.id;
|
|
10986
11058
|
this.initState();
|
|
11059
|
+
this.convertMultipleLanguages();
|
|
10987
11060
|
}
|
|
10988
11061
|
/**
|
|
10989
11062
|
* 中间层的基类才会使用,用于在内部使用自身的事件,事件类型不是泛型用evt就能正确推导出来。
|
|
@@ -11141,6 +11214,14 @@ var BaseController = class {
|
|
|
11141
11214
|
listenNewController(cb) {
|
|
11142
11215
|
this.ctx.evt.on("onRegister", cb);
|
|
11143
11216
|
}
|
|
11217
|
+
/**
|
|
11218
|
+
* 转换各类多语言
|
|
11219
|
+
*
|
|
11220
|
+
* @date 2023-05-18 02:57:00
|
|
11221
|
+
* @protected
|
|
11222
|
+
*/
|
|
11223
|
+
convertMultipleLanguages() {
|
|
11224
|
+
}
|
|
11144
11225
|
};
|
|
11145
11226
|
|
|
11146
11227
|
// src/controller/utils/view-msg/view-msg-controller.ts
|
|
@@ -11576,8 +11657,8 @@ var ViewController = class extends BaseController {
|
|
|
11576
11657
|
*/
|
|
11577
11658
|
handleContextParams() {
|
|
11578
11659
|
this.context.srfappid = this.model.appId;
|
|
11579
|
-
if (isNil18(this.context.srfsessionid) ||
|
|
11580
|
-
this.context.srfsessionid =
|
|
11660
|
+
if (isNil18(this.context.srfsessionid) || isEmpty9(this.context.srfsessionid)) {
|
|
11661
|
+
this.context.srfsessionid = createUUID8();
|
|
11581
11662
|
}
|
|
11582
11663
|
const navContexts = this.model.appViewNavContexts;
|
|
11583
11664
|
let context = {};
|
|
@@ -11703,6 +11784,20 @@ var ViewController = class extends BaseController {
|
|
|
11703
11784
|
this.alertViewMessage(rest);
|
|
11704
11785
|
}
|
|
11705
11786
|
}
|
|
11787
|
+
/**
|
|
11788
|
+
* 转换各类多语言
|
|
11789
|
+
*
|
|
11790
|
+
* @date 2023-05-18 02:57:00
|
|
11791
|
+
* @protected
|
|
11792
|
+
*/
|
|
11793
|
+
convertMultipleLanguages() {
|
|
11794
|
+
if (this.model.capLanguageRes && this.model.capLanguageRes.lanResTag) {
|
|
11795
|
+
this.model.caption = ibiz.i18n.t(
|
|
11796
|
+
this.model.capLanguageRes.lanResTag,
|
|
11797
|
+
this.model.caption
|
|
11798
|
+
);
|
|
11799
|
+
}
|
|
11800
|
+
}
|
|
11706
11801
|
};
|
|
11707
11802
|
|
|
11708
11803
|
// src/controller/common/view/mob-view.controller.ts
|
|
@@ -12734,6 +12829,31 @@ var AppMenuController = class extends ControlController {
|
|
|
12734
12829
|
}
|
|
12735
12830
|
return null;
|
|
12736
12831
|
}
|
|
12832
|
+
/**
|
|
12833
|
+
* 转换各类多语言
|
|
12834
|
+
*
|
|
12835
|
+
* @date 2023-05-18 02:57:00
|
|
12836
|
+
* @protected
|
|
12837
|
+
*/
|
|
12838
|
+
convertMultipleLanguages() {
|
|
12839
|
+
const convertItemCaption = (menuItems) => {
|
|
12840
|
+
menuItems.forEach((item) => {
|
|
12841
|
+
var _a;
|
|
12842
|
+
if (item.capLanguageRes && item.capLanguageRes.lanResTag) {
|
|
12843
|
+
item.caption = ibiz.i18n.t(
|
|
12844
|
+
item.capLanguageRes.lanResTag,
|
|
12845
|
+
item.caption
|
|
12846
|
+
);
|
|
12847
|
+
}
|
|
12848
|
+
if ((_a = item.appMenuItems) == null ? void 0 : _a.length) {
|
|
12849
|
+
convertItemCaption(item.appMenuItems);
|
|
12850
|
+
}
|
|
12851
|
+
});
|
|
12852
|
+
};
|
|
12853
|
+
if (this.model.appMenuItems && this.model.appMenuItems.length > 0) {
|
|
12854
|
+
convertItemCaption(this.model.appMenuItems);
|
|
12855
|
+
}
|
|
12856
|
+
}
|
|
12737
12857
|
};
|
|
12738
12858
|
|
|
12739
12859
|
// src/controller/control/app-menu-icon-view/app-menu-icon-view.controller.ts
|
|
@@ -14201,14 +14321,7 @@ var ChartController = class extends MDControlController {
|
|
|
14201
14321
|
var CaptionBarController = class extends ControlController {
|
|
14202
14322
|
initState() {
|
|
14203
14323
|
super.initState();
|
|
14204
|
-
|
|
14205
|
-
this.state.caption = ibiz.i18n.t(
|
|
14206
|
-
this.view.model.capLanguageRes.lanResTag,
|
|
14207
|
-
this.view.model.caption
|
|
14208
|
-
);
|
|
14209
|
-
} else {
|
|
14210
|
-
this.state.caption = this.view.model.caption;
|
|
14211
|
-
}
|
|
14324
|
+
this.state.caption = this.view.model.caption;
|
|
14212
14325
|
}
|
|
14213
14326
|
async onCreated() {
|
|
14214
14327
|
await super.onCreated();
|
|
@@ -14219,7 +14332,7 @@ var CaptionBarController = class extends ControlController {
|
|
|
14219
14332
|
};
|
|
14220
14333
|
|
|
14221
14334
|
// src/controller/control/toolbar/toolbar.controllerr.ts
|
|
14222
|
-
import { recursiveIterate, RuntimeError as RuntimeError46 } from "@ibiz-template/core";
|
|
14335
|
+
import { recursiveIterate as recursiveIterate2, RuntimeError as RuntimeError46 } from "@ibiz-template/core";
|
|
14223
14336
|
|
|
14224
14337
|
// src/ui-action/provider/backend-ui-action-provider.ts
|
|
14225
14338
|
import { RuntimeModelError as RuntimeModelError47 } from "@ibiz-template/core";
|
|
@@ -16372,7 +16485,7 @@ var ToolbarController = class extends ControlController {
|
|
|
16372
16485
|
async onCreated() {
|
|
16373
16486
|
await super.onCreated();
|
|
16374
16487
|
this.state.viewMode = this.ctx.view.modal.mode;
|
|
16375
|
-
|
|
16488
|
+
recursiveIterate2(
|
|
16376
16489
|
this.model,
|
|
16377
16490
|
(item) => {
|
|
16378
16491
|
if (item.itemType === "DEUIACTION") {
|
|
@@ -16422,7 +16535,7 @@ var ToolbarController = class extends ControlController {
|
|
|
16422
16535
|
if (_data) {
|
|
16423
16536
|
logicParams.data = [_data];
|
|
16424
16537
|
}
|
|
16425
|
-
|
|
16538
|
+
recursiveIterate2(
|
|
16426
16539
|
this.model,
|
|
16427
16540
|
(item) => {
|
|
16428
16541
|
const itemState = this.state.buttonsState[item.id];
|
|
@@ -16467,7 +16580,7 @@ var ToolbarController = class extends ControlController {
|
|
|
16467
16580
|
}
|
|
16468
16581
|
initControlScheduler(logics = []) {
|
|
16469
16582
|
const actualLogics = [...logics];
|
|
16470
|
-
|
|
16583
|
+
recursiveIterate2(
|
|
16471
16584
|
this.model,
|
|
16472
16585
|
(item) => {
|
|
16473
16586
|
if (item.controlLogics) {
|
|
@@ -16478,6 +16591,30 @@ var ToolbarController = class extends ControlController {
|
|
|
16478
16591
|
);
|
|
16479
16592
|
super.initControlScheduler(actualLogics);
|
|
16480
16593
|
}
|
|
16594
|
+
/**
|
|
16595
|
+
* 转换各类多语言
|
|
16596
|
+
*
|
|
16597
|
+
* @date 2023-05-18 02:57:00
|
|
16598
|
+
* @protected
|
|
16599
|
+
*/
|
|
16600
|
+
convertMultipleLanguages() {
|
|
16601
|
+
const convertItemCaption = (items) => {
|
|
16602
|
+
items.forEach((item) => {
|
|
16603
|
+
if (item.capLanguageRes && item.capLanguageRes.lanResTag) {
|
|
16604
|
+
item.caption = ibiz.i18n.t(
|
|
16605
|
+
item.capLanguageRes.lanResTag,
|
|
16606
|
+
item.caption
|
|
16607
|
+
);
|
|
16608
|
+
}
|
|
16609
|
+
if (item.itemType === "ITEMS" && item.detoolbarItems) {
|
|
16610
|
+
convertItemCaption(item.detoolbarItems);
|
|
16611
|
+
}
|
|
16612
|
+
});
|
|
16613
|
+
};
|
|
16614
|
+
if (this.model.detoolbarItems && this.model.detoolbarItems.length > 0) {
|
|
16615
|
+
convertItemCaption(this.model.detoolbarItems);
|
|
16616
|
+
}
|
|
16617
|
+
}
|
|
16481
16618
|
};
|
|
16482
16619
|
|
|
16483
16620
|
// src/controller/control/context-menu/context-menu.controllerr.ts
|
|
@@ -18125,7 +18262,7 @@ var ChartExpBarController = class extends ExpBarControlController {
|
|
|
18125
18262
|
import { RuntimeError as RuntimeError49 } from "@ibiz-template/core";
|
|
18126
18263
|
|
|
18127
18264
|
// src/controller/control/form/form/form.controller.ts
|
|
18128
|
-
import { debounceAndAsyncMerge, recursiveIterate as
|
|
18265
|
+
import { debounceAndAsyncMerge, recursiveIterate as recursiveIterate3 } from "@ibiz-template/core";
|
|
18129
18266
|
var FormController = class extends ControlController {
|
|
18130
18267
|
constructor() {
|
|
18131
18268
|
super(...arguments);
|
|
@@ -18337,7 +18474,7 @@ var FormController = class extends ControlController {
|
|
|
18337
18474
|
*/
|
|
18338
18475
|
initControlScheduler(logics = []) {
|
|
18339
18476
|
const actualLogics = [...logics];
|
|
18340
|
-
|
|
18477
|
+
recursiveIterate3(
|
|
18341
18478
|
this.model,
|
|
18342
18479
|
(item) => {
|
|
18343
18480
|
if (item.controlLogics) {
|
|
@@ -18353,10 +18490,10 @@ var FormController = class extends ControlController {
|
|
|
18353
18490
|
};
|
|
18354
18491
|
|
|
18355
18492
|
// src/controller/control/form/search-form/search-form.service.ts
|
|
18356
|
-
import { recursiveIterate as
|
|
18493
|
+
import { recursiveIterate as recursiveIterate5 } from "@ibiz-template/core";
|
|
18357
18494
|
|
|
18358
18495
|
// src/controller/control/form/form/form.service.ts
|
|
18359
|
-
import { recursiveIterate as
|
|
18496
|
+
import { recursiveIterate as recursiveIterate4 } from "@ibiz-template/core";
|
|
18360
18497
|
var FormService = class extends ControlService {
|
|
18361
18498
|
/**
|
|
18362
18499
|
* 设置表单项的默认值
|
|
@@ -18368,7 +18505,7 @@ var FormService = class extends ControlService {
|
|
|
18368
18505
|
* @param {('create' | 'update')} type 新建还是更新
|
|
18369
18506
|
*/
|
|
18370
18507
|
setDefault(data, context, params, type) {
|
|
18371
|
-
|
|
18508
|
+
recursiveIterate4(
|
|
18372
18509
|
this.model,
|
|
18373
18510
|
(item) => {
|
|
18374
18511
|
if (item.detailType === "FORMITEM") {
|
|
@@ -18424,7 +18561,7 @@ var SearchFormService = class extends FormService {
|
|
|
18424
18561
|
* @date 2022-08-31 18:08:37
|
|
18425
18562
|
*/
|
|
18426
18563
|
initUIDataMap() {
|
|
18427
|
-
|
|
18564
|
+
recursiveIterate5(
|
|
18428
18565
|
this.model,
|
|
18429
18566
|
(item) => {
|
|
18430
18567
|
if (item.detailType === "FORMITEM") {
|
|
@@ -18891,7 +19028,7 @@ var FormDetailController = class {
|
|
|
18891
19028
|
}
|
|
18892
19029
|
async onInit() {
|
|
18893
19030
|
this.state.showMoreMode = this.model.showMoreMode;
|
|
18894
|
-
const { layoutPos, sysCss, labelSysCss } = this.model;
|
|
19031
|
+
const { layoutPos, sysCss, labelSysCss, capLanguageRes } = this.model;
|
|
18895
19032
|
if (layoutPos) {
|
|
18896
19033
|
const { width, height } = calcLayoutHeightWidth(layoutPos);
|
|
18897
19034
|
this.state.layout.width = "".concat(width);
|
|
@@ -18903,6 +19040,12 @@ var FormDetailController = class {
|
|
|
18903
19040
|
if (labelSysCss == null ? void 0 : labelSysCss.cssName) {
|
|
18904
19041
|
this.state.class.label.push(labelSysCss.cssName);
|
|
18905
19042
|
}
|
|
19043
|
+
if (capLanguageRes && capLanguageRes.lanResTag) {
|
|
19044
|
+
this.model.caption = ibiz.i18n.t(
|
|
19045
|
+
capLanguageRes.lanResTag,
|
|
19046
|
+
this.model.caption
|
|
19047
|
+
);
|
|
19048
|
+
}
|
|
18906
19049
|
}
|
|
18907
19050
|
/**
|
|
18908
19051
|
* 创建表单状态对象
|
|
@@ -19168,7 +19311,7 @@ var FormButtonController = class extends FormDetailController {
|
|
|
19168
19311
|
|
|
19169
19312
|
// src/controller/control/form/form-detail/form-druipart/form-druipart.controller.ts
|
|
19170
19313
|
import { isOverlap as isOverlap2 } from "@ibiz-template/core";
|
|
19171
|
-
import { createUUID as
|
|
19314
|
+
import { createUUID as createUUID9, notNilEmpty as notNilEmpty8 } from "qx-util";
|
|
19172
19315
|
|
|
19173
19316
|
// src/controller/control/form/form-detail/form-druipart/form-druipart.state.ts
|
|
19174
19317
|
var FormDruipartState = class extends FormDetailState {
|
|
@@ -19281,7 +19424,7 @@ var FormDRUIPartController = class extends FormDetailController {
|
|
|
19281
19424
|
this.form.context
|
|
19282
19425
|
);
|
|
19283
19426
|
if (!this.state.viewComponentKey) {
|
|
19284
|
-
this.state.viewComponentKey =
|
|
19427
|
+
this.state.viewComponentKey = createUUID9();
|
|
19285
19428
|
this.navContext = newContext;
|
|
19286
19429
|
this.navParams = newParams;
|
|
19287
19430
|
} else if (JSON.stringify(this.navContext) !== JSON.stringify(newContext) || JSON.stringify(this.navParams) !== JSON.stringify(newParams)) {
|
|
@@ -19789,6 +19932,16 @@ var FormItemController = class extends FormDetailController {
|
|
|
19789
19932
|
// src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts
|
|
19790
19933
|
import { BitMask } from "@ibiz-template/core";
|
|
19791
19934
|
var FormMDCtrlController = class extends FormDetailController {
|
|
19935
|
+
/**
|
|
19936
|
+
* 名称
|
|
19937
|
+
* @author lxm
|
|
19938
|
+
* @date 2023-11-22 03:31:02
|
|
19939
|
+
* @readonly
|
|
19940
|
+
* @type {string}
|
|
19941
|
+
*/
|
|
19942
|
+
get name() {
|
|
19943
|
+
return this.model.id;
|
|
19944
|
+
}
|
|
19792
19945
|
/**
|
|
19793
19946
|
* 上下文
|
|
19794
19947
|
*
|
|
@@ -19877,6 +20030,15 @@ import {
|
|
|
19877
20030
|
RuntimeModelError as RuntimeModelError53
|
|
19878
20031
|
} from "@ibiz-template/core";
|
|
19879
20032
|
var FormMDCtrlMDController = class extends FormMDCtrlController {
|
|
20033
|
+
constructor() {
|
|
20034
|
+
super(...arguments);
|
|
20035
|
+
/**
|
|
20036
|
+
* 忽略下一次自身对应表单项数据变更
|
|
20037
|
+
* @author lxm
|
|
20038
|
+
* @date 2023-12-19 11:47:21
|
|
20039
|
+
*/
|
|
20040
|
+
this.ignoreNextSelfChange = false;
|
|
20041
|
+
}
|
|
19880
20042
|
/**
|
|
19881
20043
|
* 表单项名称
|
|
19882
20044
|
*
|
|
@@ -19913,10 +20075,10 @@ var FormMDCtrlMDController = class extends FormMDCtrlController {
|
|
|
19913
20075
|
setMDControl(controller) {
|
|
19914
20076
|
this.mdController = controller;
|
|
19915
20077
|
controller.evt.on("onSaveSuccess", () => {
|
|
19916
|
-
this.
|
|
20078
|
+
this.notifyFormDataChange();
|
|
19917
20079
|
});
|
|
19918
20080
|
controller.evt.on("onRemoveSuccess", () => {
|
|
19919
|
-
this.
|
|
20081
|
+
this.notifyFormDataChange();
|
|
19920
20082
|
});
|
|
19921
20083
|
}
|
|
19922
20084
|
updateFormItem() {
|
|
@@ -19965,16 +20127,31 @@ var FormMDCtrlMDController = class extends FormMDCtrlController {
|
|
|
19965
20127
|
this.refresh();
|
|
19966
20128
|
}
|
|
19967
20129
|
async dataChangeNotify(names) {
|
|
20130
|
+
if (names.includes(this.model.id) && this.ignoreNextSelfChange) {
|
|
20131
|
+
this.ignoreNextSelfChange = false;
|
|
20132
|
+
return;
|
|
20133
|
+
}
|
|
19968
20134
|
await super.dataChangeNotify(names);
|
|
19969
20135
|
if (names.includes(this.model.id)) {
|
|
19970
20136
|
this.refresh();
|
|
19971
20137
|
}
|
|
19972
20138
|
}
|
|
20139
|
+
/**
|
|
20140
|
+
* 通知表单多数据部件对应的表单项数据变更
|
|
20141
|
+
* @author lxm
|
|
20142
|
+
* @date 2023-12-19 11:46:13
|
|
20143
|
+
* @protected
|
|
20144
|
+
*/
|
|
20145
|
+
notifyFormDataChange() {
|
|
20146
|
+
this.updateFormItem();
|
|
20147
|
+
this.ignoreNextSelfChange = true;
|
|
20148
|
+
this.form.dataChangeNotify([this.name]);
|
|
20149
|
+
}
|
|
19973
20150
|
};
|
|
19974
20151
|
|
|
19975
20152
|
// src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts
|
|
19976
20153
|
import { RuntimeError as RuntimeError50, RuntimeModelError as RuntimeModelError54 } from "@ibiz-template/core";
|
|
19977
|
-
import { createUUID as
|
|
20154
|
+
import { createUUID as createUUID10 } from "qx-util";
|
|
19978
20155
|
|
|
19979
20156
|
// src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.ts
|
|
19980
20157
|
var FormMDCtrlFormState = class extends FormDetailState {
|
|
@@ -19984,6 +20161,12 @@ var FormMDCtrlFormState = class extends FormDetailState {
|
|
|
19984
20161
|
var FormMDCtrlFormController = class extends FormMDCtrlController {
|
|
19985
20162
|
constructor() {
|
|
19986
20163
|
super(...arguments);
|
|
20164
|
+
/**
|
|
20165
|
+
* 忽略下一次自身对应表单项数据变更
|
|
20166
|
+
* @author lxm
|
|
20167
|
+
* @date 2023-12-19 11:47:21
|
|
20168
|
+
*/
|
|
20169
|
+
this.ignoreNextSelfChange = false;
|
|
19987
20170
|
/**
|
|
19988
20171
|
* 表单控制器Map
|
|
19989
20172
|
* @author lxm
|
|
@@ -20049,7 +20232,7 @@ var FormMDCtrlFormController = class extends FormMDCtrlController {
|
|
|
20049
20232
|
*/
|
|
20050
20233
|
async formStateNotify(state) {
|
|
20051
20234
|
await super.formStateNotify(state);
|
|
20052
|
-
await this.
|
|
20235
|
+
await this.refresh();
|
|
20053
20236
|
}
|
|
20054
20237
|
/**
|
|
20055
20238
|
* 设置表单控制器
|
|
@@ -20068,10 +20251,10 @@ var FormMDCtrlFormController = class extends FormMDCtrlController {
|
|
|
20068
20251
|
item.context[this.deName] = formData.srfkey;
|
|
20069
20252
|
}
|
|
20070
20253
|
}
|
|
20071
|
-
this.
|
|
20254
|
+
this.notifyFormDataChange();
|
|
20072
20255
|
});
|
|
20073
20256
|
controller.evt.on("onRemoveSuccess", () => {
|
|
20074
|
-
this.
|
|
20257
|
+
this.notifyFormDataChange();
|
|
20075
20258
|
});
|
|
20076
20259
|
}
|
|
20077
20260
|
/**
|
|
@@ -20104,7 +20287,7 @@ var FormMDCtrlFormController = class extends FormMDCtrlController {
|
|
|
20104
20287
|
this.state.items = [];
|
|
20105
20288
|
}
|
|
20106
20289
|
const item = {
|
|
20107
|
-
id:
|
|
20290
|
+
id: createUUID10(),
|
|
20108
20291
|
context,
|
|
20109
20292
|
params
|
|
20110
20293
|
};
|
|
@@ -20118,11 +20301,26 @@ var FormMDCtrlFormController = class extends FormMDCtrlController {
|
|
|
20118
20301
|
this.fetchData();
|
|
20119
20302
|
}
|
|
20120
20303
|
async dataChangeNotify(names) {
|
|
20304
|
+
if (names.includes(this.model.id) && this.ignoreNextSelfChange) {
|
|
20305
|
+
this.ignoreNextSelfChange = false;
|
|
20306
|
+
return;
|
|
20307
|
+
}
|
|
20121
20308
|
await super.dataChangeNotify(names);
|
|
20122
20309
|
if (names.includes(this.model.id)) {
|
|
20123
20310
|
this.refresh();
|
|
20124
20311
|
}
|
|
20125
20312
|
}
|
|
20313
|
+
/**
|
|
20314
|
+
* 通知表单多数据部件对应的表单项数据变更
|
|
20315
|
+
* @author lxm
|
|
20316
|
+
* @date 2023-12-19 11:46:13
|
|
20317
|
+
* @protected
|
|
20318
|
+
*/
|
|
20319
|
+
notifyFormDataChange() {
|
|
20320
|
+
this.updateFormItem();
|
|
20321
|
+
this.ignoreNextSelfChange = true;
|
|
20322
|
+
this.form.dataChangeNotify([this.name]);
|
|
20323
|
+
}
|
|
20126
20324
|
};
|
|
20127
20325
|
|
|
20128
20326
|
// src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts
|
|
@@ -20146,16 +20344,6 @@ var FormMDCtrlRepeaterController = class extends FormMDCtrlController {
|
|
|
20146
20344
|
*/
|
|
20147
20345
|
this.isSingleData = false;
|
|
20148
20346
|
}
|
|
20149
|
-
/**
|
|
20150
|
-
* 名称
|
|
20151
|
-
* @author lxm
|
|
20152
|
-
* @date 2023-11-22 03:31:02
|
|
20153
|
-
* @readonly
|
|
20154
|
-
* @type {string}
|
|
20155
|
-
*/
|
|
20156
|
-
get name() {
|
|
20157
|
-
return this.model.id;
|
|
20158
|
-
}
|
|
20159
20347
|
/**
|
|
20160
20348
|
* 多数据重复器对应的表单里的值
|
|
20161
20349
|
*
|
|
@@ -20350,12 +20538,12 @@ import {
|
|
|
20350
20538
|
RuntimeError as RuntimeError51
|
|
20351
20539
|
} from "@ibiz-template/core";
|
|
20352
20540
|
import { debounce as debounce2 } from "lodash-es";
|
|
20353
|
-
import { createUUID as
|
|
20541
|
+
import { createUUID as createUUID11 } from "qx-util";
|
|
20354
20542
|
import { clone as clone21 } from "ramda";
|
|
20355
20543
|
|
|
20356
20544
|
// src/controller/control/form/edit-form/edit-form.service.ts
|
|
20357
20545
|
import {
|
|
20358
|
-
recursiveIterate as
|
|
20546
|
+
recursiveIterate as recursiveIterate6,
|
|
20359
20547
|
RuntimeModelError as RuntimeModelError55
|
|
20360
20548
|
} from "@ibiz-template/core";
|
|
20361
20549
|
var EditFormService = class extends FormService {
|
|
@@ -20577,7 +20765,7 @@ var EditFormService = class extends FormService {
|
|
|
20577
20765
|
// 向导预置
|
|
20578
20766
|
"srfnextform"
|
|
20579
20767
|
];
|
|
20580
|
-
|
|
20768
|
+
recursiveIterate6(
|
|
20581
20769
|
this.model,
|
|
20582
20770
|
(item) => {
|
|
20583
20771
|
if (item.detailType === "FORMITEM" || item.detailType === "MDCTRL") {
|
|
@@ -20731,7 +20919,7 @@ var EditFormController = class extends FormController {
|
|
|
20731
20919
|
await this.endLoading();
|
|
20732
20920
|
}
|
|
20733
20921
|
res.data.srfkey = void 0;
|
|
20734
|
-
res.data.tempsrfkey =
|
|
20922
|
+
res.data.tempsrfkey = createUUID11();
|
|
20735
20923
|
this.state.modified = false;
|
|
20736
20924
|
this.state.data = res.data;
|
|
20737
20925
|
this.formStateNotify("LOAD" /* LOAD */);
|
|
@@ -21234,6 +21422,15 @@ var GridRowState = class {
|
|
|
21234
21422
|
* @type {({ [p: string]: { disabled: boolean } })}
|
|
21235
21423
|
*/
|
|
21236
21424
|
this.editColStates = {};
|
|
21425
|
+
/**
|
|
21426
|
+
* 界面行为组状态(p是界面行为的标识)
|
|
21427
|
+
*
|
|
21428
|
+
* @author zk
|
|
21429
|
+
* @date 2023-12-15 10:12:42
|
|
21430
|
+
* @type {{ [p: string]: IButtonContainerState }}
|
|
21431
|
+
* @memberof IGridRowState
|
|
21432
|
+
*/
|
|
21433
|
+
this.uiActionGroupStates = {};
|
|
21237
21434
|
/**
|
|
21238
21435
|
* 是否显示行编辑
|
|
21239
21436
|
*
|
|
@@ -21267,6 +21464,9 @@ var GridRowState = class {
|
|
|
21267
21464
|
Object.values(grid.uaColumns).forEach((column) => {
|
|
21268
21465
|
column.initActionStates(this);
|
|
21269
21466
|
});
|
|
21467
|
+
Object.values(grid.fieldColumns).forEach((column) => {
|
|
21468
|
+
column.initActionStates(this);
|
|
21469
|
+
});
|
|
21270
21470
|
Object.values(grid.editColumns).forEach((editColumn) => {
|
|
21271
21471
|
this.editColStates[editColumn.fieldName] = {
|
|
21272
21472
|
disabled: false,
|
|
@@ -21283,13 +21483,14 @@ import {
|
|
|
21283
21483
|
awaitTimeout as awaitTimeout2,
|
|
21284
21484
|
debounceAndAsyncMerge as debounceAndAsyncMerge2,
|
|
21285
21485
|
mergeDefaultInLeft,
|
|
21286
|
-
recursiveIterate as
|
|
21486
|
+
recursiveIterate as recursiveIterate7,
|
|
21287
21487
|
RuntimeError as RuntimeError52,
|
|
21288
|
-
RuntimeModelError as
|
|
21488
|
+
RuntimeModelError as RuntimeModelError57
|
|
21289
21489
|
} from "@ibiz-template/core";
|
|
21290
21490
|
import { clone as clone22 } from "ramda";
|
|
21291
21491
|
|
|
21292
21492
|
// src/controller/control/grid/grid/grid.service.ts
|
|
21493
|
+
import { RuntimeModelError as RuntimeModelError56 } from "@ibiz-template/core";
|
|
21293
21494
|
var GridService = class extends MDControlService {
|
|
21294
21495
|
/**
|
|
21295
21496
|
* 初始化属性映射
|
|
@@ -21300,21 +21501,34 @@ var GridService = class extends MDControlService {
|
|
|
21300
21501
|
initUIDataMap() {
|
|
21301
21502
|
var _a;
|
|
21302
21503
|
super.initUIDataMap();
|
|
21303
|
-
(
|
|
21304
|
-
const
|
|
21305
|
-
|
|
21306
|
-
|
|
21307
|
-
|
|
21308
|
-
|
|
21309
|
-
|
|
21310
|
-
|
|
21311
|
-
|
|
21312
|
-
|
|
21313
|
-
|
|
21314
|
-
|
|
21315
|
-
|
|
21316
|
-
|
|
21317
|
-
|
|
21504
|
+
if (this.model.degridColumns) {
|
|
21505
|
+
const dataItems = this.model.degridDataItems || [];
|
|
21506
|
+
(_a = this.model.degridColumns) == null ? void 0 : _a.forEach((column) => {
|
|
21507
|
+
const uiKey = column.id.toLowerCase();
|
|
21508
|
+
const deField = column.appDEFieldId;
|
|
21509
|
+
let mapField;
|
|
21510
|
+
if (deField) {
|
|
21511
|
+
const deFieldKey = deField.toLowerCase();
|
|
21512
|
+
const dataItem = dataItems.find(
|
|
21513
|
+
(item) => item.appDEFieldId === deField
|
|
21514
|
+
);
|
|
21515
|
+
if (dataItem) {
|
|
21516
|
+
mapField = new UIMapField(uiKey, deFieldKey, {
|
|
21517
|
+
isOriginField: true,
|
|
21518
|
+
dataType: dataItem.dataType
|
|
21519
|
+
});
|
|
21520
|
+
} else {
|
|
21521
|
+
throw new RuntimeModelError56(
|
|
21522
|
+
column,
|
|
21523
|
+
"\u672A\u627E\u5230\u5BF9\u5E94\u7684\u8868\u683C\u6570\u636E\u9879[".concat(deField, "]")
|
|
21524
|
+
);
|
|
21525
|
+
}
|
|
21526
|
+
} else {
|
|
21527
|
+
mapField = new UIMapField(uiKey, uiKey);
|
|
21528
|
+
}
|
|
21529
|
+
this.dataUIMap.set(uiKey, mapField);
|
|
21530
|
+
});
|
|
21531
|
+
}
|
|
21318
21532
|
}
|
|
21319
21533
|
/**
|
|
21320
21534
|
* 编辑列更新
|
|
@@ -21491,11 +21705,11 @@ var GridController = class extends MDControlController {
|
|
|
21491
21705
|
(item) => item.model.appDEFieldId === groupAppDEFieldId
|
|
21492
21706
|
);
|
|
21493
21707
|
if (!this.groupFieldColumn) {
|
|
21494
|
-
throw new
|
|
21708
|
+
throw new RuntimeModelError57(this.model, "\u6CA1\u6709\u914D\u7F6E\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217");
|
|
21495
21709
|
}
|
|
21496
21710
|
const groupFieldName = this.groupFieldColumn.model.id;
|
|
21497
21711
|
if (!this.groupFieldColumn.model.appCodeListId) {
|
|
21498
|
-
throw new
|
|
21712
|
+
throw new RuntimeModelError57(
|
|
21499
21713
|
this.groupFieldColumn.model,
|
|
21500
21714
|
"\u5206\u7EC4\u5C5E\u6027\u7684\u5C5E\u6027\u5217".concat(groupFieldName, "\u6CA1\u6709\u914D\u7F6E\u4EE3\u7801\u8868")
|
|
21501
21715
|
);
|
|
@@ -21505,7 +21719,7 @@ var GridController = class extends MDControlController {
|
|
|
21505
21719
|
);
|
|
21506
21720
|
if (index !== -1 && index !== 0) {
|
|
21507
21721
|
if (this.isMultistageHeader) {
|
|
21508
|
-
throw new
|
|
21722
|
+
throw new RuntimeModelError57(
|
|
21509
21723
|
this.model,
|
|
21510
21724
|
"\u8BF7\u5C06\u5206\u7EC4\u5C5E\u6027\u5217".concat(groupFieldName, "\u914D\u7F6E\u4E3A\u7B2C\u4E00\u5217")
|
|
21511
21725
|
);
|
|
@@ -21515,10 +21729,10 @@ var GridController = class extends MDControlController {
|
|
|
21515
21729
|
}
|
|
21516
21730
|
if (groupMode === "CODELIST") {
|
|
21517
21731
|
if (!groupCodeListId) {
|
|
21518
|
-
throw new
|
|
21732
|
+
throw new RuntimeModelError57(this.model, "\u4EE3\u7801\u8868\u5206\u7EC4\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u4EE3\u7801\u8868");
|
|
21519
21733
|
}
|
|
21520
21734
|
if (this.groupFieldColumn.model.appCodeListId !== groupCodeListId) {
|
|
21521
|
-
throw new
|
|
21735
|
+
throw new RuntimeModelError57(
|
|
21522
21736
|
this.model,
|
|
21523
21737
|
"\u5206\u7EC4\u4EE3\u7801\u8868\u4E0E\u5C5E\u6027\u5217".concat(groupFieldName, "\u7684\u4EE3\u7801\u8868\u4E0D\u4E00\u81F4")
|
|
21524
21738
|
);
|
|
@@ -21543,6 +21757,11 @@ var GridController = class extends MDControlController {
|
|
|
21543
21757
|
uaState.update(row.data.getOrigin(), this.model.appDataEntityId);
|
|
21544
21758
|
});
|
|
21545
21759
|
});
|
|
21760
|
+
this.state.rows.forEach((row) => {
|
|
21761
|
+
Object.values(row.uiActionGroupStates).forEach((uaState) => {
|
|
21762
|
+
uaState.update(row.data.getOrigin(), this.model.appDataEntityId);
|
|
21763
|
+
});
|
|
21764
|
+
});
|
|
21546
21765
|
this.calcGroupData(items);
|
|
21547
21766
|
this.calcAggResult(items);
|
|
21548
21767
|
return items;
|
|
@@ -21600,7 +21819,7 @@ var GridController = class extends MDControlController {
|
|
|
21600
21819
|
return;
|
|
21601
21820
|
}
|
|
21602
21821
|
if (!aggAppDEDataSetId || !aggAppDataEntityId) {
|
|
21603
|
-
throw new
|
|
21822
|
+
throw new RuntimeModelError57(this.model, "\u7F3A\u5C11\u914D\u7F6E\u805A\u5408\u5B9E\u4F53\u6216\u805A\u5408\u6570\u636E\u96C6");
|
|
21604
21823
|
}
|
|
21605
21824
|
const params = await this.getFetchParams();
|
|
21606
21825
|
const app = ibiz.hub.getApp(this.context.srfappid);
|
|
@@ -21795,7 +22014,7 @@ var GridController = class extends MDControlController {
|
|
|
21795
22014
|
* @return {*} {Promise<void>}
|
|
21796
22015
|
*/
|
|
21797
22016
|
initColumnStates() {
|
|
21798
|
-
|
|
22017
|
+
recursiveIterate7(
|
|
21799
22018
|
this.model,
|
|
21800
22019
|
(column) => {
|
|
21801
22020
|
if (column.columnType !== "GROUPGRIDCOLUMN") {
|
|
@@ -22255,6 +22474,30 @@ var GridController = class extends MDControlController {
|
|
|
22255
22474
|
await this.setActive(data);
|
|
22256
22475
|
}
|
|
22257
22476
|
}
|
|
22477
|
+
/**
|
|
22478
|
+
* 转换各类多语言
|
|
22479
|
+
*
|
|
22480
|
+
* @date 2023-05-18 02:57:00
|
|
22481
|
+
* @protected
|
|
22482
|
+
*/
|
|
22483
|
+
convertMultipleLanguages() {
|
|
22484
|
+
const convertColumnCaption = (columns) => {
|
|
22485
|
+
columns.forEach((column) => {
|
|
22486
|
+
if (column.capLanguageRes && column.capLanguageRes.lanResTag) {
|
|
22487
|
+
column.caption = ibiz.i18n.t(
|
|
22488
|
+
column.capLanguageRes.lanResTag,
|
|
22489
|
+
column.caption
|
|
22490
|
+
);
|
|
22491
|
+
}
|
|
22492
|
+
if (column.columnType === "GROUPGRIDCOLUMN" && column.degridColumns) {
|
|
22493
|
+
convertColumnCaption(column.degridColumns);
|
|
22494
|
+
}
|
|
22495
|
+
});
|
|
22496
|
+
};
|
|
22497
|
+
if (this.model.degridColumns && this.model.degridColumns.length > 0) {
|
|
22498
|
+
convertColumnCaption(this.model.degridColumns);
|
|
22499
|
+
}
|
|
22500
|
+
}
|
|
22258
22501
|
};
|
|
22259
22502
|
|
|
22260
22503
|
// src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts
|
|
@@ -22302,6 +22545,31 @@ var GridFieldColumnController = class extends GridColumnController {
|
|
|
22302
22545
|
});
|
|
22303
22546
|
this.loadCodeList();
|
|
22304
22547
|
}
|
|
22548
|
+
/**
|
|
22549
|
+
* 初始化属性列界面行为组按钮状态
|
|
22550
|
+
*
|
|
22551
|
+
* @author lxm
|
|
22552
|
+
* @date 2022-09-07 21:09:43
|
|
22553
|
+
* @param {GridRowState} row
|
|
22554
|
+
*/
|
|
22555
|
+
initActionStates(row) {
|
|
22556
|
+
const { deuiactionGroup } = this.model;
|
|
22557
|
+
if (deuiactionGroup && deuiactionGroup.uiactionGroupDetails) {
|
|
22558
|
+
const containerState = new ButtonContainerState();
|
|
22559
|
+
deuiactionGroup.uiactionGroupDetails.forEach((detail) => {
|
|
22560
|
+
const actionid = detail.uiactionId;
|
|
22561
|
+
if (actionid) {
|
|
22562
|
+
const buttonState = new UIActionButtonState(
|
|
22563
|
+
detail.id,
|
|
22564
|
+
this.grid.context.srfappid,
|
|
22565
|
+
actionid
|
|
22566
|
+
);
|
|
22567
|
+
containerState.addState(detail.id, buttonState);
|
|
22568
|
+
}
|
|
22569
|
+
});
|
|
22570
|
+
row.uiActionGroupStates[this.model.codeName] = containerState;
|
|
22571
|
+
}
|
|
22572
|
+
}
|
|
22305
22573
|
/**
|
|
22306
22574
|
* 行是否可点击(影响列的界面样式)
|
|
22307
22575
|
*
|
|
@@ -22508,10 +22776,35 @@ var GridFieldColumnController = class extends GridColumnController {
|
|
|
22508
22776
|
}
|
|
22509
22777
|
return ibiz.util.text.format(strVal, this.valueFormat);
|
|
22510
22778
|
}
|
|
22779
|
+
/**
|
|
22780
|
+
* 触发界面行为组点击事件
|
|
22781
|
+
*
|
|
22782
|
+
* @author zk
|
|
22783
|
+
* @date 2023-12-15 11:12:01
|
|
22784
|
+
* @param {IUIActionGroupDetail} detail
|
|
22785
|
+
* @param {GridRowState} row
|
|
22786
|
+
* @param {MouseEvent} event
|
|
22787
|
+
* @return {*} {Promise<void>}
|
|
22788
|
+
* @memberof GridFieldColumnController
|
|
22789
|
+
*/
|
|
22790
|
+
async onActionClick(detail, row, event) {
|
|
22791
|
+
const actionId = detail.uiactionId;
|
|
22792
|
+
await UIActionUtil.execAndResolved(
|
|
22793
|
+
actionId,
|
|
22794
|
+
{
|
|
22795
|
+
context: this.context,
|
|
22796
|
+
params: this.params,
|
|
22797
|
+
data: [row.data],
|
|
22798
|
+
view: this.grid.view,
|
|
22799
|
+
event
|
|
22800
|
+
},
|
|
22801
|
+
detail.appId
|
|
22802
|
+
);
|
|
22803
|
+
}
|
|
22511
22804
|
};
|
|
22512
22805
|
|
|
22513
22806
|
// src/controller/control/grid/grid-column/grid-ua-column/grid-ua-column.controller.ts
|
|
22514
|
-
import { RuntimeModelError as
|
|
22807
|
+
import { RuntimeModelError as RuntimeModelError58 } from "@ibiz-template/core";
|
|
22515
22808
|
var GridUAColumnController = class extends GridColumnController {
|
|
22516
22809
|
/**
|
|
22517
22810
|
* 给rowController初始化操作列的状态
|
|
@@ -22524,7 +22817,7 @@ var GridUAColumnController = class extends GridColumnController {
|
|
|
22524
22817
|
var _a;
|
|
22525
22818
|
const { deuiactionGroup } = this.model;
|
|
22526
22819
|
if (!deuiactionGroup) {
|
|
22527
|
-
throw new
|
|
22820
|
+
throw new RuntimeModelError58(this.model, "\u64CD\u4F5C\u5217\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A\u7EC4");
|
|
22528
22821
|
}
|
|
22529
22822
|
if (!((_a = deuiactionGroup.uiactionGroupDetails) == null ? void 0 : _a.length)) {
|
|
22530
22823
|
ibiz.log.debug("\u64CD\u4F5C\u5217\u754C\u9762\u884C\u4E3A\u7EC4\u6CA1\u6709\u914D\u7F6E\u754C\u9762\u884C\u4E3A");
|
|
@@ -23076,7 +23369,7 @@ var ListController = class extends MDControlController {
|
|
|
23076
23369
|
};
|
|
23077
23370
|
|
|
23078
23371
|
// src/controller/control/panel/panel/panel.controller.ts
|
|
23079
|
-
import { recursiveIterate as
|
|
23372
|
+
import { recursiveIterate as recursiveIterate8, RuntimeError as RuntimeError54 } from "@ibiz-template/core";
|
|
23080
23373
|
var PanelController = class extends ControlController {
|
|
23081
23374
|
constructor(model, context, params, ctx, container) {
|
|
23082
23375
|
super(model, context, params, ctx);
|
|
@@ -23285,7 +23578,7 @@ var PanelController = class extends ControlController {
|
|
|
23285
23578
|
}
|
|
23286
23579
|
initControlScheduler(logics = []) {
|
|
23287
23580
|
const actualLogics = [...logics];
|
|
23288
|
-
|
|
23581
|
+
recursiveIterate8(
|
|
23289
23582
|
this.model,
|
|
23290
23583
|
(item) => {
|
|
23291
23584
|
if (item.controlLogics) {
|
|
@@ -23795,11 +24088,11 @@ var PickupViewPanelController = class extends ControlController {
|
|
|
23795
24088
|
};
|
|
23796
24089
|
|
|
23797
24090
|
// src/controller/control/search-bar/search-bar.controller.ts
|
|
23798
|
-
import { recursiveIterate as
|
|
24091
|
+
import { recursiveIterate as recursiveIterate9 } from "@ibiz-template/core";
|
|
23799
24092
|
import { isNil as isNil23 } from "ramda";
|
|
23800
24093
|
|
|
23801
24094
|
// src/controller/control/search-bar/search-bar-filter.controller.ts
|
|
23802
|
-
import { RuntimeModelError as
|
|
24095
|
+
import { RuntimeModelError as RuntimeModelError59 } from "@ibiz-template/core";
|
|
23803
24096
|
var SearchBarFilterController = class {
|
|
23804
24097
|
constructor(model, searchBar) {
|
|
23805
24098
|
this.model = model;
|
|
@@ -23827,7 +24120,7 @@ var SearchBarFilterController = class {
|
|
|
23827
24120
|
*/
|
|
23828
24121
|
async init() {
|
|
23829
24122
|
if (!this.model.editor) {
|
|
23830
|
-
throw new
|
|
24123
|
+
throw new RuntimeModelError59(this.model, "\u7F3A\u5C11\u7F16\u8F91\u5668\u6A21\u578B");
|
|
23831
24124
|
}
|
|
23832
24125
|
this.editorProvider = await getEditorProvider(this.model.editor);
|
|
23833
24126
|
if (this.editorProvider) {
|
|
@@ -23969,6 +24262,7 @@ var SearchBarController = class extends ControlController {
|
|
|
23969
24262
|
children: [{ leaf: true, field: null, valueOP: null, value: null }]
|
|
23970
24263
|
}
|
|
23971
24264
|
];
|
|
24265
|
+
this.evt.emit("onSearch", void 0);
|
|
23972
24266
|
}
|
|
23973
24267
|
/**
|
|
23974
24268
|
* 初始化过滤项控制器
|
|
@@ -24001,7 +24295,7 @@ var SearchBarController = class extends ControlController {
|
|
|
24001
24295
|
}
|
|
24002
24296
|
let hasFilter = false;
|
|
24003
24297
|
let hasError = false;
|
|
24004
|
-
|
|
24298
|
+
recursiveIterate9(this.state.filterNodes[0], (node) => {
|
|
24005
24299
|
if (node.leaf) {
|
|
24006
24300
|
if (node.field && node.valueOP && !isNil23(node.value)) {
|
|
24007
24301
|
hasFilter = true;
|
|
@@ -24028,7 +24322,7 @@ var SearchBarController = class extends ControlController {
|
|
|
24028
24322
|
condtype: "GROUP",
|
|
24029
24323
|
condop: node.logicType,
|
|
24030
24324
|
bnotmode: false,
|
|
24031
|
-
|
|
24325
|
+
searchconds: node.children.map((item) => this.formatFilters(item))
|
|
24032
24326
|
};
|
|
24033
24327
|
}
|
|
24034
24328
|
return {
|
|
@@ -24277,7 +24571,11 @@ var TabExpPanelController = class extends ControlController {
|
|
|
24277
24571
|
};
|
|
24278
24572
|
|
|
24279
24573
|
// src/controller/control/tree/tree.controller.ts
|
|
24280
|
-
import {
|
|
24574
|
+
import {
|
|
24575
|
+
RuntimeError as RuntimeError55,
|
|
24576
|
+
RuntimeModelError as RuntimeModelError60,
|
|
24577
|
+
recursiveIterate as recursiveIterate10
|
|
24578
|
+
} from "@ibiz-template/core";
|
|
24281
24579
|
|
|
24282
24580
|
// src/controller/control/tree/tree.service.ts
|
|
24283
24581
|
import { ModelError as ModelError29 } from "@ibiz-template/core";
|
|
@@ -24573,6 +24871,18 @@ var TreeController = class extends MDControlController {
|
|
|
24573
24871
|
* @type {boolean}
|
|
24574
24872
|
*/
|
|
24575
24873
|
this.enableQuickSearch = false;
|
|
24874
|
+
/**
|
|
24875
|
+
* 拖入节点关系处理
|
|
24876
|
+
* @author lxm
|
|
24877
|
+
* @date 2023-12-14 03:05:38
|
|
24878
|
+
*/
|
|
24879
|
+
this.dropNodeRss = /* @__PURE__ */ new Map();
|
|
24880
|
+
/**
|
|
24881
|
+
* 节点对应的上下文菜单里第一个行为级别为常用操作的项
|
|
24882
|
+
* @author lxm
|
|
24883
|
+
* @date 2023-12-19 03:14:03
|
|
24884
|
+
*/
|
|
24885
|
+
this.nodeClickTBUIActionItem = /* @__PURE__ */ new Map();
|
|
24576
24886
|
}
|
|
24577
24887
|
initState() {
|
|
24578
24888
|
super.initState();
|
|
@@ -24610,6 +24920,8 @@ var TreeController = class extends MDControlController {
|
|
|
24610
24920
|
this.state.placeHolder = placeHolders.join("\u3001");
|
|
24611
24921
|
}
|
|
24612
24922
|
}
|
|
24923
|
+
this.initDropNodeRss();
|
|
24924
|
+
this.initNodeClickTBUIActionItem();
|
|
24613
24925
|
this.service = new TreeService(this.model);
|
|
24614
24926
|
await this.service.init(this.context);
|
|
24615
24927
|
this.model.detreeNodes.forEach((node) => {
|
|
@@ -24627,6 +24939,59 @@ var TreeController = class extends MDControlController {
|
|
|
24627
24939
|
Object.values(this.contextMenus).map((menu) => menu.created())
|
|
24628
24940
|
);
|
|
24629
24941
|
}
|
|
24942
|
+
/**
|
|
24943
|
+
* 初始化节点拖入关系处理
|
|
24944
|
+
* @author lxm
|
|
24945
|
+
* @date 2023-12-14 03:13:42
|
|
24946
|
+
* @protected
|
|
24947
|
+
*/
|
|
24948
|
+
initDropNodeRss() {
|
|
24949
|
+
var _a;
|
|
24950
|
+
(_a = this.model.detreeNodes) == null ? void 0 : _a.forEach((node) => {
|
|
24951
|
+
if (!node.allowDrop) {
|
|
24952
|
+
return;
|
|
24953
|
+
}
|
|
24954
|
+
const infos = [];
|
|
24955
|
+
const nodeRSs = getChildNodeRSs(this.model, {
|
|
24956
|
+
parentId: node.id,
|
|
24957
|
+
hasQuery: false
|
|
24958
|
+
});
|
|
24959
|
+
nodeRSs.forEach((nodeRS) => {
|
|
24960
|
+
var _a2;
|
|
24961
|
+
if ((_a2 = nodeRS.parentDER1N) == null ? void 0 : _a2.pickupDEFName) {
|
|
24962
|
+
const childNode = this.getNodeModel(nodeRS.childDETreeNodeId);
|
|
24963
|
+
if ((childNode == null ? void 0 : childNode.treeNodeType) === "DE" && childNode.appDataEntityId) {
|
|
24964
|
+
infos.push({
|
|
24965
|
+
minorEntityId: childNode.appDataEntityId,
|
|
24966
|
+
pickupDEFName: nodeRS.parentDER1N.pickupDEFName.toLowerCase(),
|
|
24967
|
+
childDETreeNodeId: nodeRS.childDETreeNodeId
|
|
24968
|
+
});
|
|
24969
|
+
}
|
|
24970
|
+
}
|
|
24971
|
+
});
|
|
24972
|
+
if (infos.length > 0) {
|
|
24973
|
+
this.dropNodeRss.set(node.id, infos);
|
|
24974
|
+
}
|
|
24975
|
+
});
|
|
24976
|
+
}
|
|
24977
|
+
/**
|
|
24978
|
+
* 初始化节点点击后触发的第一个常用操作的上下文菜单项
|
|
24979
|
+
* @author lxm
|
|
24980
|
+
* @date 2023-12-19 03:18:43
|
|
24981
|
+
* @protected
|
|
24982
|
+
*/
|
|
24983
|
+
initNodeClickTBUIActionItem() {
|
|
24984
|
+
var _a;
|
|
24985
|
+
(_a = this.model.detreeNodes) == null ? void 0 : _a.forEach((node) => {
|
|
24986
|
+
var _a2, _b;
|
|
24987
|
+
if ((_b = (_a2 = node.decontextMenu) == null ? void 0 : _a2.detoolbarItems) == null ? void 0 : _b.length) {
|
|
24988
|
+
const items = getUIActionItemsByActionLevel(node.decontextMenu, 200);
|
|
24989
|
+
if (items.length > 0) {
|
|
24990
|
+
this.nodeClickTBUIActionItem.set(node.id, items[0]);
|
|
24991
|
+
}
|
|
24992
|
+
}
|
|
24993
|
+
});
|
|
24994
|
+
}
|
|
24630
24995
|
/**
|
|
24631
24996
|
* 树部件加载,从根节点开始重新加载
|
|
24632
24997
|
*
|
|
@@ -24688,7 +25053,7 @@ var TreeController = class extends MDControlController {
|
|
|
24688
25053
|
this.state.rootNodes = nodes;
|
|
24689
25054
|
}
|
|
24690
25055
|
this.state.items = [];
|
|
24691
|
-
|
|
25056
|
+
recursiveIterate10(
|
|
24692
25057
|
{ children: this.state.rootNodes },
|
|
24693
25058
|
(node) => {
|
|
24694
25059
|
this.state.items.push(node);
|
|
@@ -24704,7 +25069,11 @@ var TreeController = class extends MDControlController {
|
|
|
24704
25069
|
* @returns {*} {Promise<void>}
|
|
24705
25070
|
* @memberof TreeController
|
|
24706
25071
|
*/
|
|
24707
|
-
async onTreeNodeClick(nodeData) {
|
|
25072
|
+
async onTreeNodeClick(nodeData, event) {
|
|
25073
|
+
if (this.nodeClickTBUIActionItem.has(nodeData.nodeId)) {
|
|
25074
|
+
const item = this.nodeClickTBUIActionItem.get(nodeData.nodeId);
|
|
25075
|
+
return this.doUIAction(item.uiactionId, nodeData, event, item.appId);
|
|
25076
|
+
}
|
|
24708
25077
|
if (this.state.navigational) {
|
|
24709
25078
|
const nodeModel = this.getNodeModel(nodeData.nodeId);
|
|
24710
25079
|
if (!(nodeModel == null ? void 0 : nodeModel.navAppViewId)) {
|
|
@@ -24842,7 +25211,7 @@ var TreeController = class extends MDControlController {
|
|
|
24842
25211
|
*/
|
|
24843
25212
|
calcExpandedKeys(nodes) {
|
|
24844
25213
|
let expandedKeys = [...this.state.expandedKeys];
|
|
24845
|
-
|
|
25214
|
+
recursiveIterate10({ children: nodes }, (node) => {
|
|
24846
25215
|
var _a;
|
|
24847
25216
|
if ((_a = node.children) == null ? void 0 : _a.length) {
|
|
24848
25217
|
expandedKeys.push(node.id);
|
|
@@ -24902,10 +25271,206 @@ var TreeController = class extends MDControlController {
|
|
|
24902
25271
|
})
|
|
24903
25272
|
);
|
|
24904
25273
|
}
|
|
25274
|
+
/**
|
|
25275
|
+
* 计算是否允许拖动
|
|
25276
|
+
* @author lxm
|
|
25277
|
+
* @date 2023-12-14 11:28:07
|
|
25278
|
+
* @param {ITreeNodeData} draggingNode
|
|
25279
|
+
* @return {*} {boolean}
|
|
25280
|
+
*/
|
|
25281
|
+
calcAllowDrag(draggingNode) {
|
|
25282
|
+
const nodeModel = this.getNodeModel(draggingNode.nodeId);
|
|
25283
|
+
return (nodeModel == null ? void 0 : nodeModel.allowDrag) === true;
|
|
25284
|
+
}
|
|
25285
|
+
/**
|
|
25286
|
+
* 计算是否允许拖入
|
|
25287
|
+
* @author lxm
|
|
25288
|
+
* @date 2023-12-14 02:04:15
|
|
25289
|
+
* @param {ITreeNodeData} draggingNode
|
|
25290
|
+
* @param {ITreeNodeData} dropNode
|
|
25291
|
+
* @param {('inner' | 'prev' | 'next')} type
|
|
25292
|
+
* @return {*} {boolean}
|
|
25293
|
+
*/
|
|
25294
|
+
calcAllowDrop(draggingNode, dropNode, type) {
|
|
25295
|
+
var _a, _b;
|
|
25296
|
+
const draggingNodeModel = this.getNodeModel(draggingNode.nodeId);
|
|
25297
|
+
if (type === "inner") {
|
|
25298
|
+
return !!this.findDropNodeRS(
|
|
25299
|
+
dropNode.nodeId,
|
|
25300
|
+
draggingNodeModel.appDataEntityId
|
|
25301
|
+
);
|
|
25302
|
+
}
|
|
25303
|
+
if (((_a = draggingNode.parent) == null ? void 0 : _a.id) !== ((_b = dropNode.parent) == null ? void 0 : _b.id)) {
|
|
25304
|
+
return !!this.findDropNodeRS(
|
|
25305
|
+
dropNode.parent.nodeId,
|
|
25306
|
+
draggingNodeModel.appDataEntityId
|
|
25307
|
+
);
|
|
25308
|
+
}
|
|
25309
|
+
const parentNodeModel = this.getNodeModel(dropNode.nodeId);
|
|
25310
|
+
return (parentNodeModel == null ? void 0 : parentNodeModel.allowOrder) === true;
|
|
25311
|
+
}
|
|
25312
|
+
/**
|
|
25313
|
+
* 找到指定父节点下的节点关系里面
|
|
25314
|
+
* 配置的实体关系的子实体是指定实体的
|
|
25315
|
+
* @author lxm
|
|
25316
|
+
* @date 2023-12-14 01:43:41
|
|
25317
|
+
* @protected
|
|
25318
|
+
* @param {string} parentId 父节点模型id
|
|
25319
|
+
* @param {string} appDataEntityId
|
|
25320
|
+
* @return {*} {(IDETreeNodeRS | undefined)}
|
|
25321
|
+
*/
|
|
25322
|
+
findDropNodeRS(parentId, appDataEntityId) {
|
|
25323
|
+
const nodeRSs = this.dropNodeRss.get(parentId);
|
|
25324
|
+
return nodeRSs == null ? void 0 : nodeRSs.find((item) => item.minorEntityId === appDataEntityId);
|
|
25325
|
+
}
|
|
25326
|
+
/**
|
|
25327
|
+
* 处理节点拖入事件
|
|
25328
|
+
* @author lxm
|
|
25329
|
+
* @date 2023-12-15 04:23:29
|
|
25330
|
+
* @param {ITreeNodeData} draggingNode
|
|
25331
|
+
* @param {ITreeNodeData} dropNode
|
|
25332
|
+
* @param {('inner' | 'prev' | 'next')} dropType
|
|
25333
|
+
* @return {*} {Promise<void>}
|
|
25334
|
+
*/
|
|
25335
|
+
async onNodeDrop(draggingNode, dropNode, dropType) {
|
|
25336
|
+
var _a, _b, _c, _d;
|
|
25337
|
+
if (dropType === "inner" && !dropNode.leaf && dropNode.children === void 0) {
|
|
25338
|
+
await this.expandNodeByKey([dropNode.id]);
|
|
25339
|
+
}
|
|
25340
|
+
const modifiedNodeDatas = [];
|
|
25341
|
+
const draggingNodeModel = this.getNodeModel(draggingNode.nodeId);
|
|
25342
|
+
const dropInNode = dropType === "inner" ? dropNode : dropNode.parent;
|
|
25343
|
+
const isChangedParent = ((_a = dropNode.parent) == null ? void 0 : _a.id) !== ((_b = draggingNode.parent) == null ? void 0 : _b.id);
|
|
25344
|
+
let orderNodeModel = this.getNodeModel(dropNode.nodeId);
|
|
25345
|
+
if (dropType === "inner" || ((_c = dropNode.parent) == null ? void 0 : _c.id) !== ((_d = draggingNode.parent) == null ? void 0 : _d.id)) {
|
|
25346
|
+
const dropNodeRs = this.findDropNodeRS(
|
|
25347
|
+
dropInNode.nodeId,
|
|
25348
|
+
draggingNodeModel.appDataEntityId
|
|
25349
|
+
);
|
|
25350
|
+
if (dropNodeRs) {
|
|
25351
|
+
draggingNode.deData[dropNodeRs.pickupDEFName] = dropInNode.value;
|
|
25352
|
+
modifiedNodeDatas.push(draggingNode);
|
|
25353
|
+
orderNodeModel = this.getNodeModel(dropNodeRs.childDETreeNodeId);
|
|
25354
|
+
}
|
|
25355
|
+
}
|
|
25356
|
+
const originArr = draggingNode.parent.children;
|
|
25357
|
+
originArr.splice(originArr.indexOf(draggingNode), 1);
|
|
25358
|
+
if (dropType === "inner") {
|
|
25359
|
+
if (!dropNode.children) {
|
|
25360
|
+
dropNode.children = [];
|
|
25361
|
+
dropNode.leaf = true;
|
|
25362
|
+
this.state.expandedKeys.push(dropNode.id);
|
|
25363
|
+
}
|
|
25364
|
+
dropNode.children.push(draggingNode);
|
|
25365
|
+
} else {
|
|
25366
|
+
let insertIndex = dropInNode.children.indexOf(dropNode);
|
|
25367
|
+
if (dropType === "next") {
|
|
25368
|
+
insertIndex += 1;
|
|
25369
|
+
}
|
|
25370
|
+
dropInNode.children.splice(insertIndex, 0, draggingNode);
|
|
25371
|
+
}
|
|
25372
|
+
if (dropType === "inner" || isChangedParent) {
|
|
25373
|
+
draggingNode.parent = dropInNode;
|
|
25374
|
+
draggingNode.nodeId = orderNodeModel.id;
|
|
25375
|
+
this.state.expandedKeys = this.calcExpandedKeys([dropInNode]);
|
|
25376
|
+
}
|
|
25377
|
+
const { sortAppDEFieldId, sortDir, allowOrder } = orderNodeModel;
|
|
25378
|
+
if (allowOrder === true) {
|
|
25379
|
+
if (!sortAppDEFieldId) {
|
|
25380
|
+
throw new RuntimeModelError60(orderNodeModel, "\u7F3A\u5C11\u914D\u7F6E\u6392\u5E8F\u5C5E\u6027");
|
|
25381
|
+
}
|
|
25382
|
+
const sortField = sortAppDEFieldId.toLowerCase();
|
|
25383
|
+
const isAsc = sortDir === "ASC";
|
|
25384
|
+
const changedArr = [...dropInNode.children];
|
|
25385
|
+
if (!isAsc) {
|
|
25386
|
+
changedArr.reverse();
|
|
25387
|
+
}
|
|
25388
|
+
const getNextSort = (num) => {
|
|
25389
|
+
return num + (100 - num % 100);
|
|
25390
|
+
};
|
|
25391
|
+
const getSort = (deData) => {
|
|
25392
|
+
return deData[sortField] || 0;
|
|
25393
|
+
};
|
|
25394
|
+
let lastSort;
|
|
25395
|
+
changedArr.forEach((item, index) => {
|
|
25396
|
+
const deData = item.deData;
|
|
25397
|
+
if (lastSort === void 0) {
|
|
25398
|
+
if (item === draggingNode) {
|
|
25399
|
+
if (index === 0) {
|
|
25400
|
+
lastSort = 100;
|
|
25401
|
+
} else {
|
|
25402
|
+
lastSort = getNextSort(getSort(changedArr[index - 1].deData));
|
|
25403
|
+
}
|
|
25404
|
+
deData[sortField] = lastSort;
|
|
25405
|
+
if (modifiedNodeDatas.indexOf(item) === -1) {
|
|
25406
|
+
modifiedNodeDatas.push(item);
|
|
25407
|
+
}
|
|
25408
|
+
}
|
|
25409
|
+
} else {
|
|
25410
|
+
if (lastSort >= getSort(deData)) {
|
|
25411
|
+
deData[sortField] = getNextSort(lastSort);
|
|
25412
|
+
modifiedNodeDatas.push(item);
|
|
25413
|
+
}
|
|
25414
|
+
lastSort = getSort(deData);
|
|
25415
|
+
}
|
|
25416
|
+
});
|
|
25417
|
+
}
|
|
25418
|
+
await this.updateDeNodeData(modifiedNodeDatas);
|
|
25419
|
+
this.evt.emit("onAfterNodeDrop", { isChangedParent });
|
|
25420
|
+
}
|
|
25421
|
+
/**
|
|
25422
|
+
* 更新实体节点数据
|
|
25423
|
+
* @author lxm
|
|
25424
|
+
* @date 2023-12-15 04:19:36
|
|
25425
|
+
* @protected
|
|
25426
|
+
* @param {ITreeNodeData[]} nodeDatas 节点数据集合
|
|
25427
|
+
* @return {*} {Promise<void>}
|
|
25428
|
+
*/
|
|
25429
|
+
async updateDeNodeData(nodeDatas) {
|
|
25430
|
+
const app = ibiz.hub.getApp(this.context.srfappid);
|
|
25431
|
+
await Promise.all(
|
|
25432
|
+
nodeDatas.map(async (node) => {
|
|
25433
|
+
const model = this.getNodeModel(node.nodeId);
|
|
25434
|
+
const deData = node.deData;
|
|
25435
|
+
const deName = calcDeCodeNameById(model.appDataEntityId);
|
|
25436
|
+
const tempContext = this.context.clone();
|
|
25437
|
+
tempContext[deName] = deData.srfkey;
|
|
25438
|
+
const res = await app.deService.exec(
|
|
25439
|
+
model.appDataEntityId,
|
|
25440
|
+
"update",
|
|
25441
|
+
tempContext,
|
|
25442
|
+
deData
|
|
25443
|
+
);
|
|
25444
|
+
if (res.data) {
|
|
25445
|
+
node.deData = res.data;
|
|
25446
|
+
}
|
|
25447
|
+
})
|
|
25448
|
+
);
|
|
25449
|
+
}
|
|
25450
|
+
/**
|
|
25451
|
+
* 修改节点文本
|
|
25452
|
+
* @author lxm
|
|
25453
|
+
* @date 2023-12-15 04:32:52
|
|
25454
|
+
* @param {ITreeNodeData} nodeData
|
|
25455
|
+
* @param {string} text
|
|
25456
|
+
* @return {*} {Promise<void>}
|
|
25457
|
+
*/
|
|
25458
|
+
async modifyNodeText(nodeData, text) {
|
|
25459
|
+
const model = this.getNodeModel(nodeData.nodeId);
|
|
25460
|
+
if (!model.allowEditText) {
|
|
25461
|
+
throw new RuntimeModelError60(model, "\u6811\u8282\u70B9\u6CA1\u6709\u914D\u7F6E\u7F16\u8F91\u6A21\u5F0F\uFF1A\u540D\u79F0");
|
|
25462
|
+
}
|
|
25463
|
+
if (!nodeData.deData) {
|
|
25464
|
+
throw new RuntimeError55("\u4E0D\u662F\u5B9E\u4F53\u6811\u8282\u70B9\u6570\u636E");
|
|
25465
|
+
}
|
|
25466
|
+
nodeData.text = text;
|
|
25467
|
+
nodeData.deData[model.textAppDEFieldId] = text;
|
|
25468
|
+
await this.updateDeNodeData([nodeData]);
|
|
25469
|
+
}
|
|
24905
25470
|
};
|
|
24906
25471
|
|
|
24907
25472
|
// src/controller/control/wizard-panel/wizard-panel.controller.ts
|
|
24908
|
-
import { RuntimeError as
|
|
25473
|
+
import { RuntimeError as RuntimeError56 } from "@ibiz-template/core";
|
|
24909
25474
|
|
|
24910
25475
|
// src/controller/control/wizard-panel/wizard-panel.service.ts
|
|
24911
25476
|
var WizardPanelService = class extends ControlService {
|
|
@@ -25071,7 +25636,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25071
25636
|
const { activeFormTag } = this.state;
|
|
25072
25637
|
const controller = this.formControllers.get(activeFormTag);
|
|
25073
25638
|
if (!controller) {
|
|
25074
|
-
throw new
|
|
25639
|
+
throw new RuntimeError56("\u627E\u4E0D\u5230".concat(activeFormTag, "\u7684\u8868\u5355\u63A7\u5236\u5668"));
|
|
25075
25640
|
}
|
|
25076
25641
|
return controller;
|
|
25077
25642
|
}
|
|
@@ -25113,7 +25678,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25113
25678
|
getWizardFormByTag(tag) {
|
|
25114
25679
|
var _a;
|
|
25115
25680
|
if (!((_a = this.model.dewizard) == null ? void 0 : _a.dewizardForms)) {
|
|
25116
|
-
throw new
|
|
25681
|
+
throw new RuntimeError56("\u6CA1\u6709\u914D\u7F6E\u5411\u5BFC\u8868\u5355\u96C6\u5408");
|
|
25117
25682
|
return;
|
|
25118
25683
|
}
|
|
25119
25684
|
const wizardForm = this.model.dewizard.dewizardForms.find(
|
|
@@ -25122,7 +25687,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25122
25687
|
}
|
|
25123
25688
|
);
|
|
25124
25689
|
if (!wizardForm) {
|
|
25125
|
-
throw new
|
|
25690
|
+
throw new RuntimeError56("\u627E\u4E0D\u5230\u6807\u8BC6\u4E3A".concat(tag, "\u7684\u5411\u5BFC\u8868\u5355"));
|
|
25126
25691
|
}
|
|
25127
25692
|
return wizardForm;
|
|
25128
25693
|
}
|
|
@@ -25193,7 +25758,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25193
25758
|
prevTag = this.tagHistory[this.tagHistory.length - 1];
|
|
25194
25759
|
}
|
|
25195
25760
|
if (!prevTag) {
|
|
25196
|
-
throw new
|
|
25761
|
+
throw new RuntimeError56("\u6CA1\u6709\u4E0A\u4E00\u4E2A\u8868\u5355");
|
|
25197
25762
|
}
|
|
25198
25763
|
this.state.activeFormTag = prevTag;
|
|
25199
25764
|
}
|
|
@@ -25229,7 +25794,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25229
25794
|
});
|
|
25230
25795
|
const nextWizardStep = wizardSteps[index + 1];
|
|
25231
25796
|
if (!nextWizardStep) {
|
|
25232
|
-
throw new
|
|
25797
|
+
throw new RuntimeError56("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u6B65\u9AA4");
|
|
25233
25798
|
}
|
|
25234
25799
|
const nextWizardForm = this.getWizardFormByTag(nextWizardStep.stepTag);
|
|
25235
25800
|
if (nextWizardForm && nextWizardForm.formTag) {
|
|
@@ -25238,7 +25803,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25238
25803
|
}
|
|
25239
25804
|
}
|
|
25240
25805
|
if (!nextTag) {
|
|
25241
|
-
throw new
|
|
25806
|
+
throw new RuntimeError56("\u627E\u4E0D\u5230\u4E0B\u4E00\u4E2A\u5411\u5BFC\u8868\u5355");
|
|
25242
25807
|
}
|
|
25243
25808
|
this.state.activeFormTag = nextTag;
|
|
25244
25809
|
this.tagHistory.push(nextTag);
|
|
@@ -25257,7 +25822,7 @@ var WizardPanelController = class extends ControlController {
|
|
|
25257
25822
|
};
|
|
25258
25823
|
|
|
25259
25824
|
// src/controller/control/md-ctrl/md-ctrl.controller.ts
|
|
25260
|
-
import { RuntimeModelError as
|
|
25825
|
+
import { RuntimeModelError as RuntimeModelError61 } from "@ibiz-template/core";
|
|
25261
25826
|
import { isNil as isNil24 } from "ramda";
|
|
25262
25827
|
|
|
25263
25828
|
// src/controller/control/md-ctrl/md-ctrl.service.ts
|
|
@@ -25484,7 +26049,7 @@ var MDCtrlController = class extends MDControlController {
|
|
|
25484
26049
|
const { enableGroup, groupMode, groupAppDEFieldId } = this.model;
|
|
25485
26050
|
if (enableGroup && groupMode) {
|
|
25486
26051
|
if (!groupAppDEFieldId) {
|
|
25487
|
-
throw new
|
|
26052
|
+
throw new RuntimeModelError61(this.model, "\u5206\u7EC4\u5C5E\u6027\u6CA1\u6709\u914D\u7F6E");
|
|
25488
26053
|
}
|
|
25489
26054
|
if (groupMode === "AUTO") {
|
|
25490
26055
|
this.handleAutoGroup();
|
|
@@ -25551,7 +26116,7 @@ var MDCtrlController = class extends MDControlController {
|
|
|
25551
26116
|
async handleCodeListGroup() {
|
|
25552
26117
|
const { groupAppDEFieldId, groupCodeListId } = this.model;
|
|
25553
26118
|
if (!groupCodeListId) {
|
|
25554
|
-
throw new
|
|
26119
|
+
throw new RuntimeModelError61(this.model, "\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");
|
|
25555
26120
|
}
|
|
25556
26121
|
const { items } = this.state;
|
|
25557
26122
|
const groupMap = /* @__PURE__ */ new Map();
|
|
@@ -25581,7 +26146,7 @@ var MDCtrlController = class extends MDControlController {
|
|
|
25581
26146
|
};
|
|
25582
26147
|
|
|
25583
26148
|
// src/controller/control/kanban/kanban.controller.ts
|
|
25584
|
-
import { RuntimeError as
|
|
26149
|
+
import { RuntimeError as RuntimeError57, RuntimeModelError as RuntimeModelError62 } from "@ibiz-template/core";
|
|
25585
26150
|
import { isNil as isNil25 } from "ramda";
|
|
25586
26151
|
|
|
25587
26152
|
// src/controller/control/kanban/kanban.service.ts
|
|
@@ -25656,10 +26221,10 @@ var KanbanController = class extends DataViewControlController {
|
|
|
25656
26221
|
const sortField = this.model.minorSortAppDEFieldId;
|
|
25657
26222
|
const { minorSortDir } = this.model;
|
|
25658
26223
|
if (!sortField) {
|
|
25659
|
-
throw new
|
|
26224
|
+
throw new RuntimeModelError62(this.model, "\u6392\u5E8F\u5C5E\u6027\u6CA1\u914D\u7F6E");
|
|
25660
26225
|
}
|
|
25661
26226
|
if (!minorSortDir) {
|
|
25662
|
-
throw new
|
|
26227
|
+
throw new RuntimeModelError62(this.model, "\u6392\u5E8F\u65B9\u5411\u6CA1\u914D\u7F6E");
|
|
25663
26228
|
}
|
|
25664
26229
|
const isAsc = minorSortDir === "ASC";
|
|
25665
26230
|
items.forEach((item) => {
|
|
@@ -25669,7 +26234,7 @@ var KanbanController = class extends DataViewControlController {
|
|
|
25669
26234
|
} else {
|
|
25670
26235
|
const toNum = Number(sortValue);
|
|
25671
26236
|
if (Number.isNaN(toNum)) {
|
|
25672
|
-
throw new
|
|
26237
|
+
throw new RuntimeError57(
|
|
25673
26238
|
"".concat(item.srfmajortext, "\u7684\u6392\u5E8F\u5C5E\u6027\u65E0\u6CD5\u8F6C\u6362\u6210\u6570\u503C")
|
|
25674
26239
|
);
|
|
25675
26240
|
}
|
|
@@ -25685,10 +26250,82 @@ var KanbanController = class extends DataViewControlController {
|
|
|
25685
26250
|
}
|
|
25686
26251
|
handleDataGroup() {
|
|
25687
26252
|
if (!this.model.enableGroup || this.model.groupMode === "NONE") {
|
|
25688
|
-
throw new
|
|
26253
|
+
throw new RuntimeError57("\u770B\u677F\u90E8\u4EF6\u5FC5\u987B\u5F00\u542F\u5206\u7EC4");
|
|
25689
26254
|
}
|
|
25690
26255
|
return super.handleDataGroup();
|
|
25691
26256
|
}
|
|
26257
|
+
/**
|
|
26258
|
+
* 处理自动分组
|
|
26259
|
+
*
|
|
26260
|
+
* @memberof KanbanController
|
|
26261
|
+
*/
|
|
26262
|
+
handleAutoGroup() {
|
|
26263
|
+
const { groupAppDEFieldId } = this.model;
|
|
26264
|
+
if (groupAppDEFieldId) {
|
|
26265
|
+
const { items } = this.state;
|
|
26266
|
+
const groupMap = /* @__PURE__ */ new Map();
|
|
26267
|
+
items.forEach((item) => {
|
|
26268
|
+
const groupVal = item[groupAppDEFieldId];
|
|
26269
|
+
if (isNil25(groupVal)) {
|
|
26270
|
+
return;
|
|
26271
|
+
}
|
|
26272
|
+
if (!groupMap.has(groupVal)) {
|
|
26273
|
+
groupMap.set(groupVal, []);
|
|
26274
|
+
}
|
|
26275
|
+
groupMap.get(groupVal).push(item);
|
|
26276
|
+
});
|
|
26277
|
+
const groups = [];
|
|
26278
|
+
groupMap.forEach((value, key) => {
|
|
26279
|
+
const codeListItem = this.groupCodeListItems.find(
|
|
26280
|
+
(item) => item.value === key
|
|
26281
|
+
);
|
|
26282
|
+
groups.push({
|
|
26283
|
+
caption: codeListItem.text,
|
|
26284
|
+
color: codeListItem.color,
|
|
26285
|
+
key: codeListItem.value,
|
|
26286
|
+
children: [...value]
|
|
26287
|
+
});
|
|
26288
|
+
});
|
|
26289
|
+
this.state.groups = groups;
|
|
26290
|
+
}
|
|
26291
|
+
}
|
|
26292
|
+
/**
|
|
26293
|
+
* 处理代码表分组
|
|
26294
|
+
*
|
|
26295
|
+
* @return {*} {Promise<void>}
|
|
26296
|
+
* @memberof KanbanController
|
|
26297
|
+
*/
|
|
26298
|
+
async handleCodeListGroup() {
|
|
26299
|
+
const { groupAppDEFieldId, groupCodeListId } = this.model;
|
|
26300
|
+
if (!groupCodeListId) {
|
|
26301
|
+
throw new RuntimeModelError62(this.model, "\u5206\u7EC4\u4EE3\u7801\u8868\u6CA1\u6709\u914D\u7F6E");
|
|
26302
|
+
}
|
|
26303
|
+
const { items } = this.state;
|
|
26304
|
+
const groupMap = /* @__PURE__ */ new Map();
|
|
26305
|
+
this.groupCodeListItems.forEach((item) => {
|
|
26306
|
+
groupMap.set(item.value, []);
|
|
26307
|
+
});
|
|
26308
|
+
items.forEach((item) => {
|
|
26309
|
+
const groupVal = item[groupAppDEFieldId];
|
|
26310
|
+
const groupArr = groupMap.get(groupVal);
|
|
26311
|
+
if (groupArr) {
|
|
26312
|
+
groupArr.push(item);
|
|
26313
|
+
}
|
|
26314
|
+
});
|
|
26315
|
+
const groups = [];
|
|
26316
|
+
groupMap.forEach((arr, key) => {
|
|
26317
|
+
const codeListItem = this.groupCodeListItems.find(
|
|
26318
|
+
(item) => item.value === key
|
|
26319
|
+
);
|
|
26320
|
+
groups.push({
|
|
26321
|
+
caption: codeListItem.text,
|
|
26322
|
+
color: codeListItem.color,
|
|
26323
|
+
key: codeListItem.value,
|
|
26324
|
+
children: arr
|
|
26325
|
+
});
|
|
26326
|
+
});
|
|
26327
|
+
this.state.groups = groups;
|
|
26328
|
+
}
|
|
25692
26329
|
/**
|
|
25693
26330
|
* 拖拽变更事件处理回调
|
|
25694
26331
|
* @author lxm
|
|
@@ -25809,7 +26446,7 @@ var KanbanController = class extends DataViewControlController {
|
|
|
25809
26446
|
};
|
|
25810
26447
|
|
|
25811
26448
|
// src/controller/control/tree-grid-ex/tree-grid-ex.controller.ts
|
|
25812
|
-
import { recursiveIterate as
|
|
26449
|
+
import { recursiveIterate as recursiveIterate11 } from "@ibiz-template/core";
|
|
25813
26450
|
|
|
25814
26451
|
// src/controller/control/tree-grid-ex/tree-grid-ex.service.ts
|
|
25815
26452
|
import { isArray as isArray10 } from "qx-util";
|
|
@@ -26049,7 +26686,7 @@ var TreeGridExController = class extends MDControlController {
|
|
|
26049
26686
|
* @memberof TreeGridExController
|
|
26050
26687
|
*/
|
|
26051
26688
|
initColumnStates() {
|
|
26052
|
-
|
|
26689
|
+
recursiveIterate11(
|
|
26053
26690
|
this.model,
|
|
26054
26691
|
(column) => {
|
|
26055
26692
|
if (column.columnType !== "GROUPGRIDCOLUMN") {
|
|
@@ -26137,7 +26774,7 @@ var TreeGridExController = class extends MDControlController {
|
|
|
26137
26774
|
this.state.rootNodes = nodes;
|
|
26138
26775
|
}
|
|
26139
26776
|
this.state.items = [];
|
|
26140
|
-
|
|
26777
|
+
recursiveIterate11(
|
|
26141
26778
|
{ children: this.state.rootNodes },
|
|
26142
26779
|
(node) => {
|
|
26143
26780
|
this.state.items.push(node);
|
|
@@ -26156,7 +26793,7 @@ var TreeGridExController = class extends MDControlController {
|
|
|
26156
26793
|
*/
|
|
26157
26794
|
calcExpandedKeys(nodes) {
|
|
26158
26795
|
let expandedKeys = [];
|
|
26159
|
-
|
|
26796
|
+
recursiveIterate11({ children: nodes }, (node) => {
|
|
26160
26797
|
var _a;
|
|
26161
26798
|
if ((_a = node.children) == null ? void 0 : _a.length) {
|
|
26162
26799
|
expandedKeys.push(node.id);
|
|
@@ -26179,8 +26816,8 @@ var TreeGridService = class extends GridService {
|
|
|
26179
26816
|
};
|
|
26180
26817
|
|
|
26181
26818
|
// src/controller/control/medit-view-panel/medit-view-panel.controller.ts
|
|
26182
|
-
import { RuntimeError as
|
|
26183
|
-
import { createUUID as
|
|
26819
|
+
import { RuntimeError as RuntimeError58 } from "@ibiz-template/core";
|
|
26820
|
+
import { createUUID as createUUID12 } from "qx-util";
|
|
26184
26821
|
|
|
26185
26822
|
// src/controller/control/medit-view-panel/medit-view-panel.service.ts
|
|
26186
26823
|
var MEditViewPanelService = class extends MDControlService {
|
|
@@ -26267,7 +26904,7 @@ var MEditViewPanelController = class extends MDControlController {
|
|
|
26267
26904
|
*/
|
|
26268
26905
|
handlePanelItemParams(arg) {
|
|
26269
26906
|
const [{ parameterName }] = this.parameters;
|
|
26270
|
-
const id = arg[parameterName] ? arg[parameterName] : "mockId:".concat(
|
|
26907
|
+
const id = arg[parameterName] ? arg[parameterName] : "mockId:".concat(createUUID12());
|
|
26271
26908
|
const item = {
|
|
26272
26909
|
id,
|
|
26273
26910
|
context: this.context.clone(),
|
|
@@ -26395,7 +27032,7 @@ var MEditViewPanelController = class extends MDControlController {
|
|
|
26395
27032
|
(item) => item.id === id
|
|
26396
27033
|
);
|
|
26397
27034
|
if (panelUiItemIndex < 0) {
|
|
26398
|
-
throw new
|
|
27035
|
+
throw new RuntimeError58("\u7F16\u8F91\u89C6\u56FE\u9762\u677F\u90E8\u4EF6UI\u6570\u636E\u4E0D\u5B58\u5728");
|
|
26399
27036
|
}
|
|
26400
27037
|
const tempUiItem = this.state.panelUiItems[panelUiItemIndex];
|
|
26401
27038
|
if (tempUiItem.id.startsWith("mockId:")) {
|
|
@@ -26708,7 +27345,7 @@ var UserReportPanelGenerator = class extends ReportPanelBaseGenerator {
|
|
|
26708
27345
|
callBack: "{{ const nodes = data.controller.graph.getNodes(); if (nodes.length < 25) { data.controller.graph.zoomTo(1); data.controller.graph.fitCenter() } }}"
|
|
26709
27346
|
}
|
|
26710
27347
|
],
|
|
26711
|
-
nodeDataHook: "{{ data.forEach(node => { const type = node.data.source_lables || node.data.target_lables; Object.assign(node, { label: node.data.name, size: 66, style: { fill: node.color },donutAttrs: { prop1: 10000, prop2: 10 },donutColorMap: { prop1: node.color, prop2: node.color },icon: {show: true,img: type === 'NEO4J_ZT' ? resource.dir('
|
|
27348
|
+
nodeDataHook: "{{ data.forEach(node => { const type = node.data.source_lables || node.data.target_lables; Object.assign(node, { label: node.data.name, size: 66, style: { fill: node.color },donutAttrs: { prop1: 10000, prop2: 10 },donutColorMap: { prop1: node.color, prop2: node.color },icon: {show: true,img: type === 'NEO4J_ZT' ? resource.dir('assets/images/user-avatar.png') : resource.dir('assets/images/phone.png'),width: 40,height: 40}})})}}",
|
|
26712
27349
|
edgeDataHook: "{{ data.forEach(edge => {Object.assign(edge, { label: edge.name })}) }}"
|
|
26713
27350
|
}
|
|
26714
27351
|
};
|
|
@@ -26902,7 +27539,7 @@ var ReportPanelController = class extends ControlController {
|
|
|
26902
27539
|
};
|
|
26903
27540
|
|
|
26904
27541
|
// src/controller/control/gantt/gantt.controller.ts
|
|
26905
|
-
import { recursiveIterate as
|
|
27542
|
+
import { recursiveIterate as recursiveIterate12 } from "@ibiz-template/core";
|
|
26906
27543
|
|
|
26907
27544
|
// src/controller/control/gantt/gantt.service.ts
|
|
26908
27545
|
import { ModelError as ModelError30 } from "@ibiz-template/core";
|
|
@@ -27141,6 +27778,34 @@ var GanttService = class extends TreeService {
|
|
|
27141
27778
|
var GanttController = class extends MDControlController {
|
|
27142
27779
|
constructor() {
|
|
27143
27780
|
super(...arguments);
|
|
27781
|
+
/**
|
|
27782
|
+
* 表格列适配器
|
|
27783
|
+
*
|
|
27784
|
+
* @type {{ [key: string]: IGridColumnProvider }}
|
|
27785
|
+
* @memberof GanttController
|
|
27786
|
+
*/
|
|
27787
|
+
this.providers = {};
|
|
27788
|
+
/**
|
|
27789
|
+
* 所有表格列控制器集合
|
|
27790
|
+
*
|
|
27791
|
+
* @type {{ [key: string]: GridColumnController }}
|
|
27792
|
+
* @memberof GanttController
|
|
27793
|
+
*/
|
|
27794
|
+
this.columns = {};
|
|
27795
|
+
/**
|
|
27796
|
+
* 所有表格属性列的控制器
|
|
27797
|
+
*
|
|
27798
|
+
* @type {{ [key: string]: GridFieldColumnController }}
|
|
27799
|
+
* @memberof GanttController
|
|
27800
|
+
*/
|
|
27801
|
+
this.fieldColumns = {};
|
|
27802
|
+
/**
|
|
27803
|
+
* 所有表格操作列的控制器
|
|
27804
|
+
*
|
|
27805
|
+
* @type {{ [key: string]: GridUAColumnController }}
|
|
27806
|
+
* @memberof GanttController
|
|
27807
|
+
*/
|
|
27808
|
+
this.uaColumns = {};
|
|
27144
27809
|
/**
|
|
27145
27810
|
* 上下文菜单控制器
|
|
27146
27811
|
*
|
|
@@ -27169,10 +27834,14 @@ var GanttController = class extends MDControlController {
|
|
|
27169
27834
|
super.initState();
|
|
27170
27835
|
this.state.size = 0;
|
|
27171
27836
|
this.state.query = "";
|
|
27837
|
+
this.state.columnStates = [];
|
|
27838
|
+
this.state.rootNodes = [];
|
|
27172
27839
|
}
|
|
27173
27840
|
async onCreated() {
|
|
27174
27841
|
var _a, _b;
|
|
27175
27842
|
await super.onCreated();
|
|
27843
|
+
await this.initGridColumns();
|
|
27844
|
+
this.initColumnStates();
|
|
27176
27845
|
if ((_a = this.model.detreeNodes) == null ? void 0 : _a[0].enableQuickSearch) {
|
|
27177
27846
|
this.enableQuickSearch = true;
|
|
27178
27847
|
}
|
|
@@ -27214,6 +27883,86 @@ var GanttController = class extends MDControlController {
|
|
|
27214
27883
|
Object.values(this.contextMenus).map((menu) => menu.created())
|
|
27215
27884
|
);
|
|
27216
27885
|
}
|
|
27886
|
+
/**
|
|
27887
|
+
* 初始化表格列
|
|
27888
|
+
*
|
|
27889
|
+
* @protected
|
|
27890
|
+
* @return {*} {Promise<void>}
|
|
27891
|
+
* @memberof GanttController
|
|
27892
|
+
*/
|
|
27893
|
+
async initGridColumns() {
|
|
27894
|
+
if (this.model.detreeColumns) {
|
|
27895
|
+
await Promise.all(
|
|
27896
|
+
this.model.detreeColumns.map(
|
|
27897
|
+
async (column) => this.initColumnsController(column)
|
|
27898
|
+
)
|
|
27899
|
+
);
|
|
27900
|
+
}
|
|
27901
|
+
}
|
|
27902
|
+
/**
|
|
27903
|
+
* 初始化表格属性列,操作列,编辑项控制器
|
|
27904
|
+
*
|
|
27905
|
+
* @protected
|
|
27906
|
+
* @param {IDETreeColumn} column
|
|
27907
|
+
* @return {*} {Promise<void>}
|
|
27908
|
+
* @memberof GanttController
|
|
27909
|
+
*/
|
|
27910
|
+
async initColumnsController(column) {
|
|
27911
|
+
const provider = await getGridColumnProvider(column);
|
|
27912
|
+
if (!provider) {
|
|
27913
|
+
return;
|
|
27914
|
+
}
|
|
27915
|
+
this.providers[column.codeName] = provider;
|
|
27916
|
+
const controller = await provider.createController(column, this);
|
|
27917
|
+
this.columns[column.codeName] = controller;
|
|
27918
|
+
if (column.columnType === "DEFGRIDCOLUMN") {
|
|
27919
|
+
this.fieldColumns[column.codeName] = controller;
|
|
27920
|
+
} else if (column.columnType === "UAGRIDCOLUMN") {
|
|
27921
|
+
this.uaColumns[column.codeName] = controller;
|
|
27922
|
+
}
|
|
27923
|
+
}
|
|
27924
|
+
/**
|
|
27925
|
+
* 初始化表格列状态
|
|
27926
|
+
*
|
|
27927
|
+
* @protected
|
|
27928
|
+
* @memberof GanttController
|
|
27929
|
+
*/
|
|
27930
|
+
initColumnStates() {
|
|
27931
|
+
recursiveIterate12(
|
|
27932
|
+
this.model,
|
|
27933
|
+
(column) => {
|
|
27934
|
+
if (column.columnType !== "GROUPGRIDCOLUMN") {
|
|
27935
|
+
this.state.columnStates.push({
|
|
27936
|
+
key: column.codeName,
|
|
27937
|
+
caption: column.caption,
|
|
27938
|
+
hidden: !!column.hideDefault,
|
|
27939
|
+
uaColumn: column.columnType === "UAGRIDCOLUMN"
|
|
27940
|
+
});
|
|
27941
|
+
}
|
|
27942
|
+
},
|
|
27943
|
+
{ childrenFields: ["detreeColumns"] }
|
|
27944
|
+
);
|
|
27945
|
+
this.calcColumnFixed();
|
|
27946
|
+
}
|
|
27947
|
+
/**
|
|
27948
|
+
* 计算列的固定状态
|
|
27949
|
+
*
|
|
27950
|
+
* @protected
|
|
27951
|
+
* @memberof GanttController
|
|
27952
|
+
*/
|
|
27953
|
+
calcColumnFixed() {
|
|
27954
|
+
const showColumns = this.state.columnStates.filter(
|
|
27955
|
+
(column) => !column.hidden
|
|
27956
|
+
);
|
|
27957
|
+
const allNum = showColumns.length;
|
|
27958
|
+
showColumns.forEach((column, index) => {
|
|
27959
|
+
if (column.uaColumn) {
|
|
27960
|
+
column.fixed = index + 1 <= Math.floor(allNum / 2) ? "left" : "right";
|
|
27961
|
+
} else {
|
|
27962
|
+
column.fixed = "right";
|
|
27963
|
+
}
|
|
27964
|
+
});
|
|
27965
|
+
}
|
|
27217
27966
|
/**
|
|
27218
27967
|
* 加载
|
|
27219
27968
|
*
|
|
@@ -27242,6 +27991,17 @@ var GanttController = class extends MDControlController {
|
|
|
27242
27991
|
});
|
|
27243
27992
|
return nodes;
|
|
27244
27993
|
}
|
|
27994
|
+
/**
|
|
27995
|
+
* 获取节点模型
|
|
27996
|
+
*
|
|
27997
|
+
* @param {string} id
|
|
27998
|
+
* @return {*} {(IDETreeNode | undefined)}
|
|
27999
|
+
* @memberof GanttController
|
|
28000
|
+
*/
|
|
28001
|
+
getNodeModel(id) {
|
|
28002
|
+
var _a;
|
|
28003
|
+
return (_a = this.model.detreeNodes) == null ? void 0 : _a.find((item) => item.id === id);
|
|
28004
|
+
}
|
|
27245
28005
|
/**
|
|
27246
28006
|
* 获取查询参数
|
|
27247
28007
|
*
|
|
@@ -27286,7 +28046,7 @@ var GanttController = class extends MDControlController {
|
|
|
27286
28046
|
this.state.rootNodes = nodes;
|
|
27287
28047
|
}
|
|
27288
28048
|
this.state.items = [];
|
|
27289
|
-
|
|
28049
|
+
recursiveIterate12(
|
|
27290
28050
|
{ children: this.state.rootNodes },
|
|
27291
28051
|
(node) => {
|
|
27292
28052
|
this.state.items.push(node);
|
|
@@ -27294,6 +28054,154 @@ var GanttController = class extends MDControlController {
|
|
|
27294
28054
|
);
|
|
27295
28055
|
return nodes;
|
|
27296
28056
|
}
|
|
28057
|
+
/**
|
|
28058
|
+
* 甘特节点点击事件
|
|
28059
|
+
*
|
|
28060
|
+
* @param {IGanttNodeData} nodeData
|
|
28061
|
+
* @return {*} {Promise<void>}
|
|
28062
|
+
* @memberof GanttController
|
|
28063
|
+
*/
|
|
28064
|
+
async onGanttNodeClick(nodeData) {
|
|
28065
|
+
if (this.state.singleSelect) {
|
|
28066
|
+
const { selectedData } = this.state;
|
|
28067
|
+
const filterArr = selectedData.filter((item) => item.id !== nodeData.id);
|
|
28068
|
+
if (filterArr.length === selectedData.length) {
|
|
28069
|
+
this.setSelection(
|
|
28070
|
+
this.state.singleSelect ? [nodeData] : selectedData.concat([nodeData])
|
|
28071
|
+
);
|
|
28072
|
+
} else {
|
|
28073
|
+
this.setSelection(filterArr);
|
|
28074
|
+
}
|
|
28075
|
+
}
|
|
28076
|
+
if (this.state.mdctrlActiveMode === 1) {
|
|
28077
|
+
await this.setActive(nodeData);
|
|
28078
|
+
}
|
|
28079
|
+
}
|
|
28080
|
+
/**
|
|
28081
|
+
* 甘特节点双击事件
|
|
28082
|
+
*
|
|
28083
|
+
* @param {IGanttNodeData} nodeData
|
|
28084
|
+
* @return {*} {Promise<void>}
|
|
28085
|
+
* @memberof GanttController
|
|
28086
|
+
*/
|
|
28087
|
+
async onDbGanttNodeClick(nodeData) {
|
|
28088
|
+
if (this.state.mdctrlActiveMode === 2) {
|
|
28089
|
+
await this.setActive(nodeData);
|
|
28090
|
+
}
|
|
28091
|
+
}
|
|
28092
|
+
/**
|
|
28093
|
+
* 设置激活
|
|
28094
|
+
*
|
|
28095
|
+
* @param {IGanttNodeData} item
|
|
28096
|
+
* @return {*} {Promise<void>}
|
|
28097
|
+
* @memberof GanttController
|
|
28098
|
+
*/
|
|
28099
|
+
setActive(item) {
|
|
28100
|
+
const nodeParams = this.parseGanttNodeData(item);
|
|
28101
|
+
return this.evt.emit("onActive", { ...nodeParams, nodeData: item });
|
|
28102
|
+
}
|
|
28103
|
+
/**
|
|
28104
|
+
* 设置选中
|
|
28105
|
+
*
|
|
28106
|
+
* @param {IData[]} selection
|
|
28107
|
+
* @memberof GanttController
|
|
28108
|
+
*/
|
|
28109
|
+
setSelection(selection) {
|
|
28110
|
+
const selectionIds = selection.map((item) => item.id);
|
|
28111
|
+
const filterArr = this.state.items.filter(
|
|
28112
|
+
(item) => selectionIds.includes(item.id)
|
|
28113
|
+
);
|
|
28114
|
+
super.setSelection(filterArr);
|
|
28115
|
+
}
|
|
28116
|
+
/**
|
|
28117
|
+
* 执行界面行为
|
|
28118
|
+
*
|
|
28119
|
+
* @param {string} uiActionId
|
|
28120
|
+
* @param {IGanttNodeData} nodeData
|
|
28121
|
+
* @param {MouseEvent} event
|
|
28122
|
+
* @param {string} appId
|
|
28123
|
+
* @return {*} {Promise<void>}
|
|
28124
|
+
* @memberof GanttController
|
|
28125
|
+
*/
|
|
28126
|
+
async doUIAction(uiActionId, nodeData, event, appId) {
|
|
28127
|
+
const eventArgs = this.getEventArgs();
|
|
28128
|
+
const nodeParams = this.parseGanttNodeData(nodeData);
|
|
28129
|
+
const result = await UIActionUtil.exec(
|
|
28130
|
+
uiActionId,
|
|
28131
|
+
{
|
|
28132
|
+
...eventArgs,
|
|
28133
|
+
...nodeParams,
|
|
28134
|
+
event
|
|
28135
|
+
},
|
|
28136
|
+
appId
|
|
28137
|
+
);
|
|
28138
|
+
if (result.closeView) {
|
|
28139
|
+
this.view.closeView();
|
|
28140
|
+
} else if (result.refresh) {
|
|
28141
|
+
switch (result.refreshMode) {
|
|
28142
|
+
case 1:
|
|
28143
|
+
this.refreshNodeChildren(nodeData);
|
|
28144
|
+
break;
|
|
28145
|
+
case 2:
|
|
28146
|
+
this.refreshNodeChildren(nodeData, true);
|
|
28147
|
+
break;
|
|
28148
|
+
case 3:
|
|
28149
|
+
this.refresh();
|
|
28150
|
+
break;
|
|
28151
|
+
default:
|
|
28152
|
+
}
|
|
28153
|
+
}
|
|
28154
|
+
}
|
|
28155
|
+
/**
|
|
28156
|
+
* 解析甘特节点获取通用数据,和完整的上下文和视图参数。
|
|
28157
|
+
*
|
|
28158
|
+
* @protected
|
|
28159
|
+
* @param {IGanttNodeData} nodeData
|
|
28160
|
+
* @return {*} {{
|
|
28161
|
+
* data: IData[];
|
|
28162
|
+
* context: IContext;
|
|
28163
|
+
* params: IParams;
|
|
28164
|
+
* }}
|
|
28165
|
+
* @memberof GanttController
|
|
28166
|
+
*/
|
|
28167
|
+
parseGanttNodeData(nodeData) {
|
|
28168
|
+
return {
|
|
28169
|
+
data: [{ ...nodeData, ...nodeData.deData || {} }],
|
|
28170
|
+
context: Object.assign(this.context.clone(), nodeData.context || {}),
|
|
28171
|
+
params: { ...this.params, ...nodeData.params || {} }
|
|
28172
|
+
};
|
|
28173
|
+
}
|
|
28174
|
+
/**
|
|
28175
|
+
* 刷新指定树节点的子节点数据
|
|
28176
|
+
*
|
|
28177
|
+
* @param {(IGanttNodeData | IData)} nodeData 指定树节点数据,可以是节点数据,也可以是对应的实体数据
|
|
28178
|
+
* @param {boolean} [refreshParent=false] 是否是刷新给定节点数据的父节点的子节点数据
|
|
28179
|
+
* @return {*} {Promise<void>}
|
|
28180
|
+
* @memberof GanttController
|
|
28181
|
+
*/
|
|
28182
|
+
async refreshNodeChildren(nodeData, refreshParent = false) {
|
|
28183
|
+
const key = nodeData.srfkey ? "srfkey" : "id";
|
|
28184
|
+
const currentNode = this.state.items.find(
|
|
28185
|
+
(item) => item[key] === nodeData[key]
|
|
28186
|
+
);
|
|
28187
|
+
if (!currentNode) {
|
|
28188
|
+
ibiz.log.error("\u627E\u4E0D\u5230\u5BF9\u5E94\u7684\u6811\u8282\u70B9\u6570\u636E", nodeData);
|
|
28189
|
+
return;
|
|
28190
|
+
}
|
|
28191
|
+
if (refreshParent) {
|
|
28192
|
+
const { parent } = currentNode;
|
|
28193
|
+
if (!parent || !this.model.rootVisible && this.state.rootNodes.includes(parent)) {
|
|
28194
|
+
this.refresh();
|
|
28195
|
+
return;
|
|
28196
|
+
}
|
|
28197
|
+
}
|
|
28198
|
+
const targetNode = refreshParent ? currentNode.parent : currentNode;
|
|
28199
|
+
const nodes = await this.loadNodes(targetNode);
|
|
28200
|
+
this.evt.emit("onAfterRefreshParent", {
|
|
28201
|
+
parentNode: targetNode,
|
|
28202
|
+
children: nodes
|
|
28203
|
+
});
|
|
28204
|
+
}
|
|
27297
28205
|
};
|
|
27298
28206
|
|
|
27299
28207
|
// src/controller/hub.controller.ts
|
|
@@ -27492,7 +28400,7 @@ var AppHub = class {
|
|
|
27492
28400
|
this.registerAppView(appView);
|
|
27493
28401
|
return appView;
|
|
27494
28402
|
}
|
|
27495
|
-
throw new
|
|
28403
|
+
throw new RuntimeError59("\u89C6\u56FE[".concat(id, "]\u4E0D\u5B58\u5728"));
|
|
27496
28404
|
}
|
|
27497
28405
|
/**
|
|
27498
28406
|
* 根据应用实体代码名称查找应用视图
|
|
@@ -27523,7 +28431,7 @@ var AppHub = class {
|
|
|
27523
28431
|
this.registerAppDataEntity(entity, appId);
|
|
27524
28432
|
return entity;
|
|
27525
28433
|
}
|
|
27526
|
-
throw new
|
|
28434
|
+
throw new RuntimeError59("\u672A\u627E\u5230\u5E94\u7528\u5B9E\u4F53[".concat(id, "]"));
|
|
27527
28435
|
}
|
|
27528
28436
|
/**
|
|
27529
28437
|
* 新建 hub 应用
|
|
@@ -27538,7 +28446,7 @@ var AppHub = class {
|
|
|
27538
28446
|
return this.appMap.get(id);
|
|
27539
28447
|
}
|
|
27540
28448
|
if (!this.modelLoaderProvider) {
|
|
27541
|
-
throw new
|
|
28449
|
+
throw new RuntimeError59("\u8BF7\u5148\u6CE8\u518C\u6A21\u578B\u52A0\u8F7D\u9002\u914D\u5668");
|
|
27542
28450
|
}
|
|
27543
28451
|
const appModel = await this.modelLoaderProvider.getApp(id);
|
|
27544
28452
|
const app = new Application(appModel);
|
|
@@ -27638,7 +28546,7 @@ var EngineFactory = class {
|
|
|
27638
28546
|
};
|
|
27639
28547
|
|
|
27640
28548
|
// src/engine/view-base.engine.ts
|
|
27641
|
-
import { RuntimeError as
|
|
28549
|
+
import { RuntimeError as RuntimeError60 } from "@ibiz-template/core";
|
|
27642
28550
|
var ViewEngineBase = class {
|
|
27643
28551
|
/**
|
|
27644
28552
|
* 构造函数在视图控制器的构造函数逻辑内部执行
|
|
@@ -27826,7 +28734,7 @@ var ViewEngineBase = class {
|
|
|
27826
28734
|
const { appDataEntityId } = this.view.model;
|
|
27827
28735
|
const { evt, context, params } = this.view;
|
|
27828
28736
|
if (!appDataEntityId) {
|
|
27829
|
-
throw new
|
|
28737
|
+
throw new RuntimeError60("\u8BE5\u89C6\u56FE\u6CA1\u6709\u5B9E\u4F53\uFF0C\u65E0\u6CD5\u52A0\u8F7D\u5B9E\u4F53\u6570\u636E");
|
|
27830
28738
|
}
|
|
27831
28739
|
const app = ibiz.hub.getApp(context.srfappid);
|
|
27832
28740
|
const res = await app.deService.exec(
|
|
@@ -27847,7 +28755,7 @@ var ViewEngineBase = class {
|
|
|
27847
28755
|
};
|
|
27848
28756
|
|
|
27849
28757
|
// src/engine/md-view.engine.ts
|
|
27850
|
-
import { RuntimeModelError as
|
|
28758
|
+
import { RuntimeModelError as RuntimeModelError63 } from "@ibiz-template/core";
|
|
27851
28759
|
import { clone as clone24 } from "ramda";
|
|
27852
28760
|
var MDViewEngine = class extends ViewEngineBase {
|
|
27853
28761
|
/**
|
|
@@ -28031,7 +28939,7 @@ var MDViewEngine = class extends ViewEngineBase {
|
|
|
28031
28939
|
view: this.view
|
|
28032
28940
|
}));
|
|
28033
28941
|
if (result === -1) {
|
|
28034
|
-
throw new
|
|
28942
|
+
throw new RuntimeModelError63(this.view.model, "\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");
|
|
28035
28943
|
} else {
|
|
28036
28944
|
return {
|
|
28037
28945
|
cancel: !result.ok
|
|
@@ -28054,7 +28962,7 @@ var MDViewEngine = class extends ViewEngineBase {
|
|
|
28054
28962
|
(item) => item.id === "newdata"
|
|
28055
28963
|
);
|
|
28056
28964
|
if (!openAppViewLogic) {
|
|
28057
|
-
throw new
|
|
28965
|
+
throw new RuntimeModelError63(this.view.model, "\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");
|
|
28058
28966
|
}
|
|
28059
28967
|
const params = clone24(this.view.params);
|
|
28060
28968
|
if (copyMode) {
|
|
@@ -28068,7 +28976,7 @@ var MDViewEngine = class extends ViewEngineBase {
|
|
|
28068
28976
|
view: this.view
|
|
28069
28977
|
}));
|
|
28070
28978
|
if (result === -1) {
|
|
28071
|
-
throw new
|
|
28979
|
+
throw new RuntimeModelError63(this.view.model, "\u7F3A\u5C11newdata\u7684\u89C6\u56FE\u903B\u8F91");
|
|
28072
28980
|
} else {
|
|
28073
28981
|
return {
|
|
28074
28982
|
cancel: !result.ok
|
|
@@ -28187,15 +29095,15 @@ var MDViewEngine = class extends ViewEngineBase {
|
|
|
28187
29095
|
|
|
28188
29096
|
// src/utils/error-handler/default-error-handler.ts
|
|
28189
29097
|
import {
|
|
28190
|
-
RuntimeModelError as
|
|
29098
|
+
RuntimeModelError as RuntimeModelError64,
|
|
28191
29099
|
ModelError as ModelError31,
|
|
28192
29100
|
HttpError as HttpError5,
|
|
28193
29101
|
NoticeError as NoticeError2,
|
|
28194
|
-
RuntimeError as
|
|
29102
|
+
RuntimeError as RuntimeError61
|
|
28195
29103
|
} from "@ibiz-template/core";
|
|
28196
29104
|
var DefaultErrorHandler = class {
|
|
28197
29105
|
handle(error) {
|
|
28198
|
-
if (error instanceof
|
|
29106
|
+
if (error instanceof RuntimeModelError64 || error instanceof ModelError31) {
|
|
28199
29107
|
ibiz.message.error(error.message, 10, true);
|
|
28200
29108
|
} else if (error instanceof HttpError5) {
|
|
28201
29109
|
if (error.status === 401) {
|
|
@@ -28209,7 +29117,7 @@ var DefaultErrorHandler = class {
|
|
|
28209
29117
|
}
|
|
28210
29118
|
} else if (error instanceof NoticeError2) {
|
|
28211
29119
|
ibiz.message.error(error.message, error.duration, error.duration === 0);
|
|
28212
|
-
} else if (error instanceof
|
|
29120
|
+
} else if (error instanceof RuntimeError61) {
|
|
28213
29121
|
ibiz.message.error(error.message, 10, true);
|
|
28214
29122
|
}
|
|
28215
29123
|
ibiz.log.error(error);
|
|
@@ -28351,7 +29259,7 @@ var GlobalUtil = class {
|
|
|
28351
29259
|
};
|
|
28352
29260
|
|
|
28353
29261
|
// src/logic-scheduler/executor/logic-executor.ts
|
|
28354
|
-
import { RuntimeError as
|
|
29262
|
+
import { RuntimeError as RuntimeError62 } from "@ibiz-template/core";
|
|
28355
29263
|
var LogicExecutor = class {
|
|
28356
29264
|
/**
|
|
28357
29265
|
* @author lxm
|
|
@@ -28372,7 +29280,7 @@ var LogicExecutor = class {
|
|
|
28372
29280
|
*/
|
|
28373
29281
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
28374
29282
|
execute(_executeParams) {
|
|
28375
|
-
throw new
|
|
29283
|
+
throw new RuntimeError62("Method not implemented.");
|
|
28376
29284
|
}
|
|
28377
29285
|
/**
|
|
28378
29286
|
* 销毁方法
|
|
@@ -28463,13 +29371,13 @@ var ScriptExecutor = class extends LogicExecutor {
|
|
|
28463
29371
|
};
|
|
28464
29372
|
|
|
28465
29373
|
// src/logic-scheduler/executor/app-de-ui-logic-executor.ts
|
|
28466
|
-
import { RuntimeModelError as
|
|
29374
|
+
import { RuntimeModelError as RuntimeModelError65 } from "@ibiz-template/core";
|
|
28467
29375
|
var AppDEUILogicExecutor = class extends LogicExecutor {
|
|
28468
29376
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
28469
29377
|
execute(executeParams) {
|
|
28470
29378
|
const { appDEUILogicId, appDataEntityId } = this.logic;
|
|
28471
29379
|
if (!appDEUILogicId) {
|
|
28472
|
-
throw new
|
|
29380
|
+
throw new RuntimeModelError65(this.logic, "\u6CA1\u6709\u914D\u7F6E\u5B9E\u4F53\u754C\u9762\u903B\u8F91");
|
|
28473
29381
|
}
|
|
28474
29382
|
execUILogic(appDEUILogicId, appDataEntityId, executeParams);
|
|
28475
29383
|
}
|
|
@@ -28809,7 +29717,7 @@ var LogicSchedulerCenter = class {
|
|
|
28809
29717
|
};
|
|
28810
29718
|
|
|
28811
29719
|
// src/logic-scheduler/trigger/logic-trigger.ts
|
|
28812
|
-
import { RuntimeError as
|
|
29720
|
+
import { RuntimeError as RuntimeError63 } from "@ibiz-template/core";
|
|
28813
29721
|
var LogicTrigger = class {
|
|
28814
29722
|
/**
|
|
28815
29723
|
* @author lxm
|
|
@@ -28869,7 +29777,7 @@ var LogicTrigger = class {
|
|
|
28869
29777
|
if (this.executor) {
|
|
28870
29778
|
return this.executor.execute(executeParams);
|
|
28871
29779
|
}
|
|
28872
|
-
throw new
|
|
29780
|
+
throw new RuntimeError63("".concat(this.logic.id, "\u6CA1\u6709\u7ED1\u5B9Aexecutor"));
|
|
28873
29781
|
}
|
|
28874
29782
|
/**
|
|
28875
29783
|
* 销毁方法
|
|
@@ -28886,12 +29794,12 @@ var CustomTrigger = class extends LogicTrigger {
|
|
|
28886
29794
|
};
|
|
28887
29795
|
|
|
28888
29796
|
// src/logic-scheduler/trigger/item-dyna-logic-trigger.ts
|
|
28889
|
-
import { RuntimeError as
|
|
29797
|
+
import { RuntimeError as RuntimeError64 } from "@ibiz-template/core";
|
|
28890
29798
|
var ItemDynaLogicTrigger = class extends LogicTrigger {
|
|
28891
29799
|
bindExecutor(executor) {
|
|
28892
29800
|
super.bindExecutor(executor);
|
|
28893
29801
|
if (this.executor.type !== "SCRIPT") {
|
|
28894
|
-
throw new
|
|
29802
|
+
throw new RuntimeError64(
|
|
28895
29803
|
"\u9884\u5B9A\u4E49\u903B\u8F91\u7C7B\u578B".concat(this.type, "\u7684\u89E6\u53D1\u5668\u7C7B\u578B\u53EA\u80FD\u662F\u811A\u672C")
|
|
28896
29804
|
);
|
|
28897
29805
|
}
|
|
@@ -28927,7 +29835,7 @@ var ItemDynaLogicTrigger = class extends LogicTrigger {
|
|
|
28927
29835
|
};
|
|
28928
29836
|
|
|
28929
29837
|
// src/logic-scheduler/trigger/timer-trigger.ts
|
|
28930
|
-
import { RuntimeError as
|
|
29838
|
+
import { RuntimeError as RuntimeError65, RuntimeModelError as RuntimeModelError66 } from "@ibiz-template/core";
|
|
28931
29839
|
var TimerTrigger = class extends LogicTrigger {
|
|
28932
29840
|
constructor() {
|
|
28933
29841
|
super(...arguments);
|
|
@@ -28935,11 +29843,11 @@ var TimerTrigger = class extends LogicTrigger {
|
|
|
28935
29843
|
}
|
|
28936
29844
|
start() {
|
|
28937
29845
|
if (!this.logic.timer) {
|
|
28938
|
-
throw new
|
|
29846
|
+
throw new RuntimeModelError66(this.logic, "\u5B9A\u65F6\u5668\u7F3A\u5C11\u5B9A\u65F6\u95F4\u9694");
|
|
28939
29847
|
}
|
|
28940
29848
|
this.timer = setInterval(() => {
|
|
28941
29849
|
if (!this.scheduler.defaultParamsCb) {
|
|
28942
|
-
throw new
|
|
29850
|
+
throw new RuntimeError65("\u5B9A\u65F6\u5668\u7F3A\u5C11\u9ED8\u8BA4\u53C2\u6570\u56DE\u8C03");
|
|
28943
29851
|
}
|
|
28944
29852
|
const params = this.scheduler.defaultParamsCb();
|
|
28945
29853
|
this.executor.execute(params);
|
|
@@ -28956,8 +29864,8 @@ var TimerTrigger = class extends LogicTrigger {
|
|
|
28956
29864
|
// src/logic-scheduler/executor/app-ui-logic-executor.ts
|
|
28957
29865
|
import {
|
|
28958
29866
|
ModelError as ModelError34,
|
|
28959
|
-
RuntimeError as
|
|
28960
|
-
RuntimeModelError as
|
|
29867
|
+
RuntimeError as RuntimeError66,
|
|
29868
|
+
RuntimeModelError as RuntimeModelError67
|
|
28961
29869
|
} from "@ibiz-template/core";
|
|
28962
29870
|
import { notNilEmpty as notNilEmpty9 } from "qx-util";
|
|
28963
29871
|
var AppUILogicExecutor = class extends LogicExecutor {
|
|
@@ -28965,12 +29873,12 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
28965
29873
|
async execute(executeParams) {
|
|
28966
29874
|
let result;
|
|
28967
29875
|
try {
|
|
28968
|
-
if (this.logic.
|
|
29876
|
+
if (this.logic.builtinAppUILogic && this.logic.builtinAppUILogic.viewLogicType === "APP_OPENDATA") {
|
|
28969
29877
|
result = await this.executeOpenDataAppUILogic(
|
|
28970
29878
|
this.logic.builtinAppUILogic,
|
|
28971
29879
|
executeParams
|
|
28972
29880
|
);
|
|
28973
|
-
} else if (this.logic.
|
|
29881
|
+
} else if (this.logic.builtinAppUILogic && this.logic.builtinAppUILogic.viewLogicType === "APP_NEWDATA") {
|
|
28974
29882
|
result = await this.executeNewDataAppUILogic(
|
|
28975
29883
|
this.logic.builtinAppUILogic,
|
|
28976
29884
|
executeParams
|
|
@@ -28994,7 +29902,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
28994
29902
|
const { context, params, ...rest } = parameters;
|
|
28995
29903
|
const { data } = parameters;
|
|
28996
29904
|
if (!(data == null ? void 0 : data[0])) {
|
|
28997
|
-
throw new
|
|
29905
|
+
throw new RuntimeError66("opendata\u6CA1\u6709\u53EF\u64CD\u4F5C\u6570\u636E\uFF01");
|
|
28998
29906
|
}
|
|
28999
29907
|
const openViewRefs = appUILogic.openDataAppViews;
|
|
29000
29908
|
let openViewRef;
|
|
@@ -29003,7 +29911,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29003
29911
|
} else {
|
|
29004
29912
|
openViewRef = appUILogic.openDataAppView;
|
|
29005
29913
|
if (!openViewRef) {
|
|
29006
|
-
throw new
|
|
29914
|
+
throw new RuntimeModelError67(
|
|
29007
29915
|
appUILogic,
|
|
29008
29916
|
"opendata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE"
|
|
29009
29917
|
);
|
|
@@ -29011,7 +29919,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29011
29919
|
}
|
|
29012
29920
|
const openView = openViewRef.refAppViewId;
|
|
29013
29921
|
if (!openView) {
|
|
29014
|
-
throw new
|
|
29922
|
+
throw new RuntimeModelError67(
|
|
29015
29923
|
appUILogic,
|
|
29016
29924
|
"opendata\u89C6\u56FE\u903B\u8F91\u7684\u9ED8\u8BA4\u6253\u5F00\u89C6\u56FE\u6CA1\u6709\u5B9E\u9645\u5F15\u7528\u89C6\u56FE"
|
|
29017
29925
|
);
|
|
@@ -29041,7 +29949,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29041
29949
|
);
|
|
29042
29950
|
const typeFileName = appDataEntity.formTypeAppDEFieldId || appDataEntity.dataTypeAppDEFieldId;
|
|
29043
29951
|
if (!typeFileName) {
|
|
29044
|
-
throw new
|
|
29952
|
+
throw new RuntimeModelError67(
|
|
29045
29953
|
appUILogic,
|
|
29046
29954
|
"".concat(appDataEntity.codeName, "[\u591A\u8868\u5355\u5B9E\u4F53] or [\u7D22\u5F15\u5B9E\u4F53]\u7F3A\u5C11\u7C7B\u578B\u5C5E\u6027\u914D\u7F6E")
|
|
29047
29955
|
);
|
|
@@ -29049,12 +29957,12 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29049
29957
|
const { data } = parameters;
|
|
29050
29958
|
const formTypeValue = data[0][typeFileName];
|
|
29051
29959
|
if (!formTypeValue) {
|
|
29052
|
-
throw new
|
|
29960
|
+
throw new RuntimeModelError67(appUILogic, "\u6570\u636E\u6E90\u65E0\u8868\u5355\u7C7B\u578B\u5E94\u7528\u5B9E\u4F53\u5C5E\u6027\u503C");
|
|
29053
29961
|
}
|
|
29054
29962
|
const openViewRefs = appUILogic.openDataAppViews;
|
|
29055
29963
|
const findView = openViewRefs == null ? void 0 : openViewRefs.find((item) => item.refMode === formTypeValue);
|
|
29056
29964
|
if (!findView) {
|
|
29057
|
-
throw new
|
|
29965
|
+
throw new RuntimeError66(
|
|
29058
29966
|
"\u6CA1\u6709\u627E\u5230\u4E0E\u8868\u5355\u7C7B\u578B".concat(formTypeValue, "\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE")
|
|
29059
29967
|
);
|
|
29060
29968
|
}
|
|
@@ -29091,7 +29999,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29091
29999
|
return viewRef.refMode.toLowerCase() !== parentDeName;
|
|
29092
30000
|
});
|
|
29093
30001
|
if (!newViewRef) {
|
|
29094
|
-
throw new
|
|
30002
|
+
throw new RuntimeModelError67(
|
|
29095
30003
|
appUILogic,
|
|
29096
30004
|
"\u6CA1\u6709\u627E\u5230\u6279\u6DFB\u52A0\u9700\u8981\u6253\u5F00\u7684\u9009\u62E9\u89C6\u56FE"
|
|
29097
30005
|
);
|
|
@@ -29101,7 +30009,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29101
30009
|
} else {
|
|
29102
30010
|
newViewRef = newDataAppView;
|
|
29103
30011
|
if (!newViewRef || !newViewRef.refAppViewId) {
|
|
29104
|
-
throw new
|
|
30012
|
+
throw new RuntimeModelError67(
|
|
29105
30013
|
appUILogic,
|
|
29106
30014
|
"newdata\u89C6\u56FE\u903B\u8F91\u6CA1\u6709\u914D\u7F6E\u9ED8\u8BA4\u65B0\u5EFA\u6570\u636E\u89C6\u56FE"
|
|
29107
30015
|
);
|
|
@@ -29159,7 +30067,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29159
30067
|
const { wizardAppView, newDataAppViews } = appUILogic;
|
|
29160
30068
|
const { context, params, ...rest } = parameters;
|
|
29161
30069
|
if (!wizardAppView || !wizardAppView.refAppViewId) {
|
|
29162
|
-
throw new
|
|
30070
|
+
throw new RuntimeModelError67(appUILogic, "\u7F3A\u5C11\u9ED8\u8BA4\u7D22\u5F15\u5B9E\u4F53\u9009\u62E9\u89C6\u56FE");
|
|
29163
30071
|
}
|
|
29164
30072
|
const result = await ibiz.commands.execute(
|
|
29165
30073
|
OpenAppViewCommand.TAG,
|
|
@@ -29173,7 +30081,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29173
30081
|
}
|
|
29174
30082
|
const selectData = (_a = result.data) == null ? void 0 : _a[0];
|
|
29175
30083
|
if (!selectData) {
|
|
29176
|
-
throw new
|
|
30084
|
+
throw new RuntimeError66("\u8BF7\u9009\u4E2D\u4E00\u6761\u6570\u636E");
|
|
29177
30085
|
}
|
|
29178
30086
|
const indexType = selectData.srfkey;
|
|
29179
30087
|
const findView = newDataAppViews == null ? void 0 : newDataAppViews.find(
|
|
@@ -29183,7 +30091,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29183
30091
|
}
|
|
29184
30092
|
);
|
|
29185
30093
|
if (!findView) {
|
|
29186
|
-
throw new
|
|
30094
|
+
throw new RuntimeError66(
|
|
29187
30095
|
"\u6CA1\u6709\u627E\u5230\u4E0E\u7D22\u5F15\u7C7B\u578B".concat(indexType, "\u76F8\u5173\u7684\u5B9E\u4F53\u7684\u7F16\u8F91\u89C6\u56FE")
|
|
29188
30096
|
);
|
|
29189
30097
|
}
|
|
@@ -29210,7 +30118,7 @@ var AppUILogicExecutor = class extends LogicExecutor {
|
|
|
29210
30118
|
const minorDERs = selfDe.minorAppDERSs;
|
|
29211
30119
|
const pickParentDeName = newViewRef.refMode.toLowerCase();
|
|
29212
30120
|
if (!minorDERs) {
|
|
29213
|
-
throw new
|
|
30121
|
+
throw new RuntimeModelError67(selfDe, "\u5B9E\u4F53\u6CA1\u6709\u4ECE\u5173\u7CFB\u96C6\u5408\uFF01");
|
|
29214
30122
|
}
|
|
29215
30123
|
let pickParentFieldName;
|
|
29216
30124
|
minorDERs == null ? void 0 : minorDERs.forEach((item) => {
|
|
@@ -29309,12 +30217,12 @@ var ControlEventTrigger = class extends LogicTrigger {
|
|
|
29309
30217
|
};
|
|
29310
30218
|
|
|
29311
30219
|
// src/logic-scheduler/executor/app-ui-action-executor.ts
|
|
29312
|
-
import { RuntimeModelError as
|
|
30220
|
+
import { RuntimeModelError as RuntimeModelError68 } from "@ibiz-template/core";
|
|
29313
30221
|
var AppDEUIActionExecutor = class extends LogicExecutor {
|
|
29314
30222
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
29315
30223
|
execute(executeParams) {
|
|
29316
30224
|
if (!this.logic.appDEUIActionId) {
|
|
29317
|
-
throw new
|
|
30225
|
+
throw new RuntimeModelError68(
|
|
29318
30226
|
this.logic,
|
|
29319
30227
|
"\u903B\u8F91\u4E2D\u7F3A\u5C11\u89E6\u53D1\u5E94\u7528\u5B9E\u4F53\u754C\u9762\u884C\u4E3Aid"
|
|
29320
30228
|
);
|
|
@@ -29748,6 +30656,7 @@ export {
|
|
|
29748
30656
|
getRootNode,
|
|
29749
30657
|
getTreeNode,
|
|
29750
30658
|
getUIActionById,
|
|
30659
|
+
getUIActionItemsByActionLevel,
|
|
29751
30660
|
getUIActionProvider,
|
|
29752
30661
|
getUILogicNodeProvider,
|
|
29753
30662
|
getViewEngines,
|