@ibiz-template/runtime 0.1.21 → 0.1.23-alpha.0
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 +923 -204
- package/dist/index.system.min.js +1 -1
- package/dist/index.system.min.js.map +1 -1
- package/out/constant/view-call-tag.d.ts +9 -1
- package/out/constant/view-call-tag.d.ts.map +1 -1
- package/out/constant/view-call-tag.js +8 -0
- package/out/controller/control/data-view/data-view.controller.d.ts +25 -2
- package/out/controller/control/data-view/data-view.controller.d.ts.map +1 -1
- package/out/controller/control/data-view/data-view.controller.js +70 -30
- package/out/controller/control/data-view/data-view.service.d.ts +1 -1
- package/out/controller/control/data-view/data-view.service.d.ts.map +1 -1
- package/out/controller/control/data-view/data-view.service.js +2 -1
- package/out/controller/control/form/edit-form/edit-form.service.d.ts.map +1 -1
- package/out/controller/control/form/edit-form/edit-form.service.js +1 -0
- package/out/controller/control/form/form-detail/form-druipart/form-druipart.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-druipart/form-druipart.controller.js +8 -4
- package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid.controller.js +1 -1
- package/out/controller/control/grid/grid/grid.service.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid.service.js +1 -0
- package/out/controller/control/index.d.ts +1 -0
- package/out/controller/control/index.d.ts.map +1 -1
- package/out/controller/control/index.js +1 -0
- package/out/controller/control/kanban/index.d.ts +3 -0
- package/out/controller/control/kanban/index.d.ts.map +1 -0
- package/out/controller/control/kanban/index.js +2 -0
- package/out/controller/control/kanban/kanban.controller.d.ts +99 -0
- package/out/controller/control/kanban/kanban.controller.d.ts.map +1 -0
- package/out/controller/control/kanban/kanban.controller.js +310 -0
- package/out/controller/control/kanban/kanban.service.d.ts +24 -0
- package/out/controller/control/kanban/kanban.service.d.ts.map +1 -0
- package/out/controller/control/kanban/kanban.service.js +26 -0
- package/out/controller/control/list/list.controller.d.ts.map +1 -1
- package/out/controller/control/list/list.controller.js +3 -0
- package/out/controller/control/list/list.service.d.ts.map +1 -1
- package/out/controller/control/list/list.service.js +1 -0
- package/out/controller/control/md-ctrl/md-ctrl.service.d.ts.map +1 -1
- package/out/controller/control/md-ctrl/md-ctrl.service.js +1 -0
- package/out/controller/control/pickup-view-panel/pickup-view-panel.controller.d.ts.map +1 -1
- package/out/controller/control/pickup-view-panel/pickup-view-panel.controller.js +3 -2
- package/out/controller/control/toolbar/toolbar.controllerr.js +2 -2
- package/out/controller/ctx/ctx.d.ts +8 -0
- package/out/controller/ctx/ctx.d.ts.map +1 -1
- package/out/controller/ctx/ctx.js +12 -0
- package/out/de-logic/utils/handle-src-val.d.ts.map +1 -1
- package/out/de-logic/utils/handle-src-val.js +6 -4
- package/out/engine/view-base.engine.d.ts.map +1 -1
- package/out/engine/view-base.engine.js +2 -1
- package/out/interface/controller/controller/common/i-drag-change-info.d.ts +38 -0
- package/out/interface/controller/controller/common/i-drag-change-info.d.ts.map +1 -0
- package/out/interface/controller/controller/common/i-drag-change-info.js +1 -0
- package/out/interface/controller/controller/common/index.d.ts +1 -0
- package/out/interface/controller/controller/common/index.d.ts.map +1 -1
- package/out/interface/controller/controller/common/index.js +1 -0
- package/out/interface/controller/controller/control/i-data-view-control.controller.d.ts +1 -1
- package/out/interface/controller/controller/control/i-data-view-control.controller.d.ts.map +1 -1
- package/out/interface/controller/controller/control/i-kanban.controller.d.ts +14 -0
- package/out/interface/controller/controller/control/i-kanban.controller.d.ts.map +1 -0
- package/out/interface/controller/controller/control/i-kanban.controller.js +1 -0
- package/out/interface/controller/controller/control/i-panel.controller.d.ts +7 -0
- package/out/interface/controller/controller/control/i-panel.controller.d.ts.map +1 -1
- package/out/interface/controller/controller/control/index.d.ts +1 -0
- package/out/interface/controller/controller/control/index.d.ts.map +1 -1
- package/out/interface/controller/controller/control/index.js +1 -0
- package/out/interface/controller/controller/control/panel-item/i-panel-data-container.controller.d.ts +7 -0
- package/out/interface/controller/controller/control/panel-item/i-panel-data-container.controller.d.ts.map +1 -1
- package/out/interface/controller/event/control/i-kanban.event.d.ts +3 -3
- package/out/interface/controller/event/control/i-kanban.event.d.ts.map +1 -1
- package/out/interface/controller/event/view/i-kanban-view.event.d.ts +1 -1
- package/out/interface/controller/state/control/i-kanban.state.d.ts +33 -0
- package/out/interface/controller/state/control/i-kanban.state.d.ts.map +1 -0
- package/out/interface/controller/state/control/i-kanban.state.js +1 -0
- package/out/interface/controller/state/control/i-md-control.state.d.ts +7 -0
- package/out/interface/controller/state/control/i-md-control.state.d.ts.map +1 -1
- package/out/interface/controller/state/control/index.d.ts +1 -0
- package/out/interface/controller/state/control/index.d.ts.map +1 -1
- package/out/interface/controller/state/control/index.js +1 -0
- package/out/interface/controller/state/view/i-kanban-view.state.d.ts +11 -0
- package/out/interface/controller/state/view/i-kanban-view.state.d.ts.map +1 -0
- package/out/interface/controller/state/view/i-kanban-view.state.js +1 -0
- package/out/interface/controller/state/view/index.d.ts +1 -0
- package/out/interface/controller/state/view/index.d.ts.map +1 -1
- package/out/interface/controller/state/view/index.js +1 -0
- package/out/logic-scheduler/trigger/timer-trigger.d.ts +1 -2
- package/out/logic-scheduler/trigger/timer-trigger.d.ts.map +1 -1
- package/out/service/dto/method.dto.d.ts.map +1 -1
- package/out/service/dto/method.dto.js +1 -2
- package/out/service/service/entity/method/method.d.ts.map +1 -1
- package/out/service/service/entity/method/method.js +3 -1
- package/out/service/service/work-flow/work-flow.service.d.ts +11 -0
- package/out/service/service/work-flow/work-flow.service.d.ts.map +1 -1
- package/out/service/service/work-flow/work-flow.service.js +15 -0
- package/out/service/vo/control.vo.d.ts +1 -0
- package/out/service/vo/control.vo.d.ts.map +1 -1
- package/out/service/vo/control.vo.js +18 -5
- package/out/service/vo/ui-map-field.d.ts +8 -0
- package/out/service/vo/ui-map-field.d.ts.map +1 -1
- package/out/service/vo/ui-map-field.js +3 -0
- package/out/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.js +1 -1
- package/out/ui-logic/ui-logic-node/append-param-node/append-param-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/append-param-node/append-param-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/append-param-node/append-param-node.js +25 -0
- package/out/ui-logic/ui-logic-node/copy-param-node/copy-param-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/copy-param-node/copy-param-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/copy-param-node/copy-param-node.js +23 -0
- package/out/ui-logic/ui-logic-node/data-set-node/data-set-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/data-set-node/data-set-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/data-set-node/data-set-node.js +21 -0
- package/out/ui-logic/ui-logic-node/execute-de-logic-node/execute-de-logic-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/execute-de-logic-node/execute-de-logic-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/execute-de-logic-node/execute-de-logic-node.js +37 -0
- package/out/ui-logic/ui-logic-node/index.d.ts +9 -0
- package/out/ui-logic/ui-logic-node/index.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-node/index.js +9 -0
- package/out/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.d.ts +56 -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 +122 -12
- package/out/ui-logic/ui-logic-node/renew-param-node/renew-param-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/renew-param-node/renew-param-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/renew-param-node/renew-param-node.js +20 -0
- package/out/ui-logic/ui-logic-node/reset-param-node/reset-param-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/reset-param-node/reset-param-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/reset-param-node/reset-param-node.js +20 -0
- package/out/ui-logic/ui-logic-node/sort-param-node/sort-param-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/sort-param-node/sort-param-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/sort-param-node/sort-param-node.js +24 -0
- package/out/ui-logic/ui-logic-node/throw-exception-node/throw-exception-node.d.ts +17 -0
- package/out/ui-logic/ui-logic-node/throw-exception-node/throw-exception-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/throw-exception-node/throw-exception-node.js +17 -0
- package/out/ui-logic/ui-logic-node/view-ctrl-fire-event-node/view-ctrl-fire-event-node.d.ts +16 -0
- package/out/ui-logic/ui-logic-node/view-ctrl-fire-event-node/view-ctrl-fire-event-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/view-ctrl-fire-event-node/view-ctrl-fire-event-node.js +37 -0
- package/out/ui-logic/ui-logic-param/ui-logic-param.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-param/ui-logic-param.js +2 -2
- package/out/ui-logic/ui-logic.d.ts.map +1 -1
- package/out/ui-logic/ui-logic.js +24 -6
- package/out/ui-logic/utils/handle-src-val.d.ts.map +1 -1
- package/out/ui-logic/utils/handle-src-val.js +7 -5
- package/out/utils/verify/de-rule-verify.js +1 -1
- package/package.json +7 -7
- package/src/constant/view-call-tag.ts +8 -0
- package/src/controller/control/data-view/data-view.controller.ts +93 -43
- package/src/controller/control/data-view/data-view.service.ts +5 -2
- package/src/controller/control/form/edit-form/edit-form.service.ts +1 -0
- package/src/controller/control/form/form-detail/form-druipart/form-druipart.controller.ts +10 -5
- package/src/controller/control/grid/grid/grid.controller.ts +1 -1
- package/src/controller/control/grid/grid/grid.service.ts +1 -0
- package/src/controller/control/index.ts +1 -0
- package/src/controller/control/kanban/index.ts +2 -0
- package/src/controller/control/kanban/kanban.controller.ts +370 -0
- package/src/controller/control/kanban/kanban.service.ts +33 -0
- package/src/controller/control/list/list.controller.ts +3 -0
- package/src/controller/control/list/list.service.ts +1 -0
- package/src/controller/control/md-ctrl/md-ctrl.service.ts +1 -0
- package/src/controller/control/pickup-view-panel/pickup-view-panel.controller.ts +3 -2
- package/src/controller/control/toolbar/toolbar.controllerr.ts +2 -2
- package/src/controller/ctx/ctx.ts +13 -0
- package/src/de-logic/utils/handle-src-val.ts +6 -4
- package/src/engine/view-base.engine.ts +2 -1
- package/src/interface/controller/controller/common/i-drag-change-info.ts +40 -0
- package/src/interface/controller/controller/common/index.ts +1 -0
- package/src/interface/controller/controller/control/i-data-view-control.controller.ts +5 -6
- package/src/interface/controller/controller/control/i-kanban.controller.ts +14 -0
- package/src/interface/controller/controller/control/i-panel.controller.ts +8 -0
- package/src/interface/controller/controller/control/index.ts +1 -0
- package/src/interface/controller/controller/control/panel-item/i-panel-data-container.controller.ts +8 -0
- package/src/interface/controller/event/control/i-kanban.event.ts +3 -3
- package/src/interface/controller/event/view/i-kanban-view.event.ts +1 -1
- package/src/interface/controller/state/control/i-kanban.state.ts +35 -0
- package/src/interface/controller/state/control/i-md-control.state.ts +8 -0
- package/src/interface/controller/state/control/index.ts +1 -0
- package/src/interface/controller/state/view/i-kanban-view.state.ts +10 -0
- package/src/interface/controller/state/view/index.ts +1 -0
- package/src/logic-scheduler/trigger/timer-trigger.ts +2 -2
- package/src/service/dto/method.dto.ts +1 -2
- package/src/service/service/entity/method/method.ts +3 -1
- package/src/service/service/work-flow/work-flow.service.ts +28 -0
- package/src/service/vo/control.vo.ts +19 -4
- package/src/service/vo/ui-map-field.ts +12 -0
- package/src/ui-logic/ui-logic-link/ui-logic-link-single-cond/ui-logic-link-single-cond.ts +1 -1
- package/src/ui-logic/ui-logic-node/append-param-node/append-param-node.ts +44 -0
- package/src/ui-logic/ui-logic-node/copy-param-node/copy-param-node.ts +31 -0
- package/src/ui-logic/ui-logic-node/data-set-node/data-set-node.ts +37 -0
- package/src/ui-logic/ui-logic-node/execute-de-logic-node/execute-de-logic-node.ts +57 -0
- package/src/ui-logic/ui-logic-node/index.ts +9 -0
- package/src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts +153 -17
- package/src/ui-logic/ui-logic-node/renew-param-node/renew-param-node.ts +25 -0
- package/src/ui-logic/ui-logic-node/reset-param-node/reset-param-node.ts +25 -0
- package/src/ui-logic/ui-logic-node/sort-param-node/sort-param-node.ts +29 -0
- package/src/ui-logic/ui-logic-node/throw-exception-node/throw-exception-node.ts +23 -0
- package/src/ui-logic/ui-logic-node/view-ctrl-fire-event-node/view-ctrl-fire-event-node.ts +47 -0
- package/src/ui-logic/ui-logic-param/ui-logic-param.ts +2 -5
- package/src/ui-logic/ui-logic.ts +32 -5
- package/src/ui-logic/utils/handle-src-val.ts +7 -5
- package/src/utils/verify/de-rule-verify.ts +1 -1
package/out/ui-logic/ui-logic.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable no-await-in-loop */
|
|
2
2
|
import { ModelError, RuntimeModelError } from '@ibiz-template/core';
|
|
3
3
|
import { UILogicContext } from './ui-logic-context';
|
|
4
|
-
import { BindParamNode, DEActionNode, DebugParamNode, DEUIActionNode, EndNode, MsgBoxNode, PrepareJSParamNode, StartNode, ViewCtrlInvokeNode, } from './ui-logic-node';
|
|
4
|
+
import { AppendParamNode, BindParamNode, CopyParamNode, DataSetNode, DEActionNode, DebugParamNode, DEUIActionNode, EndNode, ExecuteDELogicNode, MsgBoxNode, PrepareJSParamNode, RenewParamNode, ResetParamNode, SortParamNode, StartNode, ThrowExceptionNode, ViewCtrlFireEventNode, ViewCtrlInvokeNode, } from './ui-logic-node';
|
|
5
5
|
import { UILogicParam } from './ui-logic-param/ui-logic-param';
|
|
6
6
|
/**
|
|
7
7
|
* 界面逻辑
|
|
@@ -61,6 +61,12 @@ export class UILogic {
|
|
|
61
61
|
case 'PREPAREJSPARAM': // 准备参数
|
|
62
62
|
logicNode = new PrepareJSParamNode(node);
|
|
63
63
|
break;
|
|
64
|
+
case 'RESETPARAM': // 重置参数
|
|
65
|
+
logicNode = new ResetParamNode(node);
|
|
66
|
+
break;
|
|
67
|
+
case 'COPYPARAM': // 拷贝参数
|
|
68
|
+
logicNode = new CopyParamNode(node);
|
|
69
|
+
break;
|
|
64
70
|
case 'BINDPARAM': // 绑定参数
|
|
65
71
|
logicNode = new BindParamNode(node);
|
|
66
72
|
break;
|
|
@@ -73,16 +79,28 @@ export class UILogic {
|
|
|
73
79
|
case 'DEBUGPARAM': // 调试逻辑参数
|
|
74
80
|
logicNode = new DebugParamNode(node);
|
|
75
81
|
break;
|
|
76
|
-
case 'RESETPARAM': // 重置参数
|
|
77
|
-
case 'COPYPARAM': // 拷贝参数
|
|
78
|
-
case 'VIEWCTRLFIREEVENT': // 视图部件事件触发
|
|
79
82
|
case 'APPENDPARAM': // 附加到数组参数
|
|
83
|
+
logicNode = new AppendParamNode(node);
|
|
84
|
+
break;
|
|
80
85
|
case 'SORTPARAM': // 排序数组参数
|
|
86
|
+
logicNode = new SortParamNode(node);
|
|
87
|
+
break;
|
|
81
88
|
case 'RENEWPARAM': // 重新建立参数
|
|
82
|
-
|
|
89
|
+
logicNode = new RenewParamNode(node);
|
|
90
|
+
break;
|
|
83
91
|
case 'DEDATASET': // 实体数据集
|
|
84
|
-
|
|
92
|
+
logicNode = new DataSetNode(node);
|
|
93
|
+
break;
|
|
85
94
|
case 'THROWEXCEPTION': // 抛出异常
|
|
95
|
+
logicNode = new ThrowExceptionNode(node);
|
|
96
|
+
break;
|
|
97
|
+
case 'VIEWCTRLFIREEVENT': // 视图部件事件触发
|
|
98
|
+
logicNode = new ViewCtrlFireEventNode(node);
|
|
99
|
+
break;
|
|
100
|
+
case 'DELOGIC': // 实体逻辑
|
|
101
|
+
logicNode = new ExecuteDELogicNode(node);
|
|
102
|
+
break;
|
|
103
|
+
case 'PFPLUGIN': // 前端插件调用
|
|
86
104
|
default:
|
|
87
105
|
throw new ModelError(node, `未支持的逻辑节点类型: ${logicNodeType}`);
|
|
88
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle-src-val.d.ts","sourceRoot":"","sources":["../../../src/ui-logic/utils/handle-src-val.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,KAAK,YAAY,GAAG;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,cAAc,EACnB,YAAY,EAAE,YAAY,GACzB,OAAO,
|
|
1
|
+
{"version":3,"file":"handle-src-val.d.ts","sourceRoot":"","sources":["../../../src/ui-logic/utils/handle-src-val.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,KAAK,YAAY,GAAG;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,cAAc,EACnB,YAAY,EAAE,YAAY,GACzB,OAAO,CA8CT"}
|
|
@@ -28,12 +28,14 @@ export function handleSrcVal(ctx, srcValParams) {
|
|
|
28
28
|
// 直接值
|
|
29
29
|
case 'SRCVALUE':
|
|
30
30
|
return srcValue;
|
|
31
|
-
//
|
|
32
|
-
case 'VIEWPARAM':
|
|
31
|
+
case 'WEBCONTEXT': // 网页请求上下文
|
|
32
|
+
case 'VIEWPARAM': // 视图参数
|
|
33
33
|
value = ctx.viewParams;
|
|
34
34
|
break;
|
|
35
|
-
//
|
|
36
|
-
case '
|
|
35
|
+
case 'APPLICATION': // 系统全局对象
|
|
36
|
+
case 'SESSION': // 用户全局对象
|
|
37
|
+
case 'APPDATA': // 应用上下文
|
|
38
|
+
case 'DATACONTEXT': // 数据上下文
|
|
37
39
|
value = ctx.context;
|
|
38
40
|
break;
|
|
39
41
|
// 当前环境参数
|
|
@@ -44,7 +46,7 @@ export function handleSrcVal(ctx, srcValParams) {
|
|
|
44
46
|
throw new ModelError(srcValParams, `暂未支持源值类型${srcValueType}`);
|
|
45
47
|
}
|
|
46
48
|
// 取属性值
|
|
47
|
-
const srcField = srcFieldName
|
|
49
|
+
const srcField = srcFieldName;
|
|
48
50
|
if (value && srcField) {
|
|
49
51
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
50
52
|
value = value[srcField];
|
|
@@ -50,7 +50,7 @@ export function verifyDeRules(name, data, condition) {
|
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
else {
|
|
53
|
-
name = condition === null || condition === void 0 ? void 0 : condition.defname.toLowerCase();
|
|
53
|
+
name = (condition === null || condition === void 0 ? void 0 : condition.defname.toLowerCase()) || name;
|
|
54
54
|
try {
|
|
55
55
|
// 常规规则
|
|
56
56
|
if (isSimpleCondition(condition)) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/runtime",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.23-alpha.0",
|
|
4
4
|
"description": "控制器包",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "out/index.js",
|
|
@@ -29,11 +29,11 @@
|
|
|
29
29
|
"author": "chitanda",
|
|
30
30
|
"license": "MIT",
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@ibiz-template/core": "^0.1.
|
|
33
|
-
"@ibiz/model-core": "^0.0.
|
|
32
|
+
"@ibiz-template/core": "^0.1.23-alpha.0",
|
|
33
|
+
"@ibiz/model-core": "^0.0.16",
|
|
34
34
|
"@types/path-browserify": "^1.0.0",
|
|
35
|
-
"@types/qs": "^6.9.
|
|
36
|
-
"@types/systemjs": "^6.13.
|
|
35
|
+
"@types/qs": "^6.9.8",
|
|
36
|
+
"@types/systemjs": "^6.13.2",
|
|
37
37
|
"async-validator": "^4.2.5",
|
|
38
38
|
"dayjs": "^1.11.9",
|
|
39
39
|
"echarts": "^5.4.3",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
48
|
"@ibiz-template/core": "^0.1.0",
|
|
49
|
-
"@ibiz/model-core": "^0.0.
|
|
49
|
+
"@ibiz/model-core": "^0.0.16",
|
|
50
50
|
"async-validator": "^4.2.5",
|
|
51
51
|
"dayjs": "^1.11.7",
|
|
52
52
|
"echarts": "^5.4.3",
|
|
@@ -57,5 +57,5 @@
|
|
|
57
57
|
"qx-util": "^0.4.8",
|
|
58
58
|
"ramda": "^0.29.0"
|
|
59
59
|
},
|
|
60
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "3d456c0b983723282e3c8087aefc17c0af94165f"
|
|
61
61
|
}
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
IDEDataViewItem,
|
|
5
5
|
IUIActionGroupDetail,
|
|
6
6
|
} from '@ibiz/model-core';
|
|
7
|
+
import { isNil } from 'ramda';
|
|
7
8
|
import {
|
|
8
9
|
IDataViewControlState,
|
|
9
10
|
IDataViewControlEvent,
|
|
@@ -17,12 +18,12 @@ import { MDControlController } from '../../common';
|
|
|
17
18
|
import { ButtonContainerState, UIActionButtonState } from '../../utils';
|
|
18
19
|
import { DataViewControlService } from './data-view.service';
|
|
19
20
|
|
|
20
|
-
export class DataViewControlController
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
IDataViewControlEvent
|
|
21
|
+
export class DataViewControlController<
|
|
22
|
+
T extends IDEDataView = IDEDataView,
|
|
23
|
+
S extends IDataViewControlState = IDataViewControlState,
|
|
24
|
+
E extends IDataViewControlEvent = IDataViewControlEvent,
|
|
25
25
|
>
|
|
26
|
+
extends MDControlController<T, S, E>
|
|
26
27
|
implements IDataViewControlController
|
|
27
28
|
{
|
|
28
29
|
/**
|
|
@@ -33,6 +34,14 @@ export class DataViewControlController
|
|
|
33
34
|
*/
|
|
34
35
|
declare service: DataViewControlService;
|
|
35
36
|
|
|
37
|
+
/**
|
|
38
|
+
* 分组代码表项集合
|
|
39
|
+
* @author lxm
|
|
40
|
+
* @date 2023-08-29 04:55:07
|
|
41
|
+
* @type {readonly}
|
|
42
|
+
*/
|
|
43
|
+
groupCodeListItems?: readonly CodeListItem[];
|
|
44
|
+
|
|
36
45
|
/**
|
|
37
46
|
* 初始化State
|
|
38
47
|
*
|
|
@@ -42,6 +51,7 @@ export class DataViewControlController
|
|
|
42
51
|
protected initState(): void {
|
|
43
52
|
super.initState();
|
|
44
53
|
this.state.noSort = this.model.noSort === true;
|
|
54
|
+
this.state.size = this.model.pagingSize || 20;
|
|
45
55
|
}
|
|
46
56
|
|
|
47
57
|
/**
|
|
@@ -53,7 +63,17 @@ export class DataViewControlController
|
|
|
53
63
|
*/
|
|
54
64
|
protected async onCreated(): Promise<void> {
|
|
55
65
|
await super.onCreated();
|
|
56
|
-
|
|
66
|
+
await this.initControlService();
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* 初始化部件服务
|
|
71
|
+
* @author lxm
|
|
72
|
+
* @date 2023-08-29 04:13:05
|
|
73
|
+
* @protected
|
|
74
|
+
* @return {*} {Promise<void>}
|
|
75
|
+
*/
|
|
76
|
+
protected async initControlService(): Promise<void> {
|
|
57
77
|
this.service = new DataViewControlService(this.model);
|
|
58
78
|
await this.service.init(this.context);
|
|
59
79
|
}
|
|
@@ -158,8 +178,11 @@ export class DataViewControlController
|
|
|
158
178
|
* @memberof DataViewControlController
|
|
159
179
|
*/
|
|
160
180
|
async handleDataGroup(): Promise<void> {
|
|
161
|
-
const { enableGroup, groupMode } = this.model;
|
|
181
|
+
const { enableGroup, groupMode, groupAppDEFieldId } = this.model;
|
|
162
182
|
if (enableGroup && groupMode) {
|
|
183
|
+
if (!groupAppDEFieldId) {
|
|
184
|
+
throw new RuntimeModelError(this.model, '分组属性没有配置');
|
|
185
|
+
}
|
|
163
186
|
if (groupMode === 'AUTO') {
|
|
164
187
|
this.handleAutoGroup();
|
|
165
188
|
} else if (groupMode === 'CODELIST') {
|
|
@@ -177,16 +200,24 @@ export class DataViewControlController
|
|
|
177
200
|
const { groupAppDEFieldId } = this.model;
|
|
178
201
|
if (groupAppDEFieldId) {
|
|
179
202
|
const { items } = this.state;
|
|
180
|
-
const
|
|
203
|
+
const groupMap: Map<string, IData[]> = new Map();
|
|
181
204
|
items.forEach((item: IData) => {
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
205
|
+
const groupVal = item[groupAppDEFieldId];
|
|
206
|
+
if (isNil(groupVal)) {
|
|
207
|
+
// 分组无值的不显示
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
if (!groupMap.has(groupVal)) {
|
|
212
|
+
groupMap.set(groupVal, []);
|
|
213
|
+
}
|
|
214
|
+
groupMap.get(groupVal)!.push(item);
|
|
185
215
|
});
|
|
186
216
|
const groups: IMDControlGroupState[] = [];
|
|
187
|
-
|
|
217
|
+
groupMap.forEach((value: IData[], key: string) => {
|
|
188
218
|
groups.push({
|
|
189
219
|
caption: key,
|
|
220
|
+
key,
|
|
190
221
|
children: [...value],
|
|
191
222
|
});
|
|
192
223
|
});
|
|
@@ -194,44 +225,63 @@ export class DataViewControlController
|
|
|
194
225
|
}
|
|
195
226
|
}
|
|
196
227
|
|
|
228
|
+
/**
|
|
229
|
+
* 加载并初始化分组代码表项集合
|
|
230
|
+
* @author lxm
|
|
231
|
+
* @date 2023-08-29 05:11:39
|
|
232
|
+
* @protected
|
|
233
|
+
* @return {*} {Promise<void>}
|
|
234
|
+
*/
|
|
235
|
+
protected async initGroupCodeListItems(): Promise<void> {
|
|
236
|
+
const { groupCodeListId } = this.model;
|
|
237
|
+
if (!groupCodeListId) {
|
|
238
|
+
throw new RuntimeModelError(this.model, '分组代码表没有配置');
|
|
239
|
+
}
|
|
240
|
+
const app = ibiz.hub.getApp(this.context.srfappid);
|
|
241
|
+
this.groupCodeListItems = await app.codeList.get(
|
|
242
|
+
groupCodeListId,
|
|
243
|
+
this.context,
|
|
244
|
+
this.params,
|
|
245
|
+
);
|
|
246
|
+
}
|
|
247
|
+
|
|
197
248
|
/**
|
|
198
249
|
* 处理代码表分组
|
|
199
250
|
*
|
|
200
251
|
* @memberof DataViewControlController
|
|
201
252
|
*/
|
|
202
253
|
async handleCodeListGroup(): Promise<void> {
|
|
203
|
-
const { groupAppDEFieldId
|
|
204
|
-
if (
|
|
205
|
-
|
|
206
|
-
const groups: IMDControlGroupState[] = [];
|
|
207
|
-
const app = ibiz.hub.getApp(this.context.srfappid);
|
|
208
|
-
const codeList = await app.codeList.get(
|
|
209
|
-
groupCodeListId,
|
|
210
|
-
this.context,
|
|
211
|
-
this.params,
|
|
212
|
-
);
|
|
213
|
-
const keys: string[] = [];
|
|
214
|
-
codeList.forEach((codeListItem: CodeListItem) => {
|
|
215
|
-
const value = items.filter(
|
|
216
|
-
(item: IData) => item[groupAppDEFieldId] === codeListItem.value,
|
|
217
|
-
);
|
|
218
|
-
groups.push({
|
|
219
|
-
caption: codeListItem.text,
|
|
220
|
-
children: [...value],
|
|
221
|
-
});
|
|
222
|
-
keys.push(codeListItem.value as string);
|
|
223
|
-
});
|
|
224
|
-
const otherGroup = items.filter(
|
|
225
|
-
(item: IData) => keys.indexOf(item[groupAppDEFieldId]) === -1,
|
|
226
|
-
);
|
|
227
|
-
if (otherGroup.length > 0) {
|
|
228
|
-
groups.push({
|
|
229
|
-
caption: '其他',
|
|
230
|
-
children: [...otherGroup],
|
|
231
|
-
});
|
|
232
|
-
}
|
|
233
|
-
this.state.groups = groups;
|
|
254
|
+
const { groupAppDEFieldId } = this.model;
|
|
255
|
+
if (!this.groupCodeListItems) {
|
|
256
|
+
await this.initGroupCodeListItems();
|
|
234
257
|
}
|
|
258
|
+
const { items } = this.state;
|
|
259
|
+
const groupMap: Map<string | number, IData[]> = new Map();
|
|
260
|
+
this.groupCodeListItems!.forEach(item => {
|
|
261
|
+
groupMap.set(item.value, []);
|
|
262
|
+
});
|
|
263
|
+
items.forEach((item: IData) => {
|
|
264
|
+
const groupVal = item[groupAppDEFieldId!];
|
|
265
|
+
const groupArr = groupMap.get(groupVal);
|
|
266
|
+
if (groupArr) {
|
|
267
|
+
groupArr.push(item);
|
|
268
|
+
}
|
|
269
|
+
// 不在代码表里数据忽略
|
|
270
|
+
});
|
|
271
|
+
|
|
272
|
+
const groups: IMDControlGroupState[] = [];
|
|
273
|
+
groupMap.forEach((arr, key) => {
|
|
274
|
+
// 标题
|
|
275
|
+
const codeListItem = this.groupCodeListItems!.find(
|
|
276
|
+
item => item.value === key,
|
|
277
|
+
)!;
|
|
278
|
+
groups.push({
|
|
279
|
+
caption: codeListItem.text,
|
|
280
|
+
key: codeListItem.value,
|
|
281
|
+
children: arr,
|
|
282
|
+
});
|
|
283
|
+
});
|
|
284
|
+
this.state.groups = groups;
|
|
235
285
|
}
|
|
236
286
|
|
|
237
287
|
/**
|
|
@@ -8,7 +8,9 @@ import { MDControlService, UIMapField } from '../../../service';
|
|
|
8
8
|
* @class DataViewControlService
|
|
9
9
|
* @extends {MDControlService<IDEDataView>}
|
|
10
10
|
*/
|
|
11
|
-
export class DataViewControlService
|
|
11
|
+
export class DataViewControlService<
|
|
12
|
+
T extends IDEDataView = IDEDataView,
|
|
13
|
+
> extends MDControlService<T> {
|
|
12
14
|
/**
|
|
13
15
|
* 初始化属性映射
|
|
14
16
|
*
|
|
@@ -16,7 +18,7 @@ export class DataViewControlService extends MDControlService<IDEDataView> {
|
|
|
16
18
|
*/
|
|
17
19
|
initUIDataMap(): void {
|
|
18
20
|
super.initUIDataMap();
|
|
19
|
-
//
|
|
21
|
+
// *初始化数据项的属性映射
|
|
20
22
|
this.model.dedataViewDataItems?.forEach(item => {
|
|
21
23
|
const uiKey = item.id!.toLowerCase();
|
|
22
24
|
const deField = item.appDEFieldId;
|
|
@@ -26,6 +28,7 @@ export class DataViewControlService extends MDControlService<IDEDataView> {
|
|
|
26
28
|
const deFieldKey = deField.toLowerCase();
|
|
27
29
|
mapField = new UIMapField(uiKey, deFieldKey, {
|
|
28
30
|
isOriginField: true,
|
|
31
|
+
dataType: item.dataType,
|
|
29
32
|
});
|
|
30
33
|
} else {
|
|
31
34
|
// 前台属性
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isOverlap } from '@ibiz-template/core';
|
|
2
2
|
import { IDEFormDRUIPart } from '@ibiz/model-core';
|
|
3
3
|
import { createUUID, notNilEmpty } from 'qx-util';
|
|
4
|
-
import { SysUIActionTag } from '../../../../../constant';
|
|
4
|
+
import { SysUIActionTag, ViewCallTag } from '../../../../../constant';
|
|
5
5
|
import { IViewController } from '../../../../../interface';
|
|
6
6
|
import { convertNavData } from '../../../../../utils';
|
|
7
7
|
import { FormNotifyState } from '../../../../constant';
|
|
@@ -117,9 +117,14 @@ export class FormDRUIPartController extends FormDetailController<IDEFormDRUIPart
|
|
|
117
117
|
await super.formStateNotify(state);
|
|
118
118
|
|
|
119
119
|
this.isNewData = state === FormNotifyState.DRAFT;
|
|
120
|
-
this.
|
|
121
|
-
|
|
122
|
-
|
|
120
|
+
if (this.model.maskMode !== 0) {
|
|
121
|
+
this.state.showMask = this.isNewData;
|
|
122
|
+
}
|
|
123
|
+
if (
|
|
124
|
+
state === FormNotifyState.LOAD ||
|
|
125
|
+
state === FormNotifyState.DRAFT ||
|
|
126
|
+
state === FormNotifyState.SAVE
|
|
127
|
+
) {
|
|
123
128
|
// 表单数据加载变更后,计算关系界面参数
|
|
124
129
|
this.calcViewParams();
|
|
125
130
|
}
|
|
@@ -190,7 +195,7 @@ export class FormDRUIPartController extends FormDetailController<IDEFormDRUIPart
|
|
|
190
195
|
this.embedView = view;
|
|
191
196
|
this.embedView.evt.on('onMounted', () => {
|
|
192
197
|
if (!this.isNewData) {
|
|
193
|
-
this.embedView.
|
|
198
|
+
this.embedView.call(ViewCallTag.LOAD);
|
|
194
199
|
}
|
|
195
200
|
});
|
|
196
201
|
this.embedView.evt.on('onDataChange', event => {
|
|
@@ -328,6 +328,7 @@ export class GridController
|
|
|
328
328
|
);
|
|
329
329
|
this.state.groups.push({
|
|
330
330
|
caption: codeListItem?.text || `${key}`,
|
|
331
|
+
key,
|
|
331
332
|
children: value,
|
|
332
333
|
});
|
|
333
334
|
});
|
|
@@ -510,7 +511,6 @@ export class GridController
|
|
|
510
511
|
rowState.data = res.data;
|
|
511
512
|
rowState.modified = false;
|
|
512
513
|
|
|
513
|
-
ibiz.message.success(`${res.data.srfmajortext || ''}保存成功`);
|
|
514
514
|
this.actionNotification(`${isCreate ? 'CREATE' : 'UPDATE'}SUCCESS`, {
|
|
515
515
|
default: `${res.data.srfmajortext || ''}保存成功`,
|
|
516
516
|
data: res.data,
|