@ibiz-template/runtime 0.7.41-alpha.124 → 0.7.41-alpha.126
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 +45309 -44911
- package/dist/index.system.min.js +1 -1
- package/out/application.d.ts +7 -0
- package/out/application.d.ts.map +1 -1
- package/out/application.js +21 -0
- package/out/controller/control/app-menu/app-menu.controller.js +1 -1
- package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-item/form-item.controller.js +1 -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 +1 -1
- package/out/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.js +1 -1
- package/out/controller/control/toolbar/toolbar.controller.js +1 -1
- package/out/controller/control/tree/tree.service.d.ts.map +1 -1
- package/out/controller/control/tree/tree.service.js +1 -1
- package/out/controller/utils/view-msg/view-msg-controller.d.ts.map +1 -1
- package/out/controller/utils/view-msg/view-msg-controller.js +1 -1
- package/out/de-logic/de-logic-context.d.ts +4 -13
- package/out/de-logic/de-logic-context.d.ts.map +1 -1
- package/out/de-logic/de-logic-context.js +2 -3
- package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts +15 -5
- package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.d.ts.map +1 -1
- package/out/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.js +3 -4
- package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts +2 -1
- package/out/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.d.ts.map +1 -1
- package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts +2 -1
- package/out/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.d.ts.map +1 -1
- package/out/de-logic/de-logic-link/de-logic-link.d.ts +6 -7
- package/out/de-logic/de-logic-link/de-logic-link.d.ts.map +1 -1
- package/out/de-logic/de-logic-link/de-logic-link.js +3 -4
- package/out/de-logic/de-logic-node/de-logic-node.d.ts +2 -1
- package/out/de-logic/de-logic-node/de-logic-node.d.ts.map +1 -1
- package/out/de-logic/de-logic-node/index.d.ts +1 -0
- package/out/de-logic/de-logic-node/index.d.ts.map +1 -1
- package/out/de-logic/de-logic-node/index.js +1 -0
- package/out/de-logic/de-logic.d.ts +31 -37
- package/out/de-logic/de-logic.d.ts.map +1 -1
- package/out/de-logic/de-logic.js +49 -98
- package/out/de-logic/index.d.ts +31 -40
- package/out/de-logic/index.d.ts.map +1 -1
- package/out/de-logic/index.js +57 -76
- package/out/de-logic/provider.d.ts +6 -0
- package/out/de-logic/provider.d.ts.map +1 -0
- package/out/de-logic/provider.js +25 -0
- package/out/install.d.ts.map +1 -1
- package/out/install.js +6 -0
- package/out/interface/api/common/i-api-de-logic-params.d.ts +9 -0
- package/out/interface/api/common/i-api-de-logic-params.d.ts.map +1 -0
- package/out/interface/api/common/i-api-logic-context.d.ts +83 -0
- package/out/interface/api/common/i-api-logic-context.d.ts.map +1 -0
- package/out/interface/api/common/i-api-logic-context.js +1 -0
- package/out/interface/api/common/i-api-logic-params.d.ts +27 -0
- package/out/interface/api/common/i-api-logic-params.d.ts.map +1 -0
- package/out/interface/api/common/i-api-logic-params.js +1 -0
- package/out/interface/api/common/i-api-ui-logic-params.d.ts +3 -21
- package/out/interface/api/common/i-api-ui-logic-params.d.ts.map +1 -1
- package/out/interface/api/common/index.d.ts +2 -0
- package/out/interface/api/common/index.d.ts.map +1 -1
- package/out/interface/api/controller/control/form-detail/i-api-form-detail.controller.d.ts +1 -1
- package/out/interface/common/i-logic-context/i-logic-context.d.ts +27 -0
- package/out/interface/common/i-logic-context/i-logic-context.d.ts.map +1 -0
- package/out/interface/common/i-logic-context/i-logic-context.js +1 -0
- package/out/interface/common/i-logic-link-cond/i-logic-link-cond.d.ts +18 -0
- package/out/interface/common/i-logic-link-cond/i-logic-link-cond.d.ts.map +1 -0
- package/out/interface/common/i-logic-link-cond/i-logic-link-cond.js +1 -0
- package/out/interface/common/index.d.ts +2 -1
- package/out/interface/common/index.d.ts.map +1 -1
- package/out/interface/de-logic/i-de-logic-context.d.ts +10 -0
- package/out/interface/de-logic/i-de-logic-context.d.ts.map +1 -0
- package/out/interface/de-logic/i-de-logic-context.js +1 -0
- package/out/interface/de-logic/i-de-logic-link-cond.d.ts +33 -0
- package/out/interface/de-logic/i-de-logic-link-cond.d.ts.map +1 -0
- package/out/interface/de-logic/i-de-logic-link-cond.js +1 -0
- package/out/interface/de-logic/i-de-logic-link.d.ts +43 -0
- package/out/interface/de-logic/i-de-logic-link.d.ts.map +1 -0
- package/out/interface/de-logic/i-de-logic-link.js +1 -0
- package/out/interface/de-logic/i-de-logic-node.d.ts +10 -0
- package/out/interface/de-logic/i-de-logic-node.d.ts.map +1 -0
- package/out/interface/de-logic/i-de-logic-node.js +1 -0
- package/out/interface/de-logic/i-de-logic-params.d.ts +10 -0
- package/out/interface/de-logic/i-de-logic-params.d.ts.map +1 -0
- package/out/interface/de-logic/i-de-logic-params.js +1 -0
- package/out/interface/de-logic/i-de-logic.d.ts +23 -0
- package/out/interface/de-logic/i-de-logic.d.ts.map +1 -0
- package/out/interface/de-logic/i-de-logic.js +1 -0
- package/out/interface/de-logic/index.d.ts +7 -0
- package/out/interface/de-logic/index.d.ts.map +1 -0
- package/out/interface/de-logic/index.js +1 -0
- package/out/interface/index.d.ts +1 -0
- package/out/interface/index.d.ts.map +1 -1
- package/out/interface/index.js +1 -0
- package/out/interface/provider/i-de-logic-node.provider.d.ts +29 -0
- package/out/interface/provider/i-de-logic-node.provider.d.ts.map +1 -0
- package/out/interface/provider/i-de-logic-node.provider.js +1 -0
- package/out/interface/provider/i-de-logic.provider.d.ts +22 -0
- package/out/interface/provider/i-de-logic.provider.d.ts.map +1 -0
- package/out/interface/provider/i-de-logic.provider.js +1 -0
- package/out/interface/provider/i-ui-action.provider.d.ts +2 -1
- package/out/interface/provider/i-ui-action.provider.d.ts.map +1 -1
- package/out/interface/provider/i-ui-logic-node.provider.d.ts +20 -14
- package/out/interface/provider/i-ui-logic-node.provider.d.ts.map +1 -1
- package/out/interface/provider/i-ui-logic.provider.d.ts +22 -0
- package/out/interface/provider/i-ui-logic.provider.d.ts.map +1 -0
- package/out/interface/provider/i-ui-logic.provider.js +1 -0
- package/out/interface/provider/index.d.ts +3 -0
- package/out/interface/provider/index.d.ts.map +1 -1
- package/out/interface/register/i-register-params.d.ts +29 -34
- package/out/interface/register/i-register-params.d.ts.map +1 -1
- package/out/interface/ui-logic/i-ui-logic-context.d.ts +8 -83
- package/out/interface/ui-logic/i-ui-logic-context.d.ts.map +1 -1
- package/out/interface/ui-logic/i-ui-logic-link-cond.d.ts +33 -0
- package/out/interface/ui-logic/i-ui-logic-link-cond.d.ts.map +1 -0
- package/out/interface/ui-logic/i-ui-logic-link-cond.js +1 -0
- package/out/interface/ui-logic/i-ui-logic-link.d.ts +43 -0
- package/out/interface/ui-logic/i-ui-logic-link.d.ts.map +1 -0
- package/out/interface/ui-logic/i-ui-logic-link.js +1 -0
- package/out/interface/ui-logic/i-ui-logic-node.d.ts +10 -0
- package/out/interface/ui-logic/i-ui-logic-node.d.ts.map +1 -0
- package/out/interface/ui-logic/i-ui-logic-node.js +1 -0
- package/out/interface/{common/i-ui-logic-params → ui-logic}/i-ui-logic-params.d.ts +3 -5
- package/out/interface/ui-logic/i-ui-logic-params.d.ts.map +1 -0
- package/out/interface/ui-logic/i-ui-logic-params.js +1 -0
- package/out/interface/ui-logic/i-ui-logic.d.ts +23 -0
- package/out/interface/ui-logic/i-ui-logic.d.ts.map +1 -0
- package/out/interface/ui-logic/i-ui-logic.js +1 -0
- package/out/interface/ui-logic/index.d.ts +5 -0
- package/out/interface/ui-logic/index.d.ts.map +1 -1
- package/out/locale/en/index.d.ts +21 -0
- package/out/locale/en/index.d.ts.map +1 -1
- package/out/locale/en/index.js +21 -0
- package/out/locale/zh-CN/index.d.ts +21 -0
- package/out/locale/zh-CN/index.d.ts.map +1 -1
- package/out/locale/zh-CN/index.js +21 -0
- package/out/register/custom-register.d.ts +54 -22
- package/out/register/custom-register.d.ts.map +1 -1
- package/out/register/custom-register.js +172 -78
- package/out/register/helper/app-menu-item-register.d.ts +2 -2
- package/out/register/helper/app-menu-item-register.d.ts.map +1 -1
- package/out/register/helper/app-menu-item-register.js +18 -10
- package/out/register/helper/control-register.js +2 -2
- package/out/register/helper/de-logic-node-register.d.ts +24 -0
- package/out/register/helper/de-logic-node-register.d.ts.map +1 -0
- package/out/register/helper/de-logic-node-register.js +50 -0
- package/out/register/helper/de-logic-register.d.ts +20 -0
- package/out/register/helper/de-logic-register.d.ts.map +1 -0
- package/out/register/helper/de-logic-register.js +41 -0
- package/out/register/helper/de-method-register.d.ts +1 -1
- package/out/register/helper/de-method-register.d.ts.map +1 -1
- package/out/register/helper/de-method-register.js +4 -4
- package/out/register/helper/editor-register.d.ts +2 -3
- package/out/register/helper/editor-register.d.ts.map +1 -1
- package/out/register/helper/editor-register.js +4 -6
- package/out/register/helper/form-detail-register.js +3 -3
- package/out/register/helper/grid-column-register.d.ts +3 -3
- package/out/register/helper/grid-column-register.d.ts.map +1 -1
- package/out/register/helper/grid-column-register.js +9 -9
- package/out/register/helper/index.d.ts +3 -0
- package/out/register/helper/index.d.ts.map +1 -1
- package/out/register/helper/index.js +3 -0
- package/out/register/helper/panel-item-register.js +4 -4
- package/out/register/helper/portlet-register.d.ts +3 -5
- package/out/register/helper/portlet-register.d.ts.map +1 -1
- package/out/register/helper/portlet-register.js +20 -19
- package/out/register/helper/toolbar-item-register.d.ts +5 -7
- package/out/register/helper/toolbar-item-register.d.ts.map +1 -1
- package/out/register/helper/toolbar-item-register.js +24 -16
- package/out/register/helper/ui-action-register.js +2 -2
- package/out/register/helper/ui-logic-node-register.d.ts +13 -9
- package/out/register/helper/ui-logic-node-register.d.ts.map +1 -1
- package/out/register/helper/ui-logic-node-register.js +51 -17
- package/out/register/helper/ui-logic-register.d.ts +20 -0
- package/out/register/helper/ui-logic-register.d.ts.map +1 -0
- package/out/register/helper/ui-logic-register.js +41 -0
- package/out/register/helper/view-register.d.ts.map +1 -1
- package/out/register/helper/view-register.js +14 -0
- package/out/service/service/entity/method/de-action.d.ts.map +1 -1
- package/out/service/service/entity/method/de-action.js +1 -1
- package/out/ui-logic/index.d.ts +5 -10
- package/out/ui-logic/index.d.ts.map +1 -1
- package/out/ui-logic/index.js +12 -14
- package/out/ui-logic/provider.d.ts +6 -0
- package/out/ui-logic/provider.d.ts.map +1 -0
- package/out/ui-logic/provider.js +32 -0
- package/out/ui-logic/ui-logic-context.d.ts +1 -1
- package/out/ui-logic/ui-logic-context.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts +16 -5
- package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.js +3 -4
- package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts +2 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts +2 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts +6 -8
- package/out/ui-logic/ui-logic-link/ui-logic-link.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-link/ui-logic-link.js +3 -5
- package/out/ui-logic/ui-logic-node/pf-plugin-node/pf-plugin-node.js +3 -3
- package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts +9 -14
- package/out/ui-logic/ui-logic-node/ui-logic-node.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-node/ui-logic-node.js +2 -4
- package/out/ui-logic/ui-logic.d.ts +27 -36
- package/out/ui-logic/ui-logic.d.ts.map +1 -1
- package/out/ui-logic/ui-logic.js +35 -108
- package/out/utils/dr-ctrl-util/index.d.ts.map +1 -1
- package/out/utils/dr-ctrl-util/index.js +1 -1
- package/package.json +2 -2
- package/src/application.ts +23 -0
- package/src/controller/control/app-menu/app-menu.controller.ts +1 -1
- package/src/controller/control/form/form-detail/form-item/form-item.controller.ts +0 -1
- package/src/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.ts +0 -1
- package/src/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.ts +0 -1
- package/src/controller/control/toolbar/toolbar.controller.ts +1 -1
- package/src/controller/control/tree/tree.service.ts +1 -0
- package/src/controller/utils/view-msg/view-msg-controller.ts +7 -1
- package/src/de-logic/de-logic-context.ts +4 -16
- package/src/de-logic/de-logic-link/de-logic-link-cond/de-logic-link-cond.ts +17 -5
- package/src/de-logic/de-logic-link/de-logic-link-group-cond/de-logic-link-group-cond.ts +5 -1
- package/src/de-logic/de-logic-link/de-logic-link-single-cond/de-logic-link-single-cond.ts +5 -1
- package/src/de-logic/de-logic-link/de-logic-link.ts +6 -6
- package/src/de-logic/de-logic-node/de-logic-node.ts +2 -1
- package/src/de-logic/de-logic-node/index.ts +1 -0
- package/src/de-logic/de-logic.ts +60 -123
- package/src/de-logic/index.ts +66 -85
- package/src/de-logic/provider.ts +83 -0
- package/src/install.ts +6 -0
- package/src/interface/api/common/i-api-de-logic-params.ts +8 -0
- package/src/interface/api/common/i-api-logic-context.ts +83 -0
- package/src/interface/api/common/i-api-logic-params.ts +29 -0
- package/src/interface/api/common/i-api-ui-logic-params.ts +3 -24
- package/src/interface/api/common/index.ts +2 -0
- package/src/interface/api/controller/control/form-detail/i-api-form-detail.controller.ts +1 -1
- package/src/interface/common/i-logic-context/i-logic-context.ts +27 -0
- package/src/interface/common/i-logic-link-cond/i-logic-link-cond.ts +18 -0
- package/src/interface/common/index.ts +2 -1
- package/src/interface/de-logic/i-de-logic-context.ts +9 -0
- package/src/interface/de-logic/i-de-logic-link-cond.ts +33 -0
- package/src/interface/de-logic/i-de-logic-link.ts +47 -0
- package/src/interface/de-logic/i-de-logic-node.ts +9 -0
- package/src/interface/de-logic/i-de-logic-params.ts +9 -0
- package/src/interface/de-logic/i-de-logic.ts +23 -0
- package/src/interface/de-logic/index.ts +10 -0
- package/src/interface/index.ts +1 -0
- package/src/interface/provider/i-de-logic-node.provider.ts +29 -0
- package/src/interface/provider/i-de-logic.provider.ts +22 -0
- package/src/interface/provider/i-ui-action.provider.ts +2 -1
- package/src/interface/provider/i-ui-logic-node.provider.ts +20 -14
- package/src/interface/provider/i-ui-logic.provider.ts +22 -0
- package/src/interface/provider/index.ts +3 -0
- package/src/interface/register/i-register-params.ts +49 -35
- package/src/interface/ui-logic/i-ui-logic-context.ts +9 -95
- package/src/interface/ui-logic/i-ui-logic-link-cond.ts +33 -0
- package/src/interface/ui-logic/i-ui-logic-link.ts +47 -0
- package/src/interface/ui-logic/i-ui-logic-node.ts +9 -0
- package/src/interface/{common/i-ui-logic-params → ui-logic}/i-ui-logic-params.ts +3 -5
- package/src/interface/ui-logic/i-ui-logic.ts +23 -0
- package/src/interface/ui-logic/index.ts +9 -0
- package/src/locale/en/index.ts +38 -0
- package/src/locale/zh-CN/index.ts +36 -0
- package/src/register/custom-register.ts +184 -82
- package/src/register/helper/app-menu-item-register.ts +26 -13
- package/src/register/helper/control-register.ts +2 -2
- package/src/register/helper/de-logic-node-register.ts +76 -0
- package/src/register/helper/de-logic-register.ts +63 -0
- package/src/register/helper/de-method-register.ts +4 -4
- package/src/register/helper/editor-register.ts +4 -7
- package/src/register/helper/form-detail-register.ts +3 -3
- package/src/register/helper/grid-column-register.ts +9 -9
- package/src/register/helper/index.ts +3 -0
- package/src/register/helper/panel-item-register.ts +4 -4
- package/src/register/helper/portlet-register.ts +23 -22
- package/src/register/helper/toolbar-item-register.ts +32 -19
- package/src/register/helper/ui-action-register.ts +2 -2
- package/src/register/helper/ui-logic-node-register.ts +79 -25
- package/src/register/helper/ui-logic-register.ts +63 -0
- package/src/register/helper/view-register.ts +15 -0
- package/src/service/service/entity/method/de-action.ts +7 -1
- package/src/ui-logic/index.ts +17 -16
- package/src/ui-logic/provider.ts +122 -0
- package/src/ui-logic/ui-logic-context.ts +1 -1
- package/src/ui-logic/ui-logic-link/ui-logic-link-cond/ui-logic-link-cond.ts +18 -5
- package/src/ui-logic/ui-logic-link/ui-logic-link-group-cond/ui-logic-link-group-cond.ts +5 -1
- package/src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts +5 -1
- package/src/ui-logic/ui-logic-link/ui-logic-link.ts +6 -7
- package/src/ui-logic/ui-logic-node/pf-plugin-node/pf-plugin-node.ts +3 -3
- package/src/ui-logic/ui-logic-node/ui-logic-node.ts +9 -14
- package/src/ui-logic/ui-logic.ts +46 -141
- package/src/utils/dr-ctrl-util/index.ts +7 -1
- package/out/interface/common/i-ui-logic-params/i-ui-logic-params.d.ts.map +0 -1
- /package/out/interface/{common/i-ui-logic-params/i-ui-logic-params.js → api/common/i-api-de-logic-params.js} +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IAppView } from '@ibiz/model-core';
|
|
2
2
|
import { IViewProvider } from '../../interface';
|
|
3
3
|
import { getPluginRegisterKey } from './common-register';
|
|
4
|
+
import { CustomRegister } from '../custom-register';
|
|
4
5
|
|
|
5
6
|
/** 视图适配器前缀 */
|
|
6
7
|
export const VIEW_PROVIDER_PREFIX = 'VIEW';
|
|
@@ -38,6 +39,20 @@ export async function getViewProvider(
|
|
|
38
39
|
let provider: IViewProvider | undefined;
|
|
39
40
|
const { viewType, viewStyle, sysPFPluginId, appId } =
|
|
40
41
|
model as Required<IAppView>;
|
|
42
|
+
// 找自定义注册的适配器
|
|
43
|
+
const registerKey = CustomRegister.getRegisterKey(VIEW_PROVIDER_PREFIX, {
|
|
44
|
+
mainModel: model,
|
|
45
|
+
});
|
|
46
|
+
provider = getProvider(registerKey);
|
|
47
|
+
if (!provider) {
|
|
48
|
+
ibiz.log.debug(
|
|
49
|
+
ibiz.i18n.t('runtime.register.helper.viewCustomRegistration', {
|
|
50
|
+
registerKey,
|
|
51
|
+
}),
|
|
52
|
+
);
|
|
53
|
+
} else {
|
|
54
|
+
return provider;
|
|
55
|
+
}
|
|
41
56
|
|
|
42
57
|
// 找插件适配器
|
|
43
58
|
if (sysPFPluginId) {
|
|
@@ -111,7 +111,13 @@ export class DEActionMethod extends Method {
|
|
|
111
111
|
ibiz.i18n.t('runtime.service.lackEntityLogic'),
|
|
112
112
|
);
|
|
113
113
|
}
|
|
114
|
-
result = await execDELogicAction(
|
|
114
|
+
result = await execDELogicAction(
|
|
115
|
+
deLogic,
|
|
116
|
+
this.entity,
|
|
117
|
+
context,
|
|
118
|
+
data,
|
|
119
|
+
params,
|
|
120
|
+
);
|
|
115
121
|
} else {
|
|
116
122
|
if (data) {
|
|
117
123
|
if (!this.isLocalMode) {
|
package/src/ui-logic/index.ts
CHANGED
|
@@ -1,25 +1,20 @@
|
|
|
1
1
|
import { RuntimeError } from '@ibiz-template/core';
|
|
2
2
|
import { IDEUILogic } from '@ibiz/model-core';
|
|
3
|
-
import { IUILogicParams } from '../interface';
|
|
4
|
-
import {
|
|
3
|
+
import { IUILogicParams, IUILogicProvider } from '../interface';
|
|
4
|
+
import { getUILogicProvider } from '../register';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* 界面逻辑实例缓存
|
|
8
8
|
*/
|
|
9
|
-
const uiLogicMap: WeakMap<IDEUILogic,
|
|
9
|
+
const uiLogicMap: WeakMap<IDEUILogic, IUILogicProvider> = new Map();
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* @author chitanda
|
|
15
|
-
* @date 2023-02-09 11:02:23
|
|
12
|
+
* @description 执行界面逻辑
|
|
16
13
|
* @export
|
|
17
|
-
* @param {
|
|
18
|
-
* @param {
|
|
19
|
-
* @param {
|
|
20
|
-
* @
|
|
21
|
-
* @param {IParams} [opt]
|
|
22
|
-
* @return {*} {Promise<unknown>}
|
|
14
|
+
* @param {string} deUILogicId 界面逻辑标识
|
|
15
|
+
* @param {string} appDataEntityId 应用实体标识
|
|
16
|
+
* @param {IUILogicParams} parameters 界面逻辑参数
|
|
17
|
+
* @returns {*} {Promise<unknown>}
|
|
23
18
|
*/
|
|
24
19
|
export async function execUILogic(
|
|
25
20
|
deUILogicId: string,
|
|
@@ -28,7 +23,11 @@ export async function execUILogic(
|
|
|
28
23
|
): Promise<unknown> {
|
|
29
24
|
const app = ibiz.hub.getApp(parameters.context.srfappid);
|
|
30
25
|
const deUILogic = await app.getDEUILogic(deUILogicId, appDataEntityId);
|
|
31
|
-
|
|
26
|
+
const appDataEntity = await ibiz.hub.getAppDataEntity(
|
|
27
|
+
appDataEntityId,
|
|
28
|
+
parameters.context.srfappid,
|
|
29
|
+
);
|
|
30
|
+
if (!deUILogic || !appDataEntity) {
|
|
32
31
|
throw new RuntimeError(
|
|
33
32
|
ibiz.i18n.t('runtime.uiLogic.interfaceLogic', {
|
|
34
33
|
appDataEntityId,
|
|
@@ -37,7 +36,9 @@ export async function execUILogic(
|
|
|
37
36
|
);
|
|
38
37
|
}
|
|
39
38
|
if (!uiLogicMap.has(deUILogic)) {
|
|
40
|
-
|
|
39
|
+
const provider = getUILogicProvider(deUILogic, appDataEntity);
|
|
40
|
+
await provider.init();
|
|
41
|
+
uiLogicMap.set(deUILogic, provider);
|
|
41
42
|
}
|
|
42
43
|
ibiz.log.debug(
|
|
43
44
|
ibiz.i18n.t('runtime.uiLogic.startExecutingInterfaceLogic', {
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { IAppDataEntity, IDEUILogic, IDEUILogicNode } from '@ibiz/model-core';
|
|
2
|
+
import {
|
|
3
|
+
registerUILogicProvider,
|
|
4
|
+
registerUILogicNodeProvider,
|
|
5
|
+
} from '../register';
|
|
6
|
+
import { UILogic } from './ui-logic';
|
|
7
|
+
import {
|
|
8
|
+
EndNode,
|
|
9
|
+
StartNode,
|
|
10
|
+
MsgBoxNode,
|
|
11
|
+
DataSetNode,
|
|
12
|
+
DEActionNode,
|
|
13
|
+
PFPluginNode,
|
|
14
|
+
RawJSCodeNode,
|
|
15
|
+
SortParamNode,
|
|
16
|
+
BindParamNode,
|
|
17
|
+
CopyParamNode,
|
|
18
|
+
RenewParamNode,
|
|
19
|
+
ResetParamNode,
|
|
20
|
+
DebugParamNode,
|
|
21
|
+
DEUIActionNode,
|
|
22
|
+
AppendParamNode,
|
|
23
|
+
PrepareJSParamNode,
|
|
24
|
+
ExecuteDELogicNode,
|
|
25
|
+
ThrowExceptionNode,
|
|
26
|
+
ViewCtrlInvokeNode,
|
|
27
|
+
ViewCtrlFireEventNode,
|
|
28
|
+
} from './ui-logic-node';
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* @description 注册界面逻辑适配器
|
|
32
|
+
* @export
|
|
33
|
+
*/
|
|
34
|
+
export function presetUILogicProvider(): void {
|
|
35
|
+
// 注册默认界面逻辑
|
|
36
|
+
registerUILogicProvider(
|
|
37
|
+
'DEFAULT',
|
|
38
|
+
(uiLogic: IDEUILogic, entity: IAppDataEntity) =>
|
|
39
|
+
new UILogic(uiLogic, entity),
|
|
40
|
+
);
|
|
41
|
+
// 注册界面逻辑节点
|
|
42
|
+
registerUILogicNodeProvider(
|
|
43
|
+
'BEGIN',
|
|
44
|
+
(node: IDEUILogicNode) => new StartNode(node),
|
|
45
|
+
);
|
|
46
|
+
registerUILogicNodeProvider(
|
|
47
|
+
'END',
|
|
48
|
+
(node: IDEUILogicNode) => new EndNode(node),
|
|
49
|
+
);
|
|
50
|
+
registerUILogicNodeProvider(
|
|
51
|
+
'DEACTION',
|
|
52
|
+
(node: IDEUILogicNode) => new DEActionNode(node),
|
|
53
|
+
);
|
|
54
|
+
registerUILogicNodeProvider(
|
|
55
|
+
'DEUIACTION',
|
|
56
|
+
(node: IDEUILogicNode) => new DEUIActionNode(node),
|
|
57
|
+
);
|
|
58
|
+
registerUILogicNodeProvider(
|
|
59
|
+
'PREPAREJSPARAM',
|
|
60
|
+
(node: IDEUILogicNode) => new PrepareJSParamNode(node),
|
|
61
|
+
);
|
|
62
|
+
registerUILogicNodeProvider(
|
|
63
|
+
'RESETPARAM',
|
|
64
|
+
(node: IDEUILogicNode) => new ResetParamNode(node),
|
|
65
|
+
);
|
|
66
|
+
registerUILogicNodeProvider(
|
|
67
|
+
'COPYPARAM',
|
|
68
|
+
(node: IDEUILogicNode) => new CopyParamNode(node),
|
|
69
|
+
);
|
|
70
|
+
registerUILogicNodeProvider(
|
|
71
|
+
'BINDPARAM',
|
|
72
|
+
(node: IDEUILogicNode) => new BindParamNode(node),
|
|
73
|
+
);
|
|
74
|
+
registerUILogicNodeProvider(
|
|
75
|
+
'VIEWCTRLINVOKE',
|
|
76
|
+
(node: IDEUILogicNode) => new ViewCtrlInvokeNode(node),
|
|
77
|
+
);
|
|
78
|
+
registerUILogicNodeProvider(
|
|
79
|
+
'MSGBOX',
|
|
80
|
+
(node: IDEUILogicNode) => new MsgBoxNode(node),
|
|
81
|
+
);
|
|
82
|
+
registerUILogicNodeProvider(
|
|
83
|
+
'DEBUGPARAM',
|
|
84
|
+
(node: IDEUILogicNode) => new DebugParamNode(node),
|
|
85
|
+
);
|
|
86
|
+
registerUILogicNodeProvider(
|
|
87
|
+
'APPENDPARAM',
|
|
88
|
+
(node: IDEUILogicNode) => new AppendParamNode(node),
|
|
89
|
+
);
|
|
90
|
+
registerUILogicNodeProvider(
|
|
91
|
+
'SORTPARAM',
|
|
92
|
+
(node: IDEUILogicNode) => new SortParamNode(node),
|
|
93
|
+
);
|
|
94
|
+
registerUILogicNodeProvider(
|
|
95
|
+
'RENEWPARAM',
|
|
96
|
+
(node: IDEUILogicNode) => new RenewParamNode(node),
|
|
97
|
+
);
|
|
98
|
+
registerUILogicNodeProvider(
|
|
99
|
+
'DEDATASET',
|
|
100
|
+
(node: IDEUILogicNode) => new DataSetNode(node),
|
|
101
|
+
);
|
|
102
|
+
registerUILogicNodeProvider(
|
|
103
|
+
'THROWEXCEPTION',
|
|
104
|
+
(node: IDEUILogicNode) => new ThrowExceptionNode(node),
|
|
105
|
+
);
|
|
106
|
+
registerUILogicNodeProvider(
|
|
107
|
+
'VIEWCTRLFIREEVENT',
|
|
108
|
+
(node: IDEUILogicNode) => new ViewCtrlFireEventNode(node),
|
|
109
|
+
);
|
|
110
|
+
registerUILogicNodeProvider(
|
|
111
|
+
'DELOGIC',
|
|
112
|
+
(node: IDEUILogicNode) => new ExecuteDELogicNode(node),
|
|
113
|
+
);
|
|
114
|
+
registerUILogicNodeProvider(
|
|
115
|
+
'PFPLUGIN',
|
|
116
|
+
(node: IDEUILogicNode) => new PFPluginNode(node),
|
|
117
|
+
);
|
|
118
|
+
registerUILogicNodeProvider(
|
|
119
|
+
'RAWJSCODE',
|
|
120
|
+
(node: IDEUILogicNode) => new RawJSCodeNode(node),
|
|
121
|
+
);
|
|
122
|
+
}
|
|
@@ -1,9 +1,22 @@
|
|
|
1
|
+
import { IUILogicLinkCond } from '../../../interface';
|
|
2
|
+
import { UILogicContext } from '../../ui-logic-context';
|
|
3
|
+
|
|
1
4
|
/**
|
|
2
|
-
* 界面逻辑连接条件
|
|
3
|
-
*
|
|
4
|
-
* @author chitanda
|
|
5
|
-
* @date 2023-02-10 15:02:28
|
|
5
|
+
* @description 界面逻辑连接条件
|
|
6
6
|
* @export
|
|
7
|
+
* @abstract
|
|
7
8
|
* @class UILogicLinkCond
|
|
9
|
+
* @implements {IUILogicLinkCond}
|
|
8
10
|
*/
|
|
9
|
-
export abstract class UILogicLinkCond {
|
|
11
|
+
export abstract class UILogicLinkCond implements IUILogicLinkCond {
|
|
12
|
+
/**
|
|
13
|
+
* @description 条件判断
|
|
14
|
+
* @abstract
|
|
15
|
+
* @param {UILogicContext} ctx 界面逻辑执行上下文
|
|
16
|
+
* @param {IContext} context 上下文
|
|
17
|
+
* @param {IData} data 逻辑数据
|
|
18
|
+
* @returns {*} {boolean}
|
|
19
|
+
* @memberof UILogicLinkCond
|
|
20
|
+
*/
|
|
21
|
+
abstract test(ctx: UILogicContext, context: IContext, data: IData): boolean;
|
|
22
|
+
}
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
import { UILogicContext } from '../../ui-logic-context';
|
|
7
7
|
import { UILogicLinkCond } from '../ui-logic-link-cond/ui-logic-link-cond';
|
|
8
8
|
import { UILogicLinkSingleCond } from '../ui-logic-link-single-cond/ui-logic-link-single-cond';
|
|
9
|
+
import { IUILogicLinkGroupCond } from '../../../interface';
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* 界面逻辑连接条件组
|
|
@@ -16,7 +17,10 @@ import { UILogicLinkSingleCond } from '../ui-logic-link-single-cond/ui-logic-lin
|
|
|
16
17
|
* @class UILogicLinkGroupCond
|
|
17
18
|
* @extends {UILogicLinkCond}
|
|
18
19
|
*/
|
|
19
|
-
export class UILogicLinkGroupCond
|
|
20
|
+
export class UILogicLinkGroupCond
|
|
21
|
+
extends UILogicLinkCond
|
|
22
|
+
implements IUILogicLinkGroupCond
|
|
23
|
+
{
|
|
20
24
|
/**
|
|
21
25
|
* 操作标识
|
|
22
26
|
*
|
|
@@ -5,6 +5,7 @@ import { testCond } from '../../../utils';
|
|
|
5
5
|
import { UILogicContext } from '../../ui-logic-context';
|
|
6
6
|
import { handleSrcVal } from '../../utils';
|
|
7
7
|
import { UILogicLinkCond } from '../ui-logic-link-cond/ui-logic-link-cond';
|
|
8
|
+
import { IUILogicLinkSingleCond } from '../../../interface';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* 界面逻辑连接条件项
|
|
@@ -15,7 +16,10 @@ import { UILogicLinkCond } from '../ui-logic-link-cond/ui-logic-link-cond';
|
|
|
15
16
|
* @class UILogicLinkSingleCond
|
|
16
17
|
* @extends {UILogicLinkCond}
|
|
17
18
|
*/
|
|
18
|
-
export class UILogicLinkSingleCond
|
|
19
|
+
export class UILogicLinkSingleCond
|
|
20
|
+
extends UILogicLinkCond
|
|
21
|
+
implements IUILogicLinkSingleCond
|
|
22
|
+
{
|
|
19
23
|
/**
|
|
20
24
|
* 源参数
|
|
21
25
|
*
|
|
@@ -3,6 +3,7 @@ import { IDEUILogicLink } from '@ibiz/model-core';
|
|
|
3
3
|
import { UILogicContext } from '../ui-logic-context';
|
|
4
4
|
import { UILogicNode } from '../ui-logic-node/ui-logic-node';
|
|
5
5
|
import { UILogicLinkGroupCond } from './ui-logic-link-group-cond/ui-logic-link-group-cond';
|
|
6
|
+
import { IUILogicLink, IUILogicLinkGroupCond } from '../../interface';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* 界面逻辑连接
|
|
@@ -12,7 +13,7 @@ import { UILogicLinkGroupCond } from './ui-logic-link-group-cond/ui-logic-link-g
|
|
|
12
13
|
* @export
|
|
13
14
|
* @class UILogicLink
|
|
14
15
|
*/
|
|
15
|
-
export class UILogicLink {
|
|
16
|
+
export class UILogicLink implements IUILogicLink {
|
|
16
17
|
/**
|
|
17
18
|
* 源节点
|
|
18
19
|
*
|
|
@@ -32,13 +33,11 @@ export class UILogicLink {
|
|
|
32
33
|
dstNode: UILogicNode | null = null;
|
|
33
34
|
|
|
34
35
|
/**
|
|
35
|
-
* 连接条件组
|
|
36
|
-
*
|
|
37
|
-
* @
|
|
38
|
-
* @date 2023-02-15 17:02:49
|
|
39
|
-
* @type {(UILogicLinkGroupCond | null)}
|
|
36
|
+
* @description 连接条件组
|
|
37
|
+
* @type {(IUILogicLinkGroupCond | null)}
|
|
38
|
+
* @memberof UILogicLink
|
|
40
39
|
*/
|
|
41
|
-
groupCond:
|
|
40
|
+
groupCond: IUILogicLinkGroupCond | null = null;
|
|
42
41
|
|
|
43
42
|
/**
|
|
44
43
|
* Creates an instance of UILogicLink.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IDEUIPFPluginLogic } from '@ibiz/model-core';
|
|
2
2
|
import { UILogicContext } from '../../ui-logic-context';
|
|
3
3
|
import { UILogicNode } from '../ui-logic-node';
|
|
4
|
-
import {
|
|
4
|
+
import { getUILogicNodePluginProvider } from '../../../register';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* 前端插件节点
|
|
@@ -22,9 +22,9 @@ export class PFPluginNode extends UILogicNode {
|
|
|
22
22
|
sysPFPluginId: this.model.sysPFPluginId,
|
|
23
23
|
}),
|
|
24
24
|
);
|
|
25
|
-
const provider = await
|
|
25
|
+
const provider = await getUILogicNodePluginProvider(this.model);
|
|
26
26
|
if (provider) {
|
|
27
|
-
await provider.exec(
|
|
27
|
+
await provider.exec(ctx);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IDEUILogicNode } from '@ibiz/model-core';
|
|
2
2
|
import { UILogicContext } from '../ui-logic-context';
|
|
3
3
|
import { UILogicLink } from '../ui-logic-link/ui-logic-link';
|
|
4
|
+
import { IUILogicNode } from '../../interface';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* 逻辑节点
|
|
@@ -10,7 +11,7 @@ import { UILogicLink } from '../ui-logic-link/ui-logic-link';
|
|
|
10
11
|
* @export
|
|
11
12
|
* @class UILogicNode
|
|
12
13
|
*/
|
|
13
|
-
export abstract class UILogicNode {
|
|
14
|
+
export abstract class UILogicNode implements IUILogicNode {
|
|
14
15
|
/**
|
|
15
16
|
* 节点连接
|
|
16
17
|
*
|
|
@@ -22,10 +23,8 @@ export abstract class UILogicNode {
|
|
|
22
23
|
|
|
23
24
|
/**
|
|
24
25
|
* Creates an instance of UILogicNode.
|
|
25
|
-
*
|
|
26
|
-
* @
|
|
27
|
-
* @date 2023-02-08 16:02:19
|
|
28
|
-
* @param {UILogicNodeModel} model
|
|
26
|
+
* @param {IDEUILogicNode} model
|
|
27
|
+
* @memberof UILogicNode
|
|
29
28
|
*/
|
|
30
29
|
constructor(public model: IDEUILogicNode) {
|
|
31
30
|
this.links = (model.deuilogicLinks || []).map(
|
|
@@ -34,15 +33,11 @@ export abstract class UILogicNode {
|
|
|
34
33
|
}
|
|
35
34
|
|
|
36
35
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
* @
|
|
40
|
-
* @
|
|
41
|
-
* @
|
|
42
|
-
* @param {UILogicContext} ctx
|
|
43
|
-
* @param {IContext} context
|
|
44
|
-
* @param {IData} data
|
|
45
|
-
* @param {IParams} [opt]
|
|
36
|
+
* @description 执行逻辑
|
|
37
|
+
* @abstract
|
|
38
|
+
* @param {UILogicContext} ctx 界面逻辑执行上下文
|
|
39
|
+
* @returns {*} {Promise<void>}
|
|
40
|
+
* @memberof UILogicNode
|
|
46
41
|
*/
|
|
47
42
|
abstract exec(ctx: UILogicContext): Promise<void>;
|
|
48
43
|
}
|
package/src/ui-logic/ui-logic.ts
CHANGED
|
@@ -1,37 +1,11 @@
|
|
|
1
1
|
/* eslint-disable no-await-in-loop */
|
|
2
|
-
import {
|
|
3
|
-
IBizContext,
|
|
4
|
-
ModelError,
|
|
5
|
-
RuntimeModelError,
|
|
6
|
-
} from '@ibiz-template/core';
|
|
7
|
-
import { IDEUILogic } from '@ibiz/model-core';
|
|
2
|
+
import { IBizContext, RuntimeModelError } from '@ibiz-template/core';
|
|
8
3
|
import { clone } from 'ramda';
|
|
9
|
-
import {
|
|
4
|
+
import { IAppDataEntity, IDEUILogic } from '@ibiz/model-core';
|
|
5
|
+
import { IUILogic, IUILogicParams, IUILogicNode } from '../interface';
|
|
10
6
|
import { UILogicContext } from './ui-logic-context';
|
|
11
|
-
import {
|
|
12
|
-
AppendParamNode,
|
|
13
|
-
BindParamNode,
|
|
14
|
-
CopyParamNode,
|
|
15
|
-
DataSetNode,
|
|
16
|
-
DEActionNode,
|
|
17
|
-
DebugParamNode,
|
|
18
|
-
DEUIActionNode,
|
|
19
|
-
EndNode,
|
|
20
|
-
ExecuteDELogicNode,
|
|
21
|
-
MsgBoxNode,
|
|
22
|
-
PFPluginNode,
|
|
23
|
-
PrepareJSParamNode,
|
|
24
|
-
RawJSCodeNode,
|
|
25
|
-
RenewParamNode,
|
|
26
|
-
ResetParamNode,
|
|
27
|
-
SortParamNode,
|
|
28
|
-
StartNode,
|
|
29
|
-
ThrowExceptionNode,
|
|
30
|
-
UILogicNode,
|
|
31
|
-
ViewCtrlFireEventNode,
|
|
32
|
-
ViewCtrlInvokeNode,
|
|
33
|
-
} from './ui-logic-node';
|
|
34
7
|
import { UILogicParam } from './ui-logic-param/ui-logic-param';
|
|
8
|
+
import { getUILogicNodeProvider } from '../register';
|
|
35
9
|
|
|
36
10
|
/**
|
|
37
11
|
* 界面逻辑
|
|
@@ -41,16 +15,16 @@ import { UILogicParam } from './ui-logic-param/ui-logic-param';
|
|
|
41
15
|
* @export
|
|
42
16
|
* @class UILogic
|
|
43
17
|
*/
|
|
44
|
-
export class UILogic {
|
|
18
|
+
export class UILogic implements IUILogic {
|
|
45
19
|
/**
|
|
46
20
|
* 所有节点实例
|
|
47
21
|
*
|
|
48
22
|
* @author chitanda
|
|
49
23
|
* @date 2023-02-08 21:02:38
|
|
50
24
|
* @protected
|
|
51
|
-
* @type {Map<string,
|
|
25
|
+
* @type {Map<string, IUILogicNode>}
|
|
52
26
|
*/
|
|
53
|
-
protected nodes: Map<string,
|
|
27
|
+
protected nodes: Map<string, IUILogicNode> = new Map();
|
|
54
28
|
|
|
55
29
|
/**
|
|
56
30
|
* 所有参数实例
|
|
@@ -64,94 +38,37 @@ export class UILogic {
|
|
|
64
38
|
|
|
65
39
|
/**
|
|
66
40
|
* Creates an instance of UILogic.
|
|
67
|
-
* @author chitanda
|
|
68
|
-
* @date 2023-02-08 17:02:26
|
|
69
41
|
* @param {IDEUILogic} model
|
|
42
|
+
* @param {IAppDataEntity} entity
|
|
43
|
+
* @memberof UILogic
|
|
70
44
|
*/
|
|
71
|
-
constructor(
|
|
72
|
-
|
|
45
|
+
constructor(
|
|
46
|
+
public model: IDEUILogic,
|
|
47
|
+
public entity: IAppDataEntity,
|
|
48
|
+
) {}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* @description 初始化
|
|
52
|
+
* @returns {*} {Promise<void>}
|
|
53
|
+
* @memberof UILogic
|
|
54
|
+
*/
|
|
55
|
+
async init(): Promise<void> {
|
|
56
|
+
if (!this.model.deuilogicNodes?.length) {
|
|
73
57
|
throw new RuntimeModelError(
|
|
74
|
-
model,
|
|
58
|
+
this.model,
|
|
75
59
|
ibiz.i18n.t('runtime.uiLogic.noLogicalNodesConfigured'),
|
|
76
60
|
);
|
|
77
61
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
case 'DEACTION': // 实体行为
|
|
89
|
-
logicNode = new DEActionNode(node);
|
|
90
|
-
break;
|
|
91
|
-
case 'DEUIACTION': // 实体界面行为调用
|
|
92
|
-
logicNode = new DEUIActionNode(node);
|
|
93
|
-
break;
|
|
94
|
-
case 'PREPAREJSPARAM': // 准备参数
|
|
95
|
-
logicNode = new PrepareJSParamNode(node);
|
|
96
|
-
break;
|
|
97
|
-
case 'RESETPARAM': // 重置参数
|
|
98
|
-
logicNode = new ResetParamNode(node);
|
|
99
|
-
break;
|
|
100
|
-
case 'COPYPARAM': // 拷贝参数
|
|
101
|
-
logicNode = new CopyParamNode(node);
|
|
102
|
-
break;
|
|
103
|
-
case 'BINDPARAM': // 绑定参数
|
|
104
|
-
logicNode = new BindParamNode(node);
|
|
105
|
-
break;
|
|
106
|
-
case 'VIEWCTRLINVOKE': // 视图部件调用
|
|
107
|
-
logicNode = new ViewCtrlInvokeNode(node);
|
|
108
|
-
break;
|
|
109
|
-
case 'MSGBOX': // 消息弹窗
|
|
110
|
-
logicNode = new MsgBoxNode(node);
|
|
111
|
-
break;
|
|
112
|
-
case 'DEBUGPARAM': // 调试逻辑参数
|
|
113
|
-
logicNode = new DebugParamNode(node);
|
|
114
|
-
break;
|
|
115
|
-
case 'APPENDPARAM': // 附加到数组参数
|
|
116
|
-
logicNode = new AppendParamNode(node);
|
|
117
|
-
break;
|
|
118
|
-
case 'SORTPARAM': // 排序数组参数
|
|
119
|
-
logicNode = new SortParamNode(node);
|
|
120
|
-
break;
|
|
121
|
-
case 'RENEWPARAM': // 重新建立参数
|
|
122
|
-
logicNode = new RenewParamNode(node);
|
|
123
|
-
break;
|
|
124
|
-
case 'DEDATASET': // 实体数据集
|
|
125
|
-
logicNode = new DataSetNode(node);
|
|
126
|
-
break;
|
|
127
|
-
case 'THROWEXCEPTION': // 抛出异常
|
|
128
|
-
logicNode = new ThrowExceptionNode(node);
|
|
129
|
-
break;
|
|
130
|
-
case 'VIEWCTRLFIREEVENT': // 视图部件事件触发
|
|
131
|
-
logicNode = new ViewCtrlFireEventNode(node);
|
|
132
|
-
break;
|
|
133
|
-
case 'DELOGIC': // 实体逻辑
|
|
134
|
-
logicNode = new ExecuteDELogicNode(node);
|
|
135
|
-
break;
|
|
136
|
-
case 'PFPLUGIN': // 前端插件调用
|
|
137
|
-
logicNode = new PFPluginNode(node);
|
|
138
|
-
break;
|
|
139
|
-
case 'RAWJSCODE':
|
|
140
|
-
logicNode = new RawJSCodeNode(node);
|
|
141
|
-
break;
|
|
142
|
-
default:
|
|
143
|
-
throw new ModelError(
|
|
144
|
-
node,
|
|
145
|
-
ibiz.i18n.t('runtime.deLogic.deLogicNode.unsupportedLogical', {
|
|
146
|
-
logicNodeType,
|
|
147
|
-
}),
|
|
148
|
-
);
|
|
149
|
-
}
|
|
150
|
-
this.nodes.set(node.id!, logicNode);
|
|
151
|
-
});
|
|
152
|
-
model.deuilogicParams!.forEach(param => {
|
|
153
|
-
this.params.set(param.id!, new UILogicParam(param));
|
|
154
|
-
});
|
|
62
|
+
await Promise.all(
|
|
63
|
+
this.model.deuilogicNodes.map(async node => {
|
|
64
|
+
const provider = await getUILogicNodeProvider(
|
|
65
|
+
node,
|
|
66
|
+
this.model,
|
|
67
|
+
this.entity,
|
|
68
|
+
);
|
|
69
|
+
if (provider) this.nodes.set(node.id!, provider);
|
|
70
|
+
}),
|
|
71
|
+
);
|
|
155
72
|
// 将已经实例化的逻辑节点挂载到逻辑连接上
|
|
156
73
|
this.nodes.forEach(node => {
|
|
157
74
|
node.links.forEach(link => {
|
|
@@ -161,18 +78,16 @@ export class UILogic {
|
|
|
161
78
|
}
|
|
162
79
|
});
|
|
163
80
|
});
|
|
81
|
+
this.model.deuilogicParams!.forEach(param => {
|
|
82
|
+
this.params.set(param.id!, new UILogicParam(param));
|
|
83
|
+
});
|
|
164
84
|
}
|
|
165
85
|
|
|
166
86
|
/**
|
|
167
|
-
* 初始化逻辑参数
|
|
168
|
-
*
|
|
169
|
-
* @author chitanda
|
|
170
|
-
* @date 2023-02-08 21:02:58
|
|
87
|
+
* @description 初始化逻辑参数
|
|
171
88
|
* @protected
|
|
172
89
|
* @param {UILogicContext} ctx
|
|
173
|
-
* @
|
|
174
|
-
* @param {IData} data
|
|
175
|
-
* @param {IParams} [opt]
|
|
90
|
+
* @memberof UILogic
|
|
176
91
|
*/
|
|
177
92
|
protected initLogicParams(ctx: UILogicContext): void {
|
|
178
93
|
this.params.forEach(param => {
|
|
@@ -184,14 +99,10 @@ export class UILogic {
|
|
|
184
99
|
}
|
|
185
100
|
|
|
186
101
|
/**
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
* @
|
|
190
|
-
* @
|
|
191
|
-
* @param {IContext} context
|
|
192
|
-
* @param {IData} data
|
|
193
|
-
* @param {IParams} [opt]
|
|
194
|
-
* @return {*} {Promise<IData>}
|
|
102
|
+
* @description 执行逻辑
|
|
103
|
+
* @param {IUILogicParams} parameters 逻辑参数
|
|
104
|
+
* @returns {*} {Promise<unknown>}
|
|
105
|
+
* @memberof UILogic
|
|
195
106
|
*/
|
|
196
107
|
async exec(parameters: IUILogicParams): Promise<unknown> {
|
|
197
108
|
// 克隆传入应用上下文参数和视图参数
|
|
@@ -219,21 +130,15 @@ export class UILogic {
|
|
|
219
130
|
}
|
|
220
131
|
|
|
221
132
|
/**
|
|
222
|
-
* 开始根据连线递归执行逻辑
|
|
223
|
-
*
|
|
224
|
-
* @author chitanda
|
|
225
|
-
* @date 2023-02-09 15:02:32
|
|
133
|
+
* @description 开始根据连线递归执行逻辑
|
|
226
134
|
* @protected
|
|
227
|
-
* @param {
|
|
135
|
+
* @param {IUILogicNode} node
|
|
228
136
|
* @param {UILogicContext} ctx
|
|
229
|
-
* @
|
|
230
|
-
* @
|
|
231
|
-
* @param {IParams} params
|
|
232
|
-
* @param {IParams} [opt]
|
|
233
|
-
* @return {*} {(Promise<IData | null>)}
|
|
137
|
+
* @returns {*} {Promise<void>}
|
|
138
|
+
* @memberof UILogic
|
|
234
139
|
*/
|
|
235
140
|
protected async deepExec(
|
|
236
|
-
node:
|
|
141
|
+
node: IUILogicNode,
|
|
237
142
|
ctx: UILogicContext,
|
|
238
143
|
): Promise<void> {
|
|
239
144
|
// 执行逻辑节点
|
|
@@ -80,7 +80,13 @@ export async function calcItemVisible(
|
|
|
80
80
|
const entityModel = await ibiz.hub.getAppDataEntity(appDeId, appId);
|
|
81
81
|
const deLogic = findDELogic(testAppDELogicId, entityModel);
|
|
82
82
|
if (deLogic) {
|
|
83
|
-
const result = await execDELogicAction(
|
|
83
|
+
const result = await execDELogicAction(
|
|
84
|
+
deLogic,
|
|
85
|
+
entityModel,
|
|
86
|
+
context,
|
|
87
|
+
data,
|
|
88
|
+
params,
|
|
89
|
+
);
|
|
84
90
|
return !!result.data;
|
|
85
91
|
}
|
|
86
92
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"i-ui-logic-params.d.ts","sourceRoot":"","sources":["../../../../src/interface/common/i-ui-logic-params/i-ui-logic-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;;;;;;GAOG;AACH,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD;;;;;OAKG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC3B"}
|
|
File without changes
|