@ibiz-template/runtime 0.1.28 → 0.1.29
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 +2201 -1084
- package/dist/index.system.min.js +1 -1
- package/dist/index.system.min.js.map +1 -1
- package/out/app-hub.d.ts +9 -0
- package/out/app-hub.d.ts.map +1 -1
- package/out/app-hub.js +4 -0
- package/out/application.d.ts +9 -1
- package/out/application.d.ts.map +1 -1
- package/out/application.js +2 -1
- package/out/command/app/open-app-view/open-app-view.d.ts +1 -1
- package/out/command/app/open-app-view/open-app-view.d.ts.map +1 -1
- package/out/command/app/open-app-view/open-app-view.js +16 -5
- package/out/controller/common/control/md-control.controller.d.ts.map +1 -1
- package/out/controller/common/control/md-control.controller.js +5 -1
- package/out/controller/common/view/view.controller.d.ts +23 -1
- package/out/controller/common/view/view.controller.d.ts.map +1 -1
- package/out/controller/common/view/view.controller.js +52 -0
- package/out/controller/control/dashboard/custom-dashboard.controller.d.ts +69 -0
- package/out/controller/control/dashboard/custom-dashboard.controller.d.ts.map +1 -0
- package/out/controller/control/dashboard/custom-dashboard.controller.js +85 -0
- package/out/controller/control/dashboard/dashboard.controller.d.ts.map +1 -1
- package/out/controller/control/dashboard/dashboard.controller.js +2 -6
- package/out/controller/control/dashboard/index.d.ts +1 -0
- package/out/controller/control/dashboard/index.d.ts.map +1 -1
- package/out/controller/control/dashboard/index.js +1 -0
- package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.d.ts +15 -1
- package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.d.ts.map +1 -1
- package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.js +26 -9
- package/out/controller/control/form/edit-form/edit-form.controller.d.ts +11 -2
- package/out/controller/control/form/edit-form/edit-form.controller.d.ts.map +1 -1
- package/out/controller/control/form/edit-form/edit-form.controller.js +56 -2
- package/out/controller/control/form/edit-form/edit-form.service.js +1 -1
- package/out/controller/control/form/form/form.controller.d.ts.map +1 -1
- package/out/controller/control/form/form/form.controller.js +2 -6
- package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid.controller.js +5 -10
- package/out/controller/control/index.d.ts +2 -0
- package/out/controller/control/index.d.ts.map +1 -1
- package/out/controller/control/index.js +2 -0
- package/out/controller/control/toolbar/toolbar.controllerr.d.ts.map +1 -1
- package/out/controller/control/toolbar/toolbar.controllerr.js +8 -8
- package/out/controller/control/tree/tree.service.d.ts.map +1 -1
- package/out/controller/control/tree/tree.service.js +6 -11
- package/out/controller/control/tree-grid/index.d.ts +3 -0
- package/out/controller/control/tree-grid/index.d.ts.map +1 -0
- package/out/controller/control/tree-grid/index.js +2 -0
- package/out/controller/control/tree-grid/tree-grid.controller.d.ts +5 -0
- package/out/controller/control/tree-grid/tree-grid.controller.d.ts.map +1 -0
- package/out/controller/control/tree-grid/tree-grid.controller.js +3 -0
- package/out/controller/control/tree-grid/tree-grid.service.d.ts +13 -0
- package/out/controller/control/tree-grid/tree-grid.service.d.ts.map +1 -0
- package/out/controller/control/tree-grid/tree-grid.service.js +12 -0
- package/out/controller/control/tree-grid-ex/index.d.ts +3 -0
- package/out/controller/control/tree-grid-ex/index.d.ts.map +1 -0
- package/out/controller/control/tree-grid-ex/index.js +2 -0
- package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.d.ts +134 -0
- package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.d.ts.map +1 -0
- package/out/controller/control/tree-grid-ex/tree-grid-ex.controller.js +240 -0
- package/out/controller/control/tree-grid-ex/tree-grid-ex.service.d.ts +65 -0
- package/out/controller/control/tree-grid-ex/tree-grid-ex.service.d.ts.map +1 -0
- package/out/controller/control/tree-grid-ex/tree-grid-ex.service.js +143 -0
- package/out/controller/utils/event/controller-event.d.ts +7 -0
- package/out/controller/utils/event/controller-event.d.ts.map +1 -1
- package/out/controller/utils/event/controller-event.js +12 -0
- package/out/controller/utils/view-msg/index.d.ts +2 -0
- package/out/controller/utils/view-msg/index.d.ts.map +1 -0
- package/out/controller/utils/view-msg/index.js +1 -0
- package/out/controller/utils/view-msg/view-msg-controller.d.ts +69 -0
- package/out/controller/utils/view-msg/view-msg-controller.d.ts.map +1 -0
- package/out/controller/utils/view-msg/view-msg-controller.js +176 -0
- package/out/de-logic/de-logic-context.d.ts +8 -0
- package/out/de-logic/de-logic-context.d.ts.map +1 -1
- package/out/de-logic/de-logic-context.js +11 -0
- package/out/de-logic/de-logic-node/prepare-param-node/prepare-param-node.d.ts.map +1 -1
- package/out/de-logic/de-logic-node/prepare-param-node/prepare-param-node.js +5 -1
- package/out/de-logic/utils/handle-src-val.d.ts.map +1 -1
- package/out/de-logic/utils/handle-src-val.js +19 -8
- package/out/engine/md-view.engine.d.ts.map +1 -1
- package/out/engine/md-view.engine.js +5 -4
- package/out/global/global-util/global-util.d.ts +8 -0
- package/out/global/global-util/global-util.d.ts.map +1 -1
- package/out/global/global-util/global-util.js +8 -0
- package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts +9 -0
- package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts.map +1 -1
- package/out/interface/common/i-app-service/i-app-service.d.ts +9 -0
- package/out/interface/common/i-app-service/i-app-service.d.ts.map +1 -1
- package/out/interface/common/i-error-handler/i-error-handler.d.ts +17 -0
- package/out/interface/common/i-error-handler/i-error-handler.d.ts.map +1 -0
- package/out/interface/common/i-error-handler/i-error-handler.js +1 -0
- package/out/interface/common/index.d.ts +1 -0
- package/out/interface/common/index.d.ts.map +1 -1
- package/out/interface/controller/common/index.d.ts +1 -0
- package/out/interface/controller/common/index.d.ts.map +1 -1
- package/out/interface/controller/common/index.js +1 -0
- package/out/interface/controller/common/view-message/i-view-message.d.ts +39 -0
- package/out/interface/controller/common/view-message/i-view-message.d.ts.map +1 -0
- package/out/interface/controller/common/view-message/i-view-message.js +1 -0
- package/out/interface/controller/controller/control/i-tree-grid-ex.controller.d.ts +16 -0
- package/out/interface/controller/controller/control/i-tree-grid-ex.controller.d.ts.map +1 -0
- package/out/interface/controller/controller/control/i-tree-grid-ex.controller.js +1 -0
- package/out/interface/controller/controller/control/i-tree-grid.controller.d.ts +13 -0
- package/out/interface/controller/controller/control/i-tree-grid.controller.d.ts.map +1 -0
- package/out/interface/controller/controller/control/i-tree-grid.controller.js +1 -0
- package/out/interface/controller/controller/control/index.d.ts +2 -0
- package/out/interface/controller/controller/control/index.d.ts.map +1 -1
- package/out/interface/controller/controller/control/index.js +2 -0
- package/out/interface/controller/controller/control/portlet/i-portlet.controller.d.ts +7 -0
- package/out/interface/controller/controller/control/portlet/i-portlet.controller.d.ts.map +1 -1
- package/out/interface/controller/event/control/i-tree-grid-ex.event.d.ts +13 -0
- package/out/interface/controller/event/control/i-tree-grid-ex.event.d.ts.map +1 -0
- package/out/interface/controller/event/control/i-tree-grid-ex.event.js +1 -0
- package/out/interface/controller/event/control/i-tree-grid.event.d.ts +13 -0
- package/out/interface/controller/event/control/i-tree-grid.event.d.ts.map +1 -0
- package/out/interface/controller/event/control/i-tree-grid.event.js +1 -0
- package/out/interface/controller/event/control/index.d.ts +2 -0
- package/out/interface/controller/event/control/index.d.ts.map +1 -1
- package/out/interface/controller/event/control/index.js +2 -0
- package/out/interface/controller/event/view/i-tree-grid-ex-view.event.d.ts +12 -0
- package/out/interface/controller/event/view/i-tree-grid-ex-view.event.d.ts.map +1 -0
- package/out/interface/controller/event/view/i-tree-grid-ex-view.event.js +1 -0
- package/out/interface/controller/event/view/i-tree-grid-view.event.d.ts +12 -0
- package/out/interface/controller/event/view/i-tree-grid-view.event.d.ts.map +1 -0
- package/out/interface/controller/event/view/i-tree-grid-view.event.js +1 -0
- package/out/interface/controller/event/view/index.d.ts +2 -0
- package/out/interface/controller/event/view/index.d.ts.map +1 -1
- package/out/interface/controller/event/view/index.js +2 -0
- package/out/interface/controller/state/control/i-tree-grid-ex.state.d.ts +52 -0
- package/out/interface/controller/state/control/i-tree-grid-ex.state.d.ts.map +1 -0
- package/out/interface/controller/state/control/i-tree-grid-ex.state.js +1 -0
- package/out/interface/controller/state/control/i-tree-grid.state.d.ts +13 -0
- package/out/interface/controller/state/control/i-tree-grid.state.d.ts.map +1 -0
- package/out/interface/controller/state/control/i-tree-grid.state.js +1 -0
- package/out/interface/controller/state/control/index.d.ts +2 -0
- package/out/interface/controller/state/control/index.d.ts.map +1 -1
- package/out/interface/controller/state/control/index.js +2 -0
- package/out/interface/controller/state/view/i-edit-view.state.d.ts +8 -0
- package/out/interface/controller/state/view/i-edit-view.state.d.ts.map +1 -1
- package/out/interface/controller/state/view/i-tree-grid-ex-view.state.d.ts +13 -0
- package/out/interface/controller/state/view/i-tree-grid-ex-view.state.d.ts.map +1 -0
- package/out/interface/controller/state/view/i-tree-grid-ex-view.state.js +1 -0
- package/out/interface/controller/state/view/i-tree-grid-view.state.d.ts +13 -0
- package/out/interface/controller/state/view/i-tree-grid-view.state.d.ts.map +1 -0
- package/out/interface/controller/state/view/i-tree-grid-view.state.js +1 -0
- package/out/interface/controller/state/view/i-view.state.d.ts +10 -0
- package/out/interface/controller/state/view/i-view.state.d.ts.map +1 -1
- package/out/interface/controller/state/view/index.d.ts +2 -0
- package/out/interface/controller/state/view/index.d.ts.map +1 -1
- package/out/interface/controller/state/view/index.js +2 -0
- package/out/interface/provider/i-grid-column.provider.d.ts +2 -1
- package/out/interface/provider/i-grid-column.provider.d.ts.map +1 -1
- package/out/interface/service/service/i-app-de.service.d.ts +9 -0
- package/out/interface/service/service/i-app-de.service.d.ts.map +1 -1
- package/out/interface/service/service/i-config.service.d.ts +20 -0
- package/out/interface/service/service/i-config.service.d.ts.map +1 -0
- package/out/interface/service/service/i-config.service.js +1 -0
- package/out/interface/service/service/index.d.ts +1 -0
- package/out/interface/service/service/index.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 +10 -4
- package/out/logic-scheduler/trigger/item-dyna-logic-trigger.d.ts.map +1 -1
- package/out/logic-scheduler/trigger/item-dyna-logic-trigger.js +1 -4
- package/out/model/data-entity/data-entity.js +2 -2
- package/out/register/helper/control-register.d.ts.map +1 -1
- package/out/register/helper/control-register.js +6 -1
- package/out/service/app-data-entity/app-data-entity.d.ts +10 -0
- package/out/service/app-data-entity/app-data-entity.d.ts.map +1 -1
- package/out/service/app-data-entity/app-data-entity.js +40 -13
- package/out/service/service/config/config.service.d.ts +43 -0
- package/out/service/service/config/config.service.d.ts.map +1 -0
- package/out/service/service/config/config.service.js +54 -0
- package/out/service/service/entity/de.service.d.ts +9 -0
- package/out/service/service/entity/de.service.d.ts.map +1 -1
- package/out/service/service/entity/de.service.js +2 -0
- package/out/service/service/index.d.ts +1 -0
- package/out/service/service/index.d.ts.map +1 -1
- package/out/service/service/index.js +1 -0
- package/out/service/vo/control.vo.d.ts.map +1 -1
- package/out/service/vo/control.vo.js +1 -5
- package/out/ui-action/provider/backend-ui-action-provider.d.ts.map +1 -1
- package/out/ui-action/provider/backend-ui-action-provider.js +5 -2
- package/out/ui-action/provider/ui-action-provider-base.d.ts +12 -1
- package/out/ui-action/provider/ui-action-provider-base.d.ts.map +1 -1
- package/out/ui-action/provider/ui-action-provider-base.js +55 -5
- package/out/ui-logic/ui-logic-context.d.ts +8 -0
- package/out/ui-logic/ui-logic-context.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-context.js +11 -0
- package/out/ui-logic/ui-logic-link/ui-logic-link.js +1 -1
- package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.js +5 -1
- package/out/ui-logic/utils/handle-src-val.d.ts.map +1 -1
- package/out/ui-logic/utils/handle-src-val.js +17 -4
- package/out/utils/error-handler/default-error-handler.d.ts +13 -0
- package/out/utils/error-handler/default-error-handler.d.ts.map +1 -0
- package/out/utils/error-handler/default-error-handler.js +36 -0
- package/out/utils/error-handler/error-handler-center.d.ts +41 -0
- package/out/utils/error-handler/error-handler-center.d.ts.map +1 -0
- package/out/utils/error-handler/error-handler-center.js +59 -0
- package/out/utils/error-handler/index.d.ts +3 -0
- package/out/utils/error-handler/index.d.ts.map +1 -0
- package/out/utils/error-handler/index.js +2 -0
- package/out/utils/index.d.ts +1 -0
- package/out/utils/index.d.ts.map +1 -1
- package/out/utils/index.js +1 -0
- package/out/utils/promise/promise.d.ts +15 -0
- package/out/utils/promise/promise.d.ts.map +1 -0
- package/out/utils/promise/promise.js +38 -0
- package/package.json +2 -2
- package/src/app-hub.ts +17 -0
- package/src/application.ts +20 -1
- package/src/command/app/open-app-view/open-app-view.ts +18 -5
- package/src/controller/common/control/md-control.controller.ts +5 -1
- package/src/controller/common/view/view.controller.ts +67 -0
- package/src/controller/control/dashboard/custom-dashboard.controller.ts +107 -0
- package/src/controller/control/dashboard/dashboard.controller.ts +2 -6
- package/src/controller/control/dashboard/index.ts +1 -0
- package/src/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.ts +32 -9
- package/src/controller/control/form/edit-form/edit-form.controller.ts +71 -3
- package/src/controller/control/form/edit-form/edit-form.service.ts +1 -1
- package/src/controller/control/form/form/form.controller.ts +2 -6
- package/src/controller/control/grid/grid/grid.controller.ts +5 -9
- package/src/controller/control/index.ts +2 -0
- package/src/controller/control/toolbar/toolbar.controllerr.ts +14 -8
- package/src/controller/control/tree/tree.service.ts +8 -9
- package/src/controller/control/tree-grid/index.ts +2 -0
- package/src/controller/control/tree-grid/tree-grid.controller.ts +6 -0
- package/src/controller/control/tree-grid/tree-grid.service.ts +12 -0
- package/src/controller/control/tree-grid-ex/index.ts +2 -0
- package/src/controller/control/tree-grid-ex/tree-grid-ex.controller.ts +283 -0
- package/src/controller/control/tree-grid-ex/tree-grid-ex.service.ts +171 -0
- package/src/controller/utils/event/controller-event.ts +16 -0
- package/src/controller/utils/view-msg/index.ts +1 -0
- package/src/controller/utils/view-msg/view-msg-controller.ts +250 -0
- package/src/de-logic/de-logic-context.ts +12 -0
- package/src/de-logic/de-logic-node/prepare-param-node/prepare-param-node.ts +7 -1
- package/src/de-logic/utils/handle-src-val.ts +23 -10
- package/src/engine/md-view.engine.ts +6 -4
- package/src/global/global-util/global-util.ts +15 -0
- package/src/interface/common/i-app-hub-service/i-app-hub-service.ts +10 -0
- package/src/interface/common/i-app-service/i-app-service.ts +10 -0
- package/src/interface/common/i-error-handler/i-error-handler.ts +16 -0
- package/src/interface/common/index.ts +1 -0
- package/src/interface/controller/common/index.ts +1 -0
- package/src/interface/controller/common/view-message/i-view-message.ts +42 -0
- package/src/interface/controller/controller/control/i-tree-grid-ex.controller.ts +20 -0
- package/src/interface/controller/controller/control/i-tree-grid.controller.ts +12 -0
- package/src/interface/controller/controller/control/index.ts +2 -0
- package/src/interface/controller/controller/control/portlet/i-portlet.controller.ts +8 -0
- package/src/interface/controller/event/control/i-tree-grid-ex.event.ts +12 -0
- package/src/interface/controller/event/control/i-tree-grid.event.ts +12 -0
- package/src/interface/controller/event/control/index.ts +2 -0
- package/src/interface/controller/event/view/i-tree-grid-ex-view.event.ts +12 -0
- package/src/interface/controller/event/view/i-tree-grid-view.event.ts +12 -0
- package/src/interface/controller/event/view/index.ts +2 -0
- package/src/interface/controller/state/control/i-tree-grid-ex.state.ts +56 -0
- package/src/interface/controller/state/control/i-tree-grid.state.ts +12 -0
- package/src/interface/controller/state/control/index.ts +2 -0
- package/src/interface/controller/state/view/i-edit-view.state.ts +10 -1
- package/src/interface/controller/state/view/i-tree-grid-ex-view.state.ts +12 -0
- package/src/interface/controller/state/view/i-tree-grid-view.state.ts +12 -0
- package/src/interface/controller/state/view/i-view.state.ts +9 -0
- package/src/interface/controller/state/view/index.ts +2 -0
- package/src/interface/provider/i-grid-column.provider.ts +2 -1
- package/src/interface/service/service/i-app-de.service.ts +10 -0
- package/src/interface/service/service/i-config.service.ts +20 -0
- package/src/interface/service/service/index.ts +1 -0
- package/src/logic-scheduler/executor/app-ui-logic-executor.ts +13 -4
- package/src/logic-scheduler/trigger/item-dyna-logic-trigger.ts +1 -4
- package/src/model/data-entity/data-entity.ts +2 -2
- package/src/register/helper/control-register.ts +6 -1
- package/src/service/app-data-entity/app-data-entity.ts +44 -13
- package/src/service/service/config/config.service.ts +65 -0
- package/src/service/service/entity/de.service.ts +15 -0
- package/src/service/service/index.ts +1 -0
- package/src/service/vo/control.vo.ts +1 -6
- package/src/ui-action/provider/backend-ui-action-provider.ts +5 -2
- package/src/ui-action/provider/ui-action-provider-base.ts +68 -6
- package/src/ui-logic/ui-logic-context.ts +12 -0
- package/src/ui-logic/ui-logic-link/ui-logic-link.ts +1 -1
- package/src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts +7 -1
- package/src/ui-logic/utils/handle-src-val.ts +20 -4
- package/src/utils/error-handler/default-error-handler.ts +40 -0
- package/src/utils/error-handler/error-handler-center.ts +61 -0
- package/src/utils/error-handler/index.ts +2 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/promise/promise.ts +41 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 事件处理工具
|
|
3
|
+
*
|
|
4
|
+
* @author lxm
|
|
5
|
+
* @date 2022-09-21 18:09:31
|
|
6
|
+
* @export
|
|
7
|
+
* @class ErrorHandler
|
|
8
|
+
*/
|
|
9
|
+
export class ErrorHandlerCenter {
|
|
10
|
+
constructor() {
|
|
11
|
+
/**
|
|
12
|
+
* 处理器集合
|
|
13
|
+
* @author lxm
|
|
14
|
+
* @date 2023-09-26 04:56:29
|
|
15
|
+
* @type {IErrorHandler[]}
|
|
16
|
+
*/
|
|
17
|
+
this.handlers = [];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* 注册处理器(后注册的优先级更高)
|
|
21
|
+
* @author lxm
|
|
22
|
+
* @date 2023-09-26 04:59:06
|
|
23
|
+
* @param {IErrorHandler} handler
|
|
24
|
+
*/
|
|
25
|
+
register(handler) {
|
|
26
|
+
this.handlers.unshift(handler);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* 处理单个报错
|
|
30
|
+
* @author lxm
|
|
31
|
+
* @date 2023-09-26 05:18:18
|
|
32
|
+
* @protected
|
|
33
|
+
* @param {unknown} error
|
|
34
|
+
*/
|
|
35
|
+
handleSingle(error) {
|
|
36
|
+
const find = this.handlers.find(item => {
|
|
37
|
+
return !!item.handle(error);
|
|
38
|
+
});
|
|
39
|
+
if (!find) {
|
|
40
|
+
ibiz.log.error('没有找到能处理该错误的处理器', error);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* 按顺序检测处理器,最先满足条件的处理该异常
|
|
45
|
+
* @author lxm
|
|
46
|
+
* @date 2023-09-26 05:01:08
|
|
47
|
+
* @param {unknown} error
|
|
48
|
+
*/
|
|
49
|
+
handle(error) {
|
|
50
|
+
if (error instanceof Array) {
|
|
51
|
+
error.forEach(item => {
|
|
52
|
+
this.handleSingle(item);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.handleSingle(error);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/error-handler/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
|
package/out/utils/index.d.ts
CHANGED
|
@@ -10,4 +10,5 @@ export * from './value-rule/value-rule';
|
|
|
10
10
|
export * from './script/index';
|
|
11
11
|
export { TextUtil } from './text-util/text-util';
|
|
12
12
|
export { RawValueUtil } from './raw-value-util/raw-value-util';
|
|
13
|
+
export { handleAllSettled } from './promise/promise';
|
|
13
14
|
//# sourceMappingURL=index.d.ts.map
|
package/out/utils/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,cAAc,yBAAyB,CAAC;AACxC,OAAO,EACL,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,yCAAyC,CAAC;AACjD,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,cAAc,yBAAyB,CAAC;AACxC,OAAO,EACL,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,yCAAyC,CAAC;AACjD,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/out/utils/index.js
CHANGED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 异步等待所有promise完成后才会结束异步
|
|
3
|
+
* 只返回成功的promise的返回值集合
|
|
4
|
+
* - 如果isThrow为true,有异常时抛出异常
|
|
5
|
+
* - 如果isThrow为false,有异常时用全局异常处理弹提示,逻辑不会中断
|
|
6
|
+
* @author lxm
|
|
7
|
+
* @date 2023-09-26 06:57:33
|
|
8
|
+
* @export
|
|
9
|
+
* @template T
|
|
10
|
+
* @param {(Iterable<T | PromiseLike<T>>)} values
|
|
11
|
+
* @param {boolean} [isThrow=true]
|
|
12
|
+
* @return {*} {Promise<Awaited<T>[]>}
|
|
13
|
+
*/
|
|
14
|
+
export declare function handleAllSettled<T>(values: Iterable<T | PromiseLike<T>>, isThrow?: boolean): Promise<Awaited<T>[]>;
|
|
15
|
+
//# sourceMappingURL=promise.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../src/utils/promise/promise.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,MAAM,EAAE,QAAQ,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EACpC,OAAO,UAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAwBvB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 异步等待所有promise完成后才会结束异步
|
|
3
|
+
* 只返回成功的promise的返回值集合
|
|
4
|
+
* - 如果isThrow为true,有异常时抛出异常
|
|
5
|
+
* - 如果isThrow为false,有异常时用全局异常处理弹提示,逻辑不会中断
|
|
6
|
+
* @author lxm
|
|
7
|
+
* @date 2023-09-26 06:57:33
|
|
8
|
+
* @export
|
|
9
|
+
* @template T
|
|
10
|
+
* @param {(Iterable<T | PromiseLike<T>>)} values
|
|
11
|
+
* @param {boolean} [isThrow=true]
|
|
12
|
+
* @return {*} {Promise<Awaited<T>[]>}
|
|
13
|
+
*/
|
|
14
|
+
export async function handleAllSettled(values, isThrow = true) {
|
|
15
|
+
const allResults = await Promise.allSettled(values);
|
|
16
|
+
const successResult = [];
|
|
17
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
18
|
+
const errorResult = [];
|
|
19
|
+
allResults.forEach(item => {
|
|
20
|
+
if (item.status === 'fulfilled') {
|
|
21
|
+
successResult.push(item.value);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
errorResult.push(item.reason);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
// 有报错时根据是否抛出处理,抛出就抛,不抛就拿全局的异常处理弹提示。
|
|
28
|
+
if (errorResult.length > 0) {
|
|
29
|
+
const error = errorResult.length === 1 ? errorResult[0] : errorResult;
|
|
30
|
+
if (isThrow) {
|
|
31
|
+
throw error;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
ibiz.util.error.handle(error);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return successResult;
|
|
38
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/runtime",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.29",
|
|
4
4
|
"description": "控制器包",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "out/index.js",
|
|
@@ -57,5 +57,5 @@
|
|
|
57
57
|
"qx-util": "^0.4.8",
|
|
58
58
|
"ramda": "^0.29.0"
|
|
59
59
|
},
|
|
60
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "ad1df38edba37a696e639c986b12087f72ead394"
|
|
61
61
|
}
|
package/src/app-hub.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { Application } from './application';
|
|
|
4
4
|
import { IAppHubService, ModelLoaderProvider } from './interface';
|
|
5
5
|
import { AppConfigService, Convert } from './hub';
|
|
6
6
|
import { HubController } from './controller';
|
|
7
|
+
import { ConfigService } from './service';
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* 运行时总集
|
|
@@ -31,6 +32,15 @@ export class AppHub implements IAppHubService {
|
|
|
31
32
|
*/
|
|
32
33
|
readonly controller = new HubController();
|
|
33
34
|
|
|
35
|
+
/**
|
|
36
|
+
* 基座级配置存储服务
|
|
37
|
+
*
|
|
38
|
+
* @author chitanda
|
|
39
|
+
* @date 2023-09-22 10:09:25
|
|
40
|
+
* @type {ConfigService}
|
|
41
|
+
*/
|
|
42
|
+
configCache!: ConfigService;
|
|
43
|
+
|
|
34
44
|
/**
|
|
35
45
|
* 应用总集
|
|
36
46
|
*
|
|
@@ -303,6 +313,13 @@ export class AppHub implements IAppHubService {
|
|
|
303
313
|
const app = new Application(appModel);
|
|
304
314
|
this.appMap.set(id, app);
|
|
305
315
|
await app.init();
|
|
316
|
+
if (!this.configCache) {
|
|
317
|
+
this.configCache = new ConfigService(
|
|
318
|
+
ibiz.env.appId,
|
|
319
|
+
'PSSysHub',
|
|
320
|
+
'Global',
|
|
321
|
+
);
|
|
322
|
+
}
|
|
306
323
|
return app;
|
|
307
324
|
}
|
|
308
325
|
|
package/src/application.ts
CHANGED
|
@@ -6,7 +6,12 @@ import {
|
|
|
6
6
|
IDEOPPriv,
|
|
7
7
|
IDEUILogic,
|
|
8
8
|
} from '@ibiz/model-core';
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
AuthorityService,
|
|
11
|
+
CodeListService,
|
|
12
|
+
ConfigService,
|
|
13
|
+
DEServiceUtil,
|
|
14
|
+
} from './service';
|
|
10
15
|
import { IAppService } from './interface';
|
|
11
16
|
|
|
12
17
|
/**
|
|
@@ -49,6 +54,15 @@ export class Application implements IAppService {
|
|
|
49
54
|
*/
|
|
50
55
|
readonly net: Net;
|
|
51
56
|
|
|
57
|
+
/**
|
|
58
|
+
* 应用级配置存储服务
|
|
59
|
+
*
|
|
60
|
+
* @author chitanda
|
|
61
|
+
* @date 2023-09-22 10:09:58
|
|
62
|
+
* @type {ConfigService}
|
|
63
|
+
*/
|
|
64
|
+
readonly configCache: ConfigService;
|
|
65
|
+
|
|
52
66
|
/**
|
|
53
67
|
* 应用实体服务工具对象
|
|
54
68
|
*
|
|
@@ -86,6 +100,11 @@ export class Application implements IAppService {
|
|
|
86
100
|
this.net = new Net({
|
|
87
101
|
baseURL: `${ibiz.env.baseUrl}/${model.appId}`,
|
|
88
102
|
});
|
|
103
|
+
this.configCache = new ConfigService(
|
|
104
|
+
model.appId!,
|
|
105
|
+
'PSSysApp',
|
|
106
|
+
model.codeName!,
|
|
107
|
+
);
|
|
89
108
|
this.deService = new DEServiceUtil(model);
|
|
90
109
|
this.codeList = new CodeListService(model);
|
|
91
110
|
this.authority = new AuthorityService(model);
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { ModelError, RuntimeError } from '@ibiz-template/core';
|
|
2
2
|
import { IAppRedirectView } from '@ibiz/model-core';
|
|
3
|
+
import { clone } from 'ramda';
|
|
3
4
|
import { IModalData, IOpenViewOptions, IViewConfig } from '../../../interface';
|
|
4
5
|
import { calcDeCodeNameById } from '../../../model';
|
|
5
6
|
import { openRedirectView } from '../../../utils';
|
|
7
|
+
import { Srfuf } from '../../../service';
|
|
6
8
|
|
|
7
9
|
/**
|
|
8
10
|
* 打开应用视图
|
|
@@ -32,20 +34,31 @@ export class OpenAppViewCommand {
|
|
|
32
34
|
*/
|
|
33
35
|
async exec(
|
|
34
36
|
appViewId: string,
|
|
35
|
-
|
|
37
|
+
_context: IContext,
|
|
36
38
|
params: IParams = {},
|
|
37
39
|
opts: IOpenViewOptions = {},
|
|
38
40
|
): Promise<IModalData | void> {
|
|
41
|
+
const context = clone(_context);
|
|
39
42
|
const appView = await ibiz.hub.config.view.get(appViewId!);
|
|
40
43
|
if (!appView) {
|
|
41
44
|
throw new RuntimeError(`应用视图[${appViewId}]不存在`);
|
|
42
45
|
}
|
|
43
46
|
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
if (
|
|
48
|
+
(context.srfkey || params.srfuf === Srfuf.CREATE) &&
|
|
49
|
+
appView.appDataEntityId
|
|
50
|
+
) {
|
|
46
51
|
const deName = calcDeCodeNameById(appView.appDataEntityId);
|
|
47
|
-
|
|
48
|
-
context.srfkey
|
|
52
|
+
// 识别上下文的srfkey并转成对应视图实体名称,然后置空srfkey
|
|
53
|
+
if (context.srfkey) {
|
|
54
|
+
context[deName] = context.srfkey;
|
|
55
|
+
context.srfkey = undefined;
|
|
56
|
+
}
|
|
57
|
+
// 识别参数的 srfuf=0 时为新建。置空和当前要打开视图同实体的主键,避免同上下文导致后一个页面识别为了编辑。然后置空srfuf
|
|
58
|
+
if (params.srfuf === Srfuf.CREATE) {
|
|
59
|
+
context[deName] = undefined;
|
|
60
|
+
delete params.srfuf;
|
|
61
|
+
}
|
|
49
62
|
}
|
|
50
63
|
|
|
51
64
|
if (appView.redirectView) {
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
} from '../../../interface';
|
|
11
11
|
import { calcDeCodeNameById } from '../../../model';
|
|
12
12
|
import { MDControlService, Srfuf } from '../../../service';
|
|
13
|
+
import { handleAllSettled } from '../../../utils';
|
|
13
14
|
import { ControllerEvent } from '../../utils';
|
|
14
15
|
import { ControlController } from './control.controller';
|
|
15
16
|
|
|
@@ -181,6 +182,9 @@ export class MDControlController<
|
|
|
181
182
|
* @date 2022-08-19 14:08:50
|
|
182
183
|
*/
|
|
183
184
|
async load(args: MDCtrlLoadParams = {}): Promise<IData[]> {
|
|
185
|
+
if (this.state.isSimple) {
|
|
186
|
+
return [];
|
|
187
|
+
}
|
|
184
188
|
await this.startLoading();
|
|
185
189
|
try {
|
|
186
190
|
// *初始加载需要重置分页
|
|
@@ -279,7 +283,7 @@ export class MDControlController<
|
|
|
279
283
|
let needRefresh = false;
|
|
280
284
|
try {
|
|
281
285
|
const deName = calcDeCodeNameById(this.model.appDataEntityId!);
|
|
282
|
-
await
|
|
286
|
+
await handleAllSettled(
|
|
283
287
|
data.map(async item => {
|
|
284
288
|
// 新建未保存的数据直接走后续删除处理逻辑
|
|
285
289
|
if (item.srfuf !== Srfuf.CREATE) {
|
|
@@ -14,6 +14,8 @@ import {
|
|
|
14
14
|
IUIActionResult,
|
|
15
15
|
IUILogicParams,
|
|
16
16
|
IViewEngine,
|
|
17
|
+
IViewMessage,
|
|
18
|
+
ModalParams,
|
|
17
19
|
} from '../../../interface';
|
|
18
20
|
import { SysUIActionTag } from '../../../constant';
|
|
19
21
|
import { convertNavData, Modal } from '../../../utils';
|
|
@@ -29,6 +31,7 @@ import {
|
|
|
29
31
|
getViewLogics,
|
|
30
32
|
} from '../../../model';
|
|
31
33
|
import { ViewLogicScheduler } from '../../../logic-scheduler';
|
|
34
|
+
import { ViewMsgController } from '../../utils/view-msg';
|
|
32
35
|
|
|
33
36
|
/**
|
|
34
37
|
* 视图控制器
|
|
@@ -107,6 +110,14 @@ export class ViewController<
|
|
|
107
110
|
|
|
108
111
|
layoutPanel?: IViewLayoutPanelController;
|
|
109
112
|
|
|
113
|
+
/**
|
|
114
|
+
* 视图消息控制器
|
|
115
|
+
* @author lxm
|
|
116
|
+
* @date 2023-09-20 08:20:23
|
|
117
|
+
* @type {ViewMsgController}
|
|
118
|
+
*/
|
|
119
|
+
viewMsgController?: ViewMsgController;
|
|
120
|
+
|
|
110
121
|
/**
|
|
111
122
|
* Creates an instance of ViewController.
|
|
112
123
|
* @author lxm
|
|
@@ -210,6 +221,7 @@ export class ViewController<
|
|
|
210
221
|
this.state.isLoading = false;
|
|
211
222
|
this.state.caption = this.model.caption!;
|
|
212
223
|
this.state.srfactiveviewdata = null;
|
|
224
|
+
this.state.viewMessages = {};
|
|
213
225
|
}
|
|
214
226
|
|
|
215
227
|
protected async onCreated(): Promise<void> {
|
|
@@ -267,6 +279,9 @@ export class ViewController<
|
|
|
267
279
|
}
|
|
268
280
|
}
|
|
269
281
|
|
|
282
|
+
// 初始化视图消息
|
|
283
|
+
this.initViewMsg();
|
|
284
|
+
|
|
270
285
|
// 执行视图引擎的doCreated
|
|
271
286
|
if (this.engines.length) {
|
|
272
287
|
await Promise.all(this.engines.map(engine => engine.onCreated()));
|
|
@@ -404,4 +419,56 @@ export class ViewController<
|
|
|
404
419
|
});
|
|
405
420
|
}
|
|
406
421
|
}
|
|
422
|
+
|
|
423
|
+
/**
|
|
424
|
+
* 初始化视图消息
|
|
425
|
+
* @author lxm
|
|
426
|
+
* @date 2023-09-20 09:19:20
|
|
427
|
+
*/
|
|
428
|
+
async initViewMsg(): Promise<void> {
|
|
429
|
+
const { appViewMsgGroupId } = this.model;
|
|
430
|
+
if (appViewMsgGroupId) {
|
|
431
|
+
this.state.viewMessages = { TOP: [], BOTTOM: [], BODY: [], POPUP: [] };
|
|
432
|
+
this.viewMsgController = new ViewMsgController(appViewMsgGroupId);
|
|
433
|
+
await this.viewMsgController.init(this.context);
|
|
434
|
+
const messages = await this.viewMsgController.calcViewMessages(
|
|
435
|
+
this.context,
|
|
436
|
+
this.params,
|
|
437
|
+
);
|
|
438
|
+
messages.forEach(message => {
|
|
439
|
+
if (['TOP', 'BOTTOM', 'BODY', 'POPUP'].includes(message.position!)) {
|
|
440
|
+
this.state.viewMessages[message.position!].push(message);
|
|
441
|
+
}
|
|
442
|
+
});
|
|
443
|
+
|
|
444
|
+
if (this.state.viewMessages.POPUP.length) {
|
|
445
|
+
this.alertViewMessage(this.state.viewMessages.POPUP);
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
/**
|
|
451
|
+
* 弹出视图消息,一个接一个弹
|
|
452
|
+
* @author lxm
|
|
453
|
+
* @date 2023-09-20 10:17:42
|
|
454
|
+
* @param {ViewMessage[]} messages
|
|
455
|
+
* @return {*} {Promise<void>}
|
|
456
|
+
*/
|
|
457
|
+
async alertViewMessage(messages: IViewMessage[]): Promise<void> {
|
|
458
|
+
const [message, ...rest] = messages;
|
|
459
|
+
const modalParams: ModalParams = {
|
|
460
|
+
title: message.title!,
|
|
461
|
+
desc: message.message,
|
|
462
|
+
};
|
|
463
|
+
if (message.messageType === 'WARN') {
|
|
464
|
+
await ibiz.modal.warning(modalParams);
|
|
465
|
+
} else if (message.messageType === 'ERROR') {
|
|
466
|
+
await ibiz.modal.error(modalParams);
|
|
467
|
+
} else {
|
|
468
|
+
await ibiz.modal.info(modalParams);
|
|
469
|
+
}
|
|
470
|
+
if (rest.length) {
|
|
471
|
+
this.alertViewMessage(rest);
|
|
472
|
+
}
|
|
473
|
+
}
|
|
407
474
|
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { IDashboard } from '@ibiz/model-core';
|
|
2
|
+
import { ConfigService } from '../../../service';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* 自定义数据看板部件控制器
|
|
6
|
+
* @author lxm
|
|
7
|
+
* @date 2023-07-07 03:27:29
|
|
8
|
+
* @export
|
|
9
|
+
* @class CustomDashboardController
|
|
10
|
+
*/
|
|
11
|
+
export class CustomDashboardController {
|
|
12
|
+
/**
|
|
13
|
+
* 自定义布局模型数据
|
|
14
|
+
*
|
|
15
|
+
* @author: zhujiamin
|
|
16
|
+
* @Date: 2023-09-20 16:42:36
|
|
17
|
+
*/
|
|
18
|
+
customModelData: IData[] = [];
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* 动态设计水平列数
|
|
22
|
+
*
|
|
23
|
+
* @author: zhujiamin
|
|
24
|
+
* @Date: 2023-09-20 16:43:39
|
|
25
|
+
*/
|
|
26
|
+
layoutColNum: number = 12;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* 动态设计单元格高度,80px
|
|
30
|
+
*
|
|
31
|
+
* @author: zhujiamin
|
|
32
|
+
* @Date: 2023-09-20 16:43:39
|
|
33
|
+
*/
|
|
34
|
+
layoutRowH: number = 80;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* 看板模型
|
|
38
|
+
*
|
|
39
|
+
* @author: zhujiamin
|
|
40
|
+
* @Date: 2023-09-20 16:43:39
|
|
41
|
+
*/
|
|
42
|
+
model: IDashboard | null = null;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* 应用配置存储服务
|
|
46
|
+
*
|
|
47
|
+
* @return {*}
|
|
48
|
+
* @author: zhujiamin
|
|
49
|
+
* @Date: 2023-09-22 18:07:42
|
|
50
|
+
*/
|
|
51
|
+
config: ConfigService;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Creates an instance of BaseController.
|
|
55
|
+
* @author lxm
|
|
56
|
+
* @date 2023-04-26 06:46:21
|
|
57
|
+
* @param {CTX} ctx 跨组件上下文环境,内部机制不暴露
|
|
58
|
+
*/
|
|
59
|
+
constructor(model: IDashboard) {
|
|
60
|
+
this.model = model;
|
|
61
|
+
this.config = new ConfigService(
|
|
62
|
+
model.appId!,
|
|
63
|
+
'dynadashboard',
|
|
64
|
+
`dashboard_${
|
|
65
|
+
this.model.appDataEntityId?.toLowerCase() || 'app'
|
|
66
|
+
}_${this.model.codeName?.toLowerCase()}`,
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* 加载自定义布局模型数据
|
|
72
|
+
*
|
|
73
|
+
* @author: zhujiamin
|
|
74
|
+
* @Date: 2023-09-20 16:22:49
|
|
75
|
+
*/
|
|
76
|
+
async loadCustomModelData(): Promise<IData[]> {
|
|
77
|
+
const res = await this.config.load();
|
|
78
|
+
if (res.model) {
|
|
79
|
+
this.customModelData = res.model;
|
|
80
|
+
}
|
|
81
|
+
if (res.colNum) {
|
|
82
|
+
this.layoutColNum = res.colNum;
|
|
83
|
+
}
|
|
84
|
+
if (res.rowH) {
|
|
85
|
+
this.layoutRowH = res.rowH;
|
|
86
|
+
}
|
|
87
|
+
return this.customModelData;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* 保存自定义布局模型数据
|
|
92
|
+
*
|
|
93
|
+
* @author: zhujiamin
|
|
94
|
+
* @Date: 2023-09-20 16:22:49
|
|
95
|
+
*/
|
|
96
|
+
async saveCustomModelData(model: IData[]): Promise<IData[]> {
|
|
97
|
+
const res = await this.config.save({
|
|
98
|
+
model,
|
|
99
|
+
colNum: this.layoutColNum,
|
|
100
|
+
rowH: this.layoutRowH,
|
|
101
|
+
});
|
|
102
|
+
if (res) {
|
|
103
|
+
this.customModelData = model;
|
|
104
|
+
}
|
|
105
|
+
return model;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
@@ -12,6 +12,7 @@ import {
|
|
|
12
12
|
IPortletContainerController,
|
|
13
13
|
} from '../../../interface';
|
|
14
14
|
import { getPortletProvider } from '../../../register';
|
|
15
|
+
import { handleAllSettled } from '../../../utils';
|
|
15
16
|
import { ControlController } from '../../common';
|
|
16
17
|
import { getOriginData } from '../../utils';
|
|
17
18
|
|
|
@@ -113,15 +114,10 @@ export class DashboardController
|
|
|
113
114
|
*/
|
|
114
115
|
async dataChangeNotify(data: IData): Promise<void> {
|
|
115
116
|
// 通知所有成员项去处理成员项相关逻辑
|
|
116
|
-
|
|
117
|
+
await handleAllSettled(
|
|
117
118
|
Object.values(this.portlets).map(async portlet => {
|
|
118
119
|
return portlet.dataChangeNotify(data);
|
|
119
120
|
}),
|
|
120
121
|
);
|
|
121
|
-
const rejectedValue = values.find(item => item.status === 'rejected');
|
|
122
|
-
if (rejectedValue) {
|
|
123
|
-
ibiz.log.error('dataChangeNotify报错', values);
|
|
124
|
-
throw (rejectedValue as PromiseRejectedResult).reason;
|
|
125
|
-
}
|
|
126
122
|
}
|
|
127
123
|
}
|
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
IPortletController,
|
|
4
4
|
IDashboardController,
|
|
5
5
|
IPortletContainerController,
|
|
6
|
+
DataChangeEvent,
|
|
6
7
|
} from '../../../../../interface';
|
|
7
8
|
import { calcLayoutHeightWidth, calcDynaClass } from '../../../../../model';
|
|
8
9
|
import { ControlVO } from '../../../../../service';
|
|
@@ -144,6 +145,26 @@ export class PortletPartController<T extends IDBPortletPart = IDBPortletPart>
|
|
|
144
145
|
return new PortletPartState();
|
|
145
146
|
}
|
|
146
147
|
|
|
148
|
+
/**
|
|
149
|
+
* 数据改变方法
|
|
150
|
+
* @param {DataChangeEvent} event
|
|
151
|
+
* @return {*}
|
|
152
|
+
* @author: zhujiamin
|
|
153
|
+
* @Date: 2023-09-22 17:39:44
|
|
154
|
+
*/
|
|
155
|
+
onDataChange(event: DataChangeEvent): void {
|
|
156
|
+
let data = event.data[0];
|
|
157
|
+
if (data && data instanceof ControlVO) {
|
|
158
|
+
data = data.getOrigin();
|
|
159
|
+
}
|
|
160
|
+
if (data) {
|
|
161
|
+
this.state.actionGroupState!.update(
|
|
162
|
+
data,
|
|
163
|
+
this.dashboard.view.model.appDataEntityId!,
|
|
164
|
+
);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
147
168
|
/**
|
|
148
169
|
* 初始化标题右侧界面行为按钮的状态
|
|
149
170
|
*
|
|
@@ -175,15 +196,7 @@ export class PortletPartController<T extends IDBPortletPart = IDBPortletPart>
|
|
|
175
196
|
// 实体门户视图监听视图数据变更,刷新界面行为组的状态。
|
|
176
197
|
const { appDataEntityId } = this.dashboard.view.model;
|
|
177
198
|
if (appDataEntityId) {
|
|
178
|
-
this.dashboard.view.evt.on('onDataChange',
|
|
179
|
-
let data = event.data[0];
|
|
180
|
-
if (data && data instanceof ControlVO) {
|
|
181
|
-
data = data.getOrigin();
|
|
182
|
-
}
|
|
183
|
-
if (data) {
|
|
184
|
-
this.state.actionGroupState!.update(data, appDataEntityId);
|
|
185
|
-
}
|
|
186
|
-
});
|
|
199
|
+
this.dashboard.view.evt.on('onDataChange', this.onDataChange);
|
|
187
200
|
}
|
|
188
201
|
}
|
|
189
202
|
|
|
@@ -243,4 +256,14 @@ export class PortletPartController<T extends IDBPortletPart = IDBPortletPart>
|
|
|
243
256
|
}
|
|
244
257
|
}
|
|
245
258
|
}
|
|
259
|
+
|
|
260
|
+
/**
|
|
261
|
+
* 销毁
|
|
262
|
+
* @author lxm
|
|
263
|
+
* @date 2023-04-25 11:08:54
|
|
264
|
+
*/
|
|
265
|
+
async destroyed(): Promise<void> {
|
|
266
|
+
ibiz.log.debug(`${this.model.codeName} onDestroyed`);
|
|
267
|
+
this.dashboard.view.evt.off('onDataChange', this.onDataChange);
|
|
268
|
+
}
|
|
246
269
|
}
|