@ibiz-template/runtime 0.1.21 → 0.1.22
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 +902 -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/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/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/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/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 +5 -5
- 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/index.ts +1 -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/service/dto/method.dto.ts +1 -2
- package/src/service/service/entity/method/method.ts +3 -1
- 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
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
import { RuntimeError, RuntimeModelError } from '@ibiz-template/core';
|
|
2
|
+
import { isNil } from 'ramda';
|
|
3
|
+
import { calcDeCodeNameById } from '../../../model';
|
|
4
|
+
import { ControlVO } from '../../../service';
|
|
5
|
+
import { UIActionUtil } from '../../../ui-action';
|
|
6
|
+
import { ButtonContainerState, UIActionButtonState } from '../../utils';
|
|
7
|
+
import { DataViewControlController } from '../data-view';
|
|
8
|
+
import { KanbanService } from './kanban.service';
|
|
9
|
+
export class KanbanController extends DataViewControlController {
|
|
10
|
+
/**
|
|
11
|
+
* 允许调整顺序
|
|
12
|
+
* @author lxm
|
|
13
|
+
* @date 2023-09-11 04:02:39
|
|
14
|
+
* @readonly
|
|
15
|
+
* @type {boolean}
|
|
16
|
+
*/
|
|
17
|
+
get enableEditOrder() {
|
|
18
|
+
return this.model.enableCardEditOrder === true;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* 是否支持调整分组。
|
|
22
|
+
* @author lxm
|
|
23
|
+
* @date 2023-09-11 04:04:00
|
|
24
|
+
* @readonly
|
|
25
|
+
* @type {boolean}
|
|
26
|
+
*/
|
|
27
|
+
get enableEditGroup() {
|
|
28
|
+
return this.model.enableCardEditGroup === true;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* 是否允许新建
|
|
32
|
+
* @author lxm
|
|
33
|
+
* @date 2023-09-11 04:05:25
|
|
34
|
+
* @readonly
|
|
35
|
+
* @type {boolean}
|
|
36
|
+
*/
|
|
37
|
+
get enableNew() {
|
|
38
|
+
return this.model.enableCardNew === true;
|
|
39
|
+
}
|
|
40
|
+
async initControlService() {
|
|
41
|
+
this.service = new KanbanService(this.model);
|
|
42
|
+
await this.service.init(this.context);
|
|
43
|
+
}
|
|
44
|
+
initState() {
|
|
45
|
+
super.initState();
|
|
46
|
+
this.state.size = this.model.pagingSize || 1000;
|
|
47
|
+
this.state.updating = false;
|
|
48
|
+
// 支持调整顺序和分组时
|
|
49
|
+
this.state.draggable = this.enableEditOrder || this.enableEditGroup;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* 初始化
|
|
53
|
+
*
|
|
54
|
+
* @protected
|
|
55
|
+
* @return {*} {Promise<void>}
|
|
56
|
+
* @memberof KanbanController
|
|
57
|
+
*/
|
|
58
|
+
async onCreated() {
|
|
59
|
+
await super.onCreated();
|
|
60
|
+
await this.initGroupActionStates();
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* 初始化分组右侧界面行为按钮的状态
|
|
64
|
+
*
|
|
65
|
+
* @author chitanda
|
|
66
|
+
* @date 2023-08-02 17:08:04
|
|
67
|
+
* @return {*} {Promise<void>}
|
|
68
|
+
*/
|
|
69
|
+
async initGroupActionStates() {
|
|
70
|
+
var _a;
|
|
71
|
+
const { groupUIActionGroup } = this.model;
|
|
72
|
+
if (!((_a = groupUIActionGroup === null || groupUIActionGroup === void 0 ? void 0 : groupUIActionGroup.uiactionGroupDetails) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const containerState = new ButtonContainerState();
|
|
76
|
+
groupUIActionGroup.uiactionGroupDetails.forEach(detail => {
|
|
77
|
+
const actionid = detail.uiactionId;
|
|
78
|
+
if (actionid) {
|
|
79
|
+
const buttonState = new UIActionButtonState(detail.id, this.context.srfappid, actionid);
|
|
80
|
+
containerState.addState(detail.id, buttonState);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
await containerState.update();
|
|
84
|
+
this.state.groupActionGroupState = containerState;
|
|
85
|
+
this.evt.on('onSelectionChange', event => {
|
|
86
|
+
let data = event.data[0];
|
|
87
|
+
if (data && data instanceof ControlVO) {
|
|
88
|
+
data = data.getOrigin();
|
|
89
|
+
}
|
|
90
|
+
if (data) {
|
|
91
|
+
this.state.groupActionGroupState.update(data, this.model.appDataEntityId);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* 本地排序items
|
|
97
|
+
* @author lxm
|
|
98
|
+
* @date 2023-09-04 09:30:55
|
|
99
|
+
* @param {IData[]} items
|
|
100
|
+
*/
|
|
101
|
+
sortItems(items) {
|
|
102
|
+
const sortField = this.model.minorSortAppDEFieldId;
|
|
103
|
+
const { minorSortDir } = this.model;
|
|
104
|
+
if (!sortField) {
|
|
105
|
+
throw new RuntimeModelError(this.model, '排序属性没配置');
|
|
106
|
+
}
|
|
107
|
+
if (!minorSortDir) {
|
|
108
|
+
throw new RuntimeModelError(this.model, '排序方向没配置');
|
|
109
|
+
}
|
|
110
|
+
const isAsc = minorSortDir === 'ASC';
|
|
111
|
+
// 格式化排序属性的值
|
|
112
|
+
items.forEach(item => {
|
|
113
|
+
const sortValue = item[sortField];
|
|
114
|
+
if (isNil(sortValue)) {
|
|
115
|
+
item[sortField] = 0;
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
const toNum = Number(sortValue);
|
|
119
|
+
if (Number.isNaN(toNum)) {
|
|
120
|
+
throw new RuntimeError(`${item.srfmajortext}的排序属性无法转换成数值`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
// 排序
|
|
125
|
+
items.sort((a, b) => isAsc ? a[sortField] - b[sortField] : b[sortField] - a[sortField]);
|
|
126
|
+
}
|
|
127
|
+
async afterLoad(args, items) {
|
|
128
|
+
// 每次加载回来先本地排序,把数据的排序属性规范一下
|
|
129
|
+
this.sortItems(this.state.items);
|
|
130
|
+
return super.afterLoad(args, items);
|
|
131
|
+
}
|
|
132
|
+
handleDataGroup() {
|
|
133
|
+
if (!this.model.enableGroup || this.model.groupMode === 'NONE') {
|
|
134
|
+
throw new RuntimeError('看板部件必须开启分组');
|
|
135
|
+
}
|
|
136
|
+
return super.handleDataGroup();
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* 拖拽变更事件处理回调
|
|
140
|
+
* @author lxm
|
|
141
|
+
* @date 2023-09-11 04:12:58
|
|
142
|
+
* @param {IDragChangeInfo} info
|
|
143
|
+
* @return {*} {Promise<void>}
|
|
144
|
+
*/
|
|
145
|
+
async onDragChange(info) {
|
|
146
|
+
if (!this.enableEditGroup) {
|
|
147
|
+
if (info.from !== info.to) {
|
|
148
|
+
ibiz.message.warning('当前看板不允许调整分组!');
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
const isAsc = this.model.minorSortDir === 'ASC';
|
|
153
|
+
const { from, to, fromIndex, toIndex } = info;
|
|
154
|
+
const groupField = this.model.groupAppDEFieldId;
|
|
155
|
+
const sortField = this.model.minorSortAppDEFieldId;
|
|
156
|
+
const modifiedItems = [];
|
|
157
|
+
const fromGroup = this.state.groups.find(x => x.key === from);
|
|
158
|
+
const toGroup = this.state.groups.find(x => x.key === to);
|
|
159
|
+
if (!this.enableEditOrder) {
|
|
160
|
+
if (info.from === info.to) {
|
|
161
|
+
ibiz.message.warning('当前看板不允许调整次序');
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
// 只修改分组不管排序
|
|
165
|
+
const draggedItem = fromGroup.children[fromIndex];
|
|
166
|
+
draggedItem[groupField] = info.to; // 变更分组
|
|
167
|
+
return this.updateChangedItems([draggedItem]);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* 获取下一个100的倍数
|
|
171
|
+
* @author lxm
|
|
172
|
+
* @date 2023-09-11 10:03:46
|
|
173
|
+
* @param {number} num
|
|
174
|
+
* @return {*} {number}
|
|
175
|
+
*/
|
|
176
|
+
const getNextSort = (num) => {
|
|
177
|
+
return num + (100 - (num % 100));
|
|
178
|
+
};
|
|
179
|
+
const originArr = [...toGroup.children];
|
|
180
|
+
const changedArr = [...toGroup.children];
|
|
181
|
+
// 计算出拖拽前和拖拽后的数组
|
|
182
|
+
const draggedItem = fromGroup.children[fromIndex];
|
|
183
|
+
if (info.from !== info.to) {
|
|
184
|
+
draggedItem[groupField] = info.to; // 变更分组
|
|
185
|
+
changedArr.splice(toIndex, 0, draggedItem);
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
changedArr.splice(fromIndex, 1);
|
|
189
|
+
changedArr.splice(toIndex, 0, draggedItem);
|
|
190
|
+
}
|
|
191
|
+
// 前台先改值
|
|
192
|
+
const removeItems = fromGroup.children.splice(fromIndex, 1);
|
|
193
|
+
toGroup.children.splice(toIndex, 0, ...removeItems);
|
|
194
|
+
// 降序把数组反转,保证两个数组都是从小到大排
|
|
195
|
+
if (!isAsc) {
|
|
196
|
+
originArr.reverse();
|
|
197
|
+
changedArr.reverse();
|
|
198
|
+
}
|
|
199
|
+
let lastSort;
|
|
200
|
+
let cacheArr = []; // 缓存的不修改数组
|
|
201
|
+
let cacheLastSort; // 缓存不修改数组第一个元素上一个排序值
|
|
202
|
+
changedArr.forEach((item, index) => {
|
|
203
|
+
if (lastSort === undefined) {
|
|
204
|
+
// 第一次出现要调整顺序的,如果不是0用原来位置的排序值,否则使用100
|
|
205
|
+
if (item !== originArr[index]) {
|
|
206
|
+
if (!originArr[index]) {
|
|
207
|
+
// 从别的分组挪进来的且处于末尾时使用上一个元素的排序值的后一个100
|
|
208
|
+
lastSort =
|
|
209
|
+
index === 0 ? 100 : getNextSort(originArr[index - 1][sortField]);
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
lastSort = originArr[index][sortField] || 100; // 如果是0的时候给100否则用原来的
|
|
213
|
+
}
|
|
214
|
+
item[sortField] = lastSort;
|
|
215
|
+
modifiedItems.push(item);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
// 如果当前排序值比上一个小,提升它的排序值
|
|
220
|
+
if (lastSort >= item[sortField]) {
|
|
221
|
+
if (cacheArr.length > 0) {
|
|
222
|
+
cacheArr.forEach(cache => {
|
|
223
|
+
cache[sortField] = getNextSort(cacheLastSort);
|
|
224
|
+
modifiedItems.push(cache);
|
|
225
|
+
cacheLastSort = cache[sortField];
|
|
226
|
+
});
|
|
227
|
+
lastSort = cacheLastSort;
|
|
228
|
+
cacheLastSort = 0;
|
|
229
|
+
cacheArr = [];
|
|
230
|
+
}
|
|
231
|
+
item[sortField] = getNextSort(lastSort);
|
|
232
|
+
modifiedItems.push(item);
|
|
233
|
+
}
|
|
234
|
+
else {
|
|
235
|
+
if (cacheArr.length === 0) {
|
|
236
|
+
cacheLastSort = lastSort;
|
|
237
|
+
}
|
|
238
|
+
cacheArr.push(item);
|
|
239
|
+
}
|
|
240
|
+
lastSort = item[sortField];
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
this.updateChangedItems(modifiedItems);
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* 批量更新修改的项,并更新后台返回的数据,然后重新计算分组和排序
|
|
247
|
+
* @author lxm
|
|
248
|
+
* @date 2023-09-11 04:13:15
|
|
249
|
+
* @param {ControlVO[]} changedItems
|
|
250
|
+
* @return {*} {Promise<void>}
|
|
251
|
+
*/
|
|
252
|
+
async updateChangedItems(changedItems) {
|
|
253
|
+
try {
|
|
254
|
+
this.state.updating = true;
|
|
255
|
+
await Promise.all(changedItems.map(async (item) => {
|
|
256
|
+
// 往上下文添加主键
|
|
257
|
+
const deName = calcDeCodeNameById(this.model.appDataEntityId);
|
|
258
|
+
const tempContext = this.context.clone();
|
|
259
|
+
tempContext[deName] = item.srfkey;
|
|
260
|
+
// 调用接口修改数据
|
|
261
|
+
const res = await this.service.updateGroup(tempContext, item);
|
|
262
|
+
// 更新完之后更新state里的数据。
|
|
263
|
+
if (res.data) {
|
|
264
|
+
const index = this.state.items.findIndex(x => x.srfkey === item.srfkey);
|
|
265
|
+
this.state.items.splice(index, 1, res.data);
|
|
266
|
+
}
|
|
267
|
+
}));
|
|
268
|
+
}
|
|
269
|
+
finally {
|
|
270
|
+
this.state.updating = false;
|
|
271
|
+
await this.afterLoad({}, this.state.items);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* 点击新建
|
|
276
|
+
* @author lxm
|
|
277
|
+
* @date 2023-09-11 07:22:33
|
|
278
|
+
* @param {MouseEvent} event
|
|
279
|
+
* @param {(string | number)} group 分组标识
|
|
280
|
+
*/
|
|
281
|
+
onClickNew(event, group) {
|
|
282
|
+
const params = Object.assign(Object.assign({}, this.params), { srfgroup: group });
|
|
283
|
+
UIActionUtil.execAndResolved('new', {
|
|
284
|
+
context: this.context,
|
|
285
|
+
params,
|
|
286
|
+
data: [],
|
|
287
|
+
view: this.view,
|
|
288
|
+
event,
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* 分组工具栏点击处理回调
|
|
293
|
+
* @author lxm
|
|
294
|
+
* @date 2023-09-11 04:48:06
|
|
295
|
+
* @param {IUIActionGroupDetail} detail
|
|
296
|
+
* @param {MouseEvent} event
|
|
297
|
+
* @return {*} {Promise<void>}
|
|
298
|
+
*/
|
|
299
|
+
async onGroupToolbarClick(detail, event, group) {
|
|
300
|
+
const actionId = detail.uiactionId;
|
|
301
|
+
const params = Object.assign(Object.assign({}, this.params), { srfgroup: group });
|
|
302
|
+
await UIActionUtil.execAndResolved(actionId, {
|
|
303
|
+
context: this.context,
|
|
304
|
+
params,
|
|
305
|
+
data: this.state.selectedData,
|
|
306
|
+
view: this.view,
|
|
307
|
+
event,
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { IHttpResponse } from '@ibiz-template/core';
|
|
2
|
+
import { IDEKanban } from '@ibiz/model-core';
|
|
3
|
+
import { ControlVO } from '../../../service';
|
|
4
|
+
import { DataViewControlService } from '../data-view';
|
|
5
|
+
/**
|
|
6
|
+
* 看板(kanban)部件服务
|
|
7
|
+
*
|
|
8
|
+
* @export
|
|
9
|
+
* @class DataViewControlService
|
|
10
|
+
* @extends {MDControlService<IDEDataView>}
|
|
11
|
+
*/
|
|
12
|
+
export declare class KanbanService extends DataViewControlService<IDEKanban> {
|
|
13
|
+
/**
|
|
14
|
+
* 更新分组数据
|
|
15
|
+
*
|
|
16
|
+
* @author lxm
|
|
17
|
+
* @date 2022-09-07 19:09:11
|
|
18
|
+
* @param {IParams} context 上下文
|
|
19
|
+
* @param {ControlVO} data 数据
|
|
20
|
+
* @returns {*}
|
|
21
|
+
*/
|
|
22
|
+
updateGroup(context: IParams, data: ControlVO): Promise<IHttpResponse<ControlVO>>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=kanban.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kanban.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/kanban/kanban.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;;;;GAMG;AACH,qBAAa,aAAc,SAAQ,sBAAsB,CAAC,SAAS,CAAC;IAClE;;;;;;;;OAQG;IACG,WAAW,CACf,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;CAOrC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { DataViewControlService } from '../data-view';
|
|
2
|
+
/**
|
|
3
|
+
* 看板(kanban)部件服务
|
|
4
|
+
*
|
|
5
|
+
* @export
|
|
6
|
+
* @class DataViewControlService
|
|
7
|
+
* @extends {MDControlService<IDEDataView>}
|
|
8
|
+
*/
|
|
9
|
+
export class KanbanService extends DataViewControlService {
|
|
10
|
+
/**
|
|
11
|
+
* 更新分组数据
|
|
12
|
+
*
|
|
13
|
+
* @author lxm
|
|
14
|
+
* @date 2022-09-07 19:09:11
|
|
15
|
+
* @param {IParams} context 上下文
|
|
16
|
+
* @param {ControlVO} data 数据
|
|
17
|
+
* @returns {*}
|
|
18
|
+
*/
|
|
19
|
+
async updateGroup(context, data) {
|
|
20
|
+
var _a;
|
|
21
|
+
const updateAction = ((_a = this.model.updateGroupControlAction) === null || _a === void 0 ? void 0 : _a.appDEMethodId) || 'update';
|
|
22
|
+
let res = await this.exec(updateAction, context, data.getOrigin());
|
|
23
|
+
res = this.handleResponse(res);
|
|
24
|
+
return res;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/list/list.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EACL,UAAU,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAGjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,cACX,SAAQ,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAC3D,YAAW,eAAe;IAElB,OAAO,EAAE,WAAW,CAAC;IAE7B,SAAS,CAAC,SAAS,IAAI,IAAI;cAKX,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAO1C;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAenD;;;;;;;;OAQG;IACH,SAAS,KAAK,sBAAsB,IAAI,kBAAkB,GAAG,SAAS,CAKrE;IAED;;;;;;;;OAQG;IACH,SAAS,KAAK,sBAAsB,IAAI,kBAAkB,GAAG,SAAS,CAKrE;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI;IAatC;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAMzB,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAKzE;;;;;;;OAOG;IACH,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI;IAI7B;;;;;;;OAOG;IACH,UAAU,IAAI,KAAK,EAAE;IAIrB;;;;OAIG;cACa,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAWhD;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"list.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/list/list.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EACL,UAAU,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAGjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,cACX,SAAQ,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAC3D,YAAW,eAAe;IAElB,OAAO,EAAE,WAAW,CAAC;IAE7B,SAAS,CAAC,SAAS,IAAI,IAAI;cAKX,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAO1C;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAenD;;;;;;;;OAQG;IACH,SAAS,KAAK,sBAAsB,IAAI,kBAAkB,GAAG,SAAS,CAKrE;IAED;;;;;;;;OAQG;IACH,SAAS,KAAK,sBAAsB,IAAI,kBAAkB,GAAG,SAAS,CAKrE;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI;IAatC;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAMzB,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAKzE;;;;;;;OAOG;IACH,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI;IAI7B;;;;;;;OAOG;IACH,UAAU,IAAI,KAAK,EAAE;IAIrB;;;;OAIG;cACa,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAWhD;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,IAAI;IAsBjC;;;;OAIG;cACa,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;CAoCrD"}
|
|
@@ -148,6 +148,7 @@ export class ListController extends MDControlController {
|
|
|
148
148
|
childrenMap.forEach((value, key) => {
|
|
149
149
|
groups.push({
|
|
150
150
|
caption: key,
|
|
151
|
+
key,
|
|
151
152
|
children: [...value],
|
|
152
153
|
});
|
|
153
154
|
});
|
|
@@ -171,6 +172,7 @@ export class ListController extends MDControlController {
|
|
|
171
172
|
const value = items.filter((item) => item[groupAppDEFieldId] === codeListItem.value);
|
|
172
173
|
groups.push({
|
|
173
174
|
caption: codeListItem.text,
|
|
175
|
+
key: codeListItem.value,
|
|
174
176
|
children: [...value],
|
|
175
177
|
});
|
|
176
178
|
keys.push(codeListItem.value);
|
|
@@ -179,6 +181,7 @@ export class ListController extends MDControlController {
|
|
|
179
181
|
if (otherGroup.length > 0) {
|
|
180
182
|
groups.push({
|
|
181
183
|
caption: '其他',
|
|
184
|
+
key: '其他',
|
|
182
185
|
children: [...otherGroup],
|
|
183
186
|
});
|
|
184
187
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/list/list.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAc,MAAM,kBAAkB,CAAC;AAEhE;;;;;;;GAOG;AACH,qBAAa,WAAY,SAAQ,gBAAgB,CAAC,OAAO,CAAC;IACxD;;;;;OAKG;IACH,aAAa,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"list.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/list/list.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAc,MAAM,kBAAkB,CAAC;AAEhE;;;;;;;GAOG;AACH,qBAAa,WAAY,SAAQ,gBAAgB,CAAC,OAAO,CAAC;IACxD;;;;;OAKG;IACH,aAAa,IAAI,IAAI;CAqBtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"md-ctrl.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/md-ctrl/md-ctrl.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAc,MAAM,kBAAkB,CAAC;AAEhE;;;;;;;;GAQG;AACH,qBAAa,aAAc,SAAQ,gBAAgB,CAAC,YAAY,CAAC;IAC/D;;;;;OAKG;IACH,aAAa,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"md-ctrl.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/md-ctrl/md-ctrl.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAc,MAAM,kBAAkB,CAAC;AAEhE;;;;;;;;GAQG;AACH,qBAAa,aAAc,SAAQ,gBAAgB,CAAC,YAAY,CAAC;IAC/D;;;;;OAKG;IACH,aAAa,IAAI,IAAI;CAqBtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pickup-view-panel.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/pickup-view-panel/pickup-view-panel.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"pickup-view-panel.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/pickup-view-panel/pickup-view-panel.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtE,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD;;;;;;;GAOG;AACH,qBAAa,yBACX,SAAQ,iBAAiB,CACvB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,CAEvB,YAAW,0BAA0B;IAErC;;;;;OAKG;IACH,SAAS,EAAG,eAAe,CACzB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,CACrB,CAAC;IAEF;;;;;;OAMG;cACa,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAO1C;;;;OAIG;IACH,YAAY,IAAI,IAAI;IAoBpB;;;;;OAKG;IACH,YAAY,CACV,IAAI,EAAE,eAAe,CACnB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,CACrB,GACA,IAAI;IAqBP;;;;;;;OAOG;IACG,eAAe,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAKzC;;;;;;;OAOG;IACG,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAIrC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ViewCallTag } from '../../../constant';
|
|
1
2
|
import { convertNavData } from '../../../utils';
|
|
2
3
|
import { ControlController } from '../../common';
|
|
3
4
|
/**
|
|
@@ -75,7 +76,7 @@ export class PickupViewPanelController extends ControlController {
|
|
|
75
76
|
* @memberof PickupViewPanelController
|
|
76
77
|
*/
|
|
77
78
|
async getSelectedData() {
|
|
78
|
-
const items = await this.embedView.call(
|
|
79
|
+
const items = await this.embedView.call(ViewCallTag.GET_DATA);
|
|
79
80
|
return items;
|
|
80
81
|
}
|
|
81
82
|
/**
|
|
@@ -87,7 +88,7 @@ export class PickupViewPanelController extends ControlController {
|
|
|
87
88
|
* @memberof PickupViewPanelController
|
|
88
89
|
*/
|
|
89
90
|
async getAllData() {
|
|
90
|
-
const items = await this.embedView.call(
|
|
91
|
+
const items = await this.embedView.call(ViewCallTag.GET_ALL_DATA);
|
|
91
92
|
return items;
|
|
92
93
|
}
|
|
93
94
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { recursiveIterate } from '@ibiz-template/core';
|
|
2
|
-
import { ViewMode } from '../../../constant';
|
|
2
|
+
import { ViewCallTag, ViewMode } from '../../../constant';
|
|
3
3
|
import { ControlVO } from '../../../service';
|
|
4
4
|
import { UIActionUtil } from '../../../ui-action';
|
|
5
5
|
import { ControlController } from '../../common';
|
|
@@ -38,7 +38,7 @@ export class ToolbarController extends ControlController {
|
|
|
38
38
|
// 执行界面行为
|
|
39
39
|
if (item.itemType === 'DEUIACTION') {
|
|
40
40
|
const actionId = item.uiactionId;
|
|
41
|
-
const res = await this.ctx.view.call(
|
|
41
|
+
const res = await this.ctx.view.call(ViewCallTag.GET_DATA);
|
|
42
42
|
const data = res || [];
|
|
43
43
|
const args = this.getEventArgs();
|
|
44
44
|
args.params = Object.assign(param, args.params);
|
|
@@ -38,6 +38,14 @@ export declare class CTX<V extends IViewController = IViewController> {
|
|
|
38
38
|
* @type {V}
|
|
39
39
|
*/
|
|
40
40
|
view: V;
|
|
41
|
+
/**
|
|
42
|
+
* 是否已经销毁
|
|
43
|
+
*
|
|
44
|
+
* @author chitanda
|
|
45
|
+
* @date 2023-09-11 11:09:57
|
|
46
|
+
* @protected
|
|
47
|
+
*/
|
|
48
|
+
protected isDestroyed: boolean;
|
|
41
49
|
/**
|
|
42
50
|
* CTX事件
|
|
43
51
|
* @author lxm
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ctx.d.ts","sourceRoot":"","sources":["../../../src/controller/ctx/ctx.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,KAAK,QAAQ,GAAG;IACd;;;;OAIG;IACH,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;;;OAIG;IACH,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC;CACpD,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,GAAG,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;
|
|
1
|
+
{"version":3,"file":"ctx.d.ts","sourceRoot":"","sources":["../../../src/controller/ctx/ctx.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,KAAK,QAAQ,GAAG;IACd;;;;OAIG;IACH,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;;;OAIG;IACH,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC;CACpD,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,GAAG,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAgDvC,MAAM,CAAC;IA/C1B;;;;;OAKG;IACH,KAAK,EAAE,QAAQ,CAAC;IAEhB;;;;;OAKG;IACH,IAAI,EAAG,CAAC,CAAC;IAET;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,UAAS;IAE9B;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,oBAA+B;IAE3C;;;;;OAKG;IACH,SAAS,CAAC,cAAc,kIAAkC;IAE1D;;;;;OAKG;gBACgB,MAAM,CAAC,yKAAK;IAI/B;;;;;;OAMG;IACG,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxC;;;;OAIG;IACH,OAAO,IAAI,IAAI;IAOf;;;;;;OAMG;IACG,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D;;;;OAIG;IACH,YAAY,IAAI,IAAI;IAIpB;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAOlB;;;;;;OAMG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI;IAKtD;;;;;;;OAOG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,WAAW,GAAG,SAAS;IASvE;;;;;;;OAOG;IACH,UAAU,IAAI,eAAe;CAS9B"}
|
|
@@ -17,6 +17,14 @@ export class CTX {
|
|
|
17
17
|
*/
|
|
18
18
|
constructor(parent) {
|
|
19
19
|
this.parent = parent;
|
|
20
|
+
/**
|
|
21
|
+
* 是否已经销毁
|
|
22
|
+
*
|
|
23
|
+
* @author chitanda
|
|
24
|
+
* @date 2023-09-11 11:09:57
|
|
25
|
+
* @protected
|
|
26
|
+
*/
|
|
27
|
+
this.isDestroyed = false;
|
|
20
28
|
/**
|
|
21
29
|
* CTX事件
|
|
22
30
|
* @author lxm
|
|
@@ -54,6 +62,7 @@ export class CTX {
|
|
|
54
62
|
this.controllersMap.clear();
|
|
55
63
|
this.view = null;
|
|
56
64
|
this.state = null;
|
|
65
|
+
this.isDestroyed = true;
|
|
57
66
|
}
|
|
58
67
|
/**
|
|
59
68
|
* 修改上下文环境状态
|
|
@@ -79,6 +88,9 @@ export class CTX {
|
|
|
79
88
|
* @date 2023-03-27 01:59:35
|
|
80
89
|
*/
|
|
81
90
|
endLoading() {
|
|
91
|
+
if (this.isDestroyed) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
82
94
|
this.view.endLoading();
|
|
83
95
|
}
|
|
84
96
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle-src-val.d.ts","sourceRoot":"","sources":["../../../src/de-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,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,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/de-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,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,cAAc,EACnB,YAAY,EAAE,YAAY,GACzB,OAAO,CAiDT"}
|
|
@@ -30,12 +30,14 @@ export function handleSrcVal(ctx, srcValParams) {
|
|
|
30
30
|
// 直接值
|
|
31
31
|
case 'SRCVALUE':
|
|
32
32
|
return srcValue;
|
|
33
|
-
//
|
|
34
|
-
case 'VIEWPARAM':
|
|
33
|
+
case 'WEBCONTEXT': // 网页请求上下文
|
|
34
|
+
case 'VIEWPARAM': // 视图参数
|
|
35
35
|
value = ctx.viewParams;
|
|
36
36
|
break;
|
|
37
|
-
//
|
|
38
|
-
case '
|
|
37
|
+
case 'APPLICATION': // 系统全局对象
|
|
38
|
+
case 'SESSION': // 用户全局对象
|
|
39
|
+
case 'APPDATA': // 应用上下文
|
|
40
|
+
case 'DATACONTEXT': // 数据上下文
|
|
39
41
|
value = ctx.context;
|
|
40
42
|
break;
|
|
41
43
|
// 当前环境参数
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-base.engine.d.ts","sourceRoot":"","sources":["../../src/engine/view-base.engine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"view-base.engine.d.ts","sourceRoot":"","sources":["../../src/engine/view-base.engine.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,0BAA0B,EAC3B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,WAAW;IAmEpC,SAAS,CAAC,IAAI,EAAE,eAAe;IAlE3C;;;;;;;OAOG;IACH,SAAS,KAAK,OAAO,IAAI,kBAAkB,GAAG,SAAS,CAEtD;IAED;;;;;;;OAOG;IACH,SAAS,KAAK,WAAW,IAAI,kBAAkB,GAAG,SAAS,CAE1D;IAED;;;;;;;OAOG;IACH,SAAS,KAAK,YAAY,IAAI,kBAAkB,GAAG,SAAS,CAE3D;IAED;;;;;;;OAOG;IACH,SAAS,KAAK,aAAa,IAAI,kBAAkB,GAAG,SAAS,CAE5D;IAED;;;;;;;OAOG;IACH,SAAS,KAAK,eAAe,IAAI,0BAA0B,GAAG,SAAS,CAEtE;IAED;;;;;OAKG;gBACmB,IAAI,EAAE,eAAe;IAIrC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB1B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IAOzE;;;;;OAKG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;IAI/B;;;;;OAKG;IACH,SAAS,CAAC,OAAO,IAAI,KAAK,EAAE;IAI5B;;;;;;;OAOG;IACH,SAAS,CAAC,qBAAqB,IAAI,OAAO;IAgD1C;;;;;;OAMG;IACH,SAAS,CAAC,qBAAqB,IAAI,OAAO;IAW1C;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CAuBtC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { RuntimeError } from '@ibiz-template/core';
|
|
2
|
+
import { ViewCallTag } from '../constant';
|
|
2
3
|
/**
|
|
3
4
|
* 视图引擎基类
|
|
4
5
|
* @author lxm
|
|
@@ -103,7 +104,7 @@ export class ViewEngineBase {
|
|
|
103
104
|
// 子类重写
|
|
104
105
|
}
|
|
105
106
|
async call(key, _args) {
|
|
106
|
-
if (key ===
|
|
107
|
+
if (key === ViewCallTag.GET_DATA) {
|
|
107
108
|
return this.getData();
|
|
108
109
|
}
|
|
109
110
|
return undefined;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 拖拽变更信息
|
|
3
|
+
* @author lxm
|
|
4
|
+
* @date 2023-08-30 04:23:41
|
|
5
|
+
* @export
|
|
6
|
+
* @interface IDragChangeInfo
|
|
7
|
+
*/
|
|
8
|
+
export interface IDragChangeInfo {
|
|
9
|
+
/**
|
|
10
|
+
* 变更前的分组标识
|
|
11
|
+
* @author lxm
|
|
12
|
+
* @date 2023-08-30 04:24:25
|
|
13
|
+
* @type {string}
|
|
14
|
+
*/
|
|
15
|
+
from: string | number;
|
|
16
|
+
/**
|
|
17
|
+
* 变更后的分组标识
|
|
18
|
+
* @author lxm
|
|
19
|
+
* @date 2023-08-30 04:24:45
|
|
20
|
+
* @type {string}
|
|
21
|
+
*/
|
|
22
|
+
to: string | number;
|
|
23
|
+
/**
|
|
24
|
+
* 变更前的索引位置
|
|
25
|
+
* @author lxm
|
|
26
|
+
* @date 2023-08-30 04:25:02
|
|
27
|
+
* @type {number}
|
|
28
|
+
*/
|
|
29
|
+
fromIndex: number;
|
|
30
|
+
/**
|
|
31
|
+
* 变更后的索引位置
|
|
32
|
+
* @author lxm
|
|
33
|
+
* @date 2023-08-30 04:24:53
|
|
34
|
+
* @type {number}
|
|
35
|
+
*/
|
|
36
|
+
toIndex: number;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=i-drag-change-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i-drag-change-info.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/common/i-drag-change-info.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/interface/controller/controller/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC"}
|
|
@@ -9,7 +9,7 @@ import { IMDControlController } from './i-md-control.controller';
|
|
|
9
9
|
* @interface IDataViewControlController
|
|
10
10
|
* @extends {IMDControlController<IDEDataView, IDataViewControlState, IDataViewControlEvent>}
|
|
11
11
|
*/
|
|
12
|
-
export interface IDataViewControlController extends
|
|
12
|
+
export interface IDataViewControlController<T extends IDEDataView = IDEDataView, S extends IDataViewControlState = IDataViewControlState, E extends IDataViewControlEvent = IDataViewControlEvent> extends IMDControlController<T, S, E> {
|
|
13
13
|
/**
|
|
14
14
|
* 加载更多
|
|
15
15
|
*
|