@fecp/designer 5.5.71 → 5.5.73
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/es/designer/package.json.mjs +1 -1
- package/es/designer/src/components/DocumentParam.vue.mjs +1 -1
- package/es/designer/src/components/OptionConfig.vue.mjs +2 -2
- package/es/designer/src/components/ParamsConfig.vue2.mjs +1 -1
- package/es/designer/src/layout/aside/HiddenFieldDialog.vue.mjs +1 -1
- package/es/designer/src/packages/advancedFilter/ValueInput.vue2.mjs +1 -1
- package/es/designer/src/packages/dataLinkage/index.vue.mjs +1 -1
- package/es/designer/src/packages/dialog/useDialogDialog.mjs +1 -1
- package/es/designer/src/packages/dialogGlobal/index.vue2.mjs +1 -1
- package/es/designer/src/packages/dialogGlobal/useDialogGlobalDialog.mjs +1 -1
- package/es/designer/src/packages/eventFlow/dialog/action/FormSubmit.vue2.mjs +17 -8
- package/es/designer/src/packages/eventFlow/dialog/action/RiskSch.vue.mjs +14 -5
- package/es/designer/src/packages/form/property/approvalHistory.vue.mjs +1 -1
- package/es/designer/src/packages/form/property/contract.vue.mjs +1 -1
- package/es/designer/src/packages/form/property/subForm.vue.mjs +1 -1
- package/es/designer/src/packages/form/property/widgets.vue.mjs +2 -2
- package/es/designer/src/packages/formulaEditor/core/calculate.mjs +0 -1
- package/es/designer/src/packages/prod/index.vue.mjs +1 -1
- package/es/designer/src/packages/table/headerBtn.vue.mjs +1 -1
- package/es/designer.css +228 -64
- package/es/packages/mobile/src/components/base/card/Card.vue.mjs +2 -2
- package/es/packages/mobile/src/components/navigation/actionBar/ActionBar.vue.mjs +4 -4
- package/es/packages/vue/src/components/bus/approvalHistory/ApproveIdea.vue.mjs +64 -0
- package/es/packages/vue/src/components/bus/approvalHistory/timeLine.vue.mjs +37 -46
- package/es/packages/vue/src/components/bus/contract/Contract.vue.mjs +6 -1
- package/es/packages/vue/src/components/bus/document/Document.vue.mjs +15 -1
- package/es/packages/vue/src/components/details/main/Main.vue.mjs +1 -1
- package/es/packages/vue/src/components/forms/form/Form.vue.mjs +46 -30
- package/es/packages/vue/src/utils/eventFlow/actionHandlers.mjs +32 -4
- package/lib/designer/package.json.js +1 -1
- package/lib/designer/src/components/DocumentParam.vue.js +1 -1
- package/lib/designer/src/components/OptionConfig.vue.js +2 -2
- package/lib/designer/src/components/ParamsConfig.vue2.js +1 -1
- package/lib/designer/src/layout/aside/HiddenFieldDialog.vue.js +1 -1
- package/lib/designer/src/packages/advancedFilter/ValueInput.vue2.js +1 -1
- package/lib/designer/src/packages/dataLinkage/index.vue.js +1 -1
- package/lib/designer/src/packages/dialog/useDialogDialog.js +1 -1
- package/lib/designer/src/packages/dialogGlobal/index.vue2.js +1 -1
- package/lib/designer/src/packages/dialogGlobal/useDialogGlobalDialog.js +1 -1
- package/lib/designer/src/packages/eventFlow/dialog/action/FormSubmit.vue2.js +17 -8
- package/lib/designer/src/packages/eventFlow/dialog/action/RiskSch.vue.js +14 -5
- package/lib/designer/src/packages/form/property/approvalHistory.vue.js +1 -1
- package/lib/designer/src/packages/form/property/contract.vue.js +1 -1
- package/lib/designer/src/packages/form/property/subForm.vue.js +1 -1
- package/lib/designer/src/packages/form/property/widgets.vue.js +2 -2
- package/lib/designer/src/packages/formulaEditor/core/calculate.js +0 -1
- package/lib/designer/src/packages/prod/index.vue.js +1 -1
- package/lib/designer/src/packages/table/headerBtn.vue.js +1 -1
- package/lib/designer.css +228 -64
- package/lib/packages/mobile/src/components/base/card/Card.vue.js +2 -2
- package/lib/packages/mobile/src/components/navigation/actionBar/ActionBar.vue.js +3 -3
- package/lib/packages/vue/src/components/bus/approvalHistory/ApproveIdea.vue.js +64 -0
- package/lib/packages/vue/src/components/bus/approvalHistory/timeLine.vue.js +37 -46
- package/lib/packages/vue/src/components/bus/contract/Contract.vue.js +6 -1
- package/lib/packages/vue/src/components/bus/document/Document.vue.js +15 -1
- package/lib/packages/vue/src/components/details/main/Main.vue.js +1 -1
- package/lib/packages/vue/src/components/forms/form/Form.vue.js +45 -29
- package/lib/packages/vue/src/utils/eventFlow/actionHandlers.js +32 -4
- package/package.json +1 -1
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const Vue = require("vue");
|
|
4
|
+
;/* empty css */
|
|
5
|
+
const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.js");
|
|
6
|
+
const _hoisted_1 = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "app-content"
|
|
9
|
+
};
|
|
10
|
+
const _sfc_main = {
|
|
11
|
+
__name: "ApproveIdea",
|
|
12
|
+
props: {
|
|
13
|
+
approveDesc: {
|
|
14
|
+
type: String,
|
|
15
|
+
default: ""
|
|
16
|
+
},
|
|
17
|
+
uniqueKey: {
|
|
18
|
+
type: String,
|
|
19
|
+
required: true
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
setup(__props) {
|
|
23
|
+
const props = __props;
|
|
24
|
+
const ideaRef = Vue.ref(null);
|
|
25
|
+
const isExpanded = Vue.ref(false);
|
|
26
|
+
const isOverflow = Vue.ref(false);
|
|
27
|
+
const checkOverflow = () => {
|
|
28
|
+
if (!ideaRef.value) return;
|
|
29
|
+
Vue.nextTick(() => {
|
|
30
|
+
isOverflow.value = ideaRef.value.scrollHeight > ideaRef.value.offsetHeight;
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
const toggle = () => {
|
|
34
|
+
isExpanded.value = !isExpanded.value;
|
|
35
|
+
};
|
|
36
|
+
Vue.onMounted(() => {
|
|
37
|
+
checkOverflow();
|
|
38
|
+
});
|
|
39
|
+
Vue.watch(
|
|
40
|
+
() => props.approveDesc,
|
|
41
|
+
() => {
|
|
42
|
+
isExpanded.value = false;
|
|
43
|
+
checkOverflow();
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
return (_ctx, _cache) => {
|
|
47
|
+
return __props.approveDesc ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
|
|
48
|
+
Vue.createElementVNode("div", {
|
|
49
|
+
class: Vue.normalizeClass(["approveIdea", { "is-expanded": isExpanded.value || !isOverflow.value }]),
|
|
50
|
+
ref: (el) => {
|
|
51
|
+
if (el) ideaRef.value = el;
|
|
52
|
+
}
|
|
53
|
+
}, Vue.toDisplayString(__props.approveDesc), 3),
|
|
54
|
+
isOverflow.value ? (Vue.openBlock(), Vue.createElementBlock("div", {
|
|
55
|
+
key: 0,
|
|
56
|
+
class: "approve-toggle",
|
|
57
|
+
onClick: toggle
|
|
58
|
+
}, Vue.toDisplayString(isExpanded.value ? "收起" : "展开"), 1)) : Vue.createCommentVNode("", true)
|
|
59
|
+
])) : Vue.createCommentVNode("", true);
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const ApproveIdea = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-f893cd22"]]);
|
|
64
|
+
exports.default = ApproveIdea;
|
|
@@ -11,6 +11,7 @@ require("../../../../../../node_modules/element-plus/es/index.js");
|
|
|
11
11
|
const Vue = require("vue");
|
|
12
12
|
const index = require("./api/index.js");
|
|
13
13
|
const getInstance = require("../../../utils/getInstance.js");
|
|
14
|
+
const ApproveIdea = require("./ApproveIdea.vue.js");
|
|
14
15
|
;/* empty css */
|
|
15
16
|
const index$1 = require("../../../../../../node_modules/element-plus/es/components/scrollbar/index.js");
|
|
16
17
|
const index$2 = require("../../../../../../node_modules/element-plus/es/components/timeline/index.js");
|
|
@@ -61,40 +62,30 @@ const _hoisted_21 = {
|
|
|
61
62
|
const _hoisted_22 = { class: "app-header" };
|
|
62
63
|
const _hoisted_23 = { class: "approveType" };
|
|
63
64
|
const _hoisted_24 = { class: "duration" };
|
|
64
|
-
const _hoisted_25 = {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
};
|
|
68
|
-
const _hoisted_26 = { class: "approveIdea" };
|
|
69
|
-
const _hoisted_27 = { class: "app-footer" };
|
|
70
|
-
const _hoisted_28 = { class: "endTime" };
|
|
71
|
-
const _hoisted_29 = {
|
|
65
|
+
const _hoisted_25 = { class: "app-footer" };
|
|
66
|
+
const _hoisted_26 = { class: "endTime" };
|
|
67
|
+
const _hoisted_27 = {
|
|
72
68
|
key: 0,
|
|
73
69
|
class: "assignee"
|
|
74
70
|
};
|
|
75
|
-
const
|
|
76
|
-
const
|
|
71
|
+
const _hoisted_28 = { class: "assignee-name" };
|
|
72
|
+
const _hoisted_29 = {
|
|
77
73
|
key: 1,
|
|
78
74
|
class: "assignee"
|
|
79
75
|
};
|
|
80
|
-
const
|
|
76
|
+
const _hoisted_30 = {
|
|
81
77
|
key: 1,
|
|
82
78
|
class: "signContent"
|
|
83
79
|
};
|
|
84
|
-
const
|
|
85
|
-
const
|
|
86
|
-
const
|
|
87
|
-
const
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
};
|
|
92
|
-
const
|
|
93
|
-
const _hoisted_39 = { class: "app-footer" };
|
|
94
|
-
const _hoisted_40 = { class: "endTime" };
|
|
95
|
-
const _hoisted_41 = { class: "assignee" };
|
|
96
|
-
const _hoisted_42 = { class: "assignee-name" };
|
|
97
|
-
const _hoisted_43 = {
|
|
80
|
+
const _hoisted_31 = { class: "content" };
|
|
81
|
+
const _hoisted_32 = { class: "app-header" };
|
|
82
|
+
const _hoisted_33 = { class: "approveType" };
|
|
83
|
+
const _hoisted_34 = { class: "duration" };
|
|
84
|
+
const _hoisted_35 = { class: "app-footer" };
|
|
85
|
+
const _hoisted_36 = { class: "endTime" };
|
|
86
|
+
const _hoisted_37 = { class: "assignee" };
|
|
87
|
+
const _hoisted_38 = { class: "assignee-name" };
|
|
88
|
+
const _hoisted_39 = {
|
|
98
89
|
key: 1,
|
|
99
90
|
class: "content"
|
|
100
91
|
};
|
|
@@ -259,19 +250,19 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
259
250
|
Vue.createElementVNode("span", _hoisted_23, Vue.toDisplayString(node.approveName || "办理完成"), 1),
|
|
260
251
|
Vue.createElementVNode("span", _hoisted_24, "耗时:" + Vue.toDisplayString(node.duration), 1)
|
|
261
252
|
]),
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
Vue.createElementVNode("div",
|
|
266
|
-
Vue.createElementVNode("span",
|
|
253
|
+
Vue.createVNode(ApproveIdea.default, {
|
|
254
|
+
approveDesc: node.approveDesc
|
|
255
|
+
}, null, 8, ["approveDesc"]),
|
|
256
|
+
Vue.createElementVNode("div", _hoisted_25, [
|
|
257
|
+
Vue.createElementVNode("span", _hoisted_26, [
|
|
267
258
|
_cache[3] || (_cache[3] = Vue.createElementVNode("i", { class: "el-icon-time" }, null, -1)),
|
|
268
259
|
Vue.createTextVNode(Vue.toDisplayString(node.endTime), 1)
|
|
269
260
|
]),
|
|
270
|
-
node.taskType == "task" ? (Vue.openBlock(), Vue.createElementBlock("span",
|
|
261
|
+
node.taskType == "task" ? (Vue.openBlock(), Vue.createElementBlock("span", _hoisted_27, [
|
|
271
262
|
_cache[4] || (_cache[4] = Vue.createTextVNode("处理人:")),
|
|
272
|
-
Vue.createElementVNode("span",
|
|
263
|
+
Vue.createElementVNode("span", _hoisted_28, Vue.toDisplayString(node.assigneeName), 1)
|
|
273
264
|
])) : Vue.createCommentVNode("", true),
|
|
274
|
-
node.taskType == "callActivity" ? (Vue.openBlock(), Vue.createElementBlock("span",
|
|
265
|
+
node.taskType == "callActivity" ? (Vue.openBlock(), Vue.createElementBlock("span", _hoisted_29, [
|
|
275
266
|
Vue.createVNode(_component_el_button, {
|
|
276
267
|
type: "primary",
|
|
277
268
|
link: "",
|
|
@@ -287,29 +278,29 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
287
278
|
_cache[6] || (_cache[6] = Vue.createElementVNode("div", { class: "addNodeList" }, null, -1))
|
|
288
279
|
])
|
|
289
280
|
])) : Vue.createCommentVNode("", true),
|
|
290
|
-
node.taskType == "signTask" ? (Vue.openBlock(), Vue.createElementBlock("div",
|
|
281
|
+
node.taskType == "signTask" ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_30, [
|
|
291
282
|
node.signTaskList && node.signTaskList.length > 0 ? (Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, { key: 0 }, Vue.renderList(node.signTaskList, (sign) => {
|
|
292
|
-
return Vue.openBlock(), Vue.createElementBlock("div",
|
|
293
|
-
Vue.createElementVNode("div",
|
|
294
|
-
Vue.createElementVNode("span",
|
|
295
|
-
Vue.createElementVNode("span",
|
|
283
|
+
return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_31, [
|
|
284
|
+
Vue.createElementVNode("div", _hoisted_32, [
|
|
285
|
+
Vue.createElementVNode("span", _hoisted_33, Vue.toDisplayString(sign.approveName || "办理完成"), 1),
|
|
286
|
+
Vue.createElementVNode("span", _hoisted_34, "耗时:" + Vue.toDisplayString(sign.duration), 1)
|
|
296
287
|
]),
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
Vue.createElementVNode("div",
|
|
301
|
-
Vue.createElementVNode("span",
|
|
288
|
+
Vue.createVNode(ApproveIdea.default, {
|
|
289
|
+
approveDesc: sign.approveDesc
|
|
290
|
+
}, null, 8, ["approveDesc"]),
|
|
291
|
+
Vue.createElementVNode("div", _hoisted_35, [
|
|
292
|
+
Vue.createElementVNode("span", _hoisted_36, [
|
|
302
293
|
_cache[7] || (_cache[7] = Vue.createElementVNode("i", { class: "el-icon-time" }, null, -1)),
|
|
303
294
|
Vue.createTextVNode(Vue.toDisplayString(sign.endTime), 1)
|
|
304
295
|
]),
|
|
305
|
-
Vue.createElementVNode("span",
|
|
296
|
+
Vue.createElementVNode("span", _hoisted_37, [
|
|
306
297
|
_cache[8] || (_cache[8] = Vue.createTextVNode("处理人:")),
|
|
307
|
-
Vue.createElementVNode("span",
|
|
298
|
+
Vue.createElementVNode("span", _hoisted_38, Vue.toDisplayString(sign.assigneeName), 1)
|
|
308
299
|
]),
|
|
309
300
|
_cache[9] || (_cache[9] = Vue.createElementVNode("div", { class: "addNodeList" }, null, -1))
|
|
310
301
|
])
|
|
311
302
|
]);
|
|
312
|
-
}), 256)) : (Vue.openBlock(), Vue.createElementBlock("div",
|
|
303
|
+
}), 256)) : (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_39, _cache[10] || (_cache[10] = [
|
|
313
304
|
Vue.createElementVNode("div", { class: "approve" }, [
|
|
314
305
|
Vue.createElementVNode("span", { class: "point" }),
|
|
315
306
|
Vue.createElementVNode("span", { class: "iconfont icon-flow-default approveIcon approve_color_11" }),
|
|
@@ -5,6 +5,7 @@ require("../../forms/h2/index.js");
|
|
|
5
5
|
const getInstance = require("../../../utils/getInstance.js");
|
|
6
6
|
const parseRouteParams = require("../../../utils/parseRouteParams.js");
|
|
7
7
|
const common = require("../../../utils/common.js");
|
|
8
|
+
const eventBus = require("../../../utils/eventBus.js");
|
|
8
9
|
const _hoisted_1 = { class: "contract-content" };
|
|
9
10
|
const path = "/tech/ctr/components/DocCtrInfoComponent";
|
|
10
11
|
const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
@@ -60,7 +61,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
60
61
|
Vue.onMounted(() => {
|
|
61
62
|
common.loadComponentByPath(path, ctx.$router, currentComponent);
|
|
62
63
|
});
|
|
63
|
-
function loaded(dom) {
|
|
64
|
+
function loaded(dom, visibleData) {
|
|
64
65
|
const foundItem = props.localConfig.fieldsData.find(
|
|
65
66
|
(item) => item.id == props.config.id
|
|
66
67
|
);
|
|
@@ -70,6 +71,10 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
70
71
|
foundItem.h = dom.offsetHeight + titleHeight;
|
|
71
72
|
setFormItemHeight(props.config.id, true, dom.offsetHeight + titleHeight);
|
|
72
73
|
}
|
|
74
|
+
eventBus.default.emit("onSubTableDataLoaded", {
|
|
75
|
+
subTableConfig: props.config,
|
|
76
|
+
visibleData
|
|
77
|
+
});
|
|
73
78
|
}
|
|
74
79
|
return (_ctx, _cache) => {
|
|
75
80
|
return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
|
|
@@ -29,7 +29,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
29
29
|
default: ""
|
|
30
30
|
}
|
|
31
31
|
},
|
|
32
|
-
setup(__props) {
|
|
32
|
+
setup(__props, { expose: __expose }) {
|
|
33
33
|
const props = __props;
|
|
34
34
|
const ctx = getInstance.getCurrentVueInstance();
|
|
35
35
|
Vue.ref("");
|
|
@@ -115,6 +115,18 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
115
115
|
setFormItemHeight(props.config.id, true, dom.offsetHeight + titleHeight);
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
|
+
const docRef = Vue.ref();
|
|
119
|
+
function validate() {
|
|
120
|
+
var _a;
|
|
121
|
+
if (currentComponent.value) {
|
|
122
|
+
return (_a = docRef.value) == null ? void 0 : _a.validateFile();
|
|
123
|
+
} else {
|
|
124
|
+
return Promise.resolve();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
__expose({
|
|
128
|
+
validate
|
|
129
|
+
});
|
|
118
130
|
return (_ctx, _cache) => {
|
|
119
131
|
return Vue.openBlock(), Vue.createElementBlock(Vue.Fragment, null, [
|
|
120
132
|
__props.config.titleMode != "none" ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
|
|
@@ -128,6 +140,8 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
128
140
|
])) : Vue.createCommentVNode("", true),
|
|
129
141
|
Vue.createElementVNode("div", _hoisted_2, [
|
|
130
142
|
(Vue.openBlock(), Vue.createBlock(Vue.resolveDynamicComponent(Vue.unref(currentComponent)), {
|
|
143
|
+
ref_key: "docRef",
|
|
144
|
+
ref: docRef,
|
|
131
145
|
isEdit: __props.formMode != "query",
|
|
132
146
|
isSupplement: __props.config.isSupplement,
|
|
133
147
|
multiple: __props.config.multiple,
|
|
@@ -54,5 +54,5 @@ const _sfc_main = {
|
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
|
-
const component = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
57
|
+
const component = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-29804f13"]]);
|
|
58
58
|
exports.default = component;
|
|
@@ -98,6 +98,10 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
98
98
|
isApproval: {
|
|
99
99
|
type: Boolean,
|
|
100
100
|
default: false
|
|
101
|
+
},
|
|
102
|
+
class: {
|
|
103
|
+
type: String,
|
|
104
|
+
default: ""
|
|
101
105
|
}
|
|
102
106
|
},
|
|
103
107
|
emits: [
|
|
@@ -660,6 +664,15 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
660
664
|
subFormPromises.push((_a = formRef.value) == null ? void 0 : _a.validate());
|
|
661
665
|
return Promise.all(subFormPromises).then(() => getFormData());
|
|
662
666
|
};
|
|
667
|
+
const docValidate = () => {
|
|
668
|
+
const documentComps = gridLayoutFieldsData.value.filter((item) => item.component.fieldType == "document").map((item) => item.component);
|
|
669
|
+
const compPromises = documentComps.map((comp) => {
|
|
670
|
+
var _a;
|
|
671
|
+
const compRef = getFormItemRef(String(comp.id));
|
|
672
|
+
return ((_a = compRef == null ? void 0 : compRef.validate) == null ? void 0 : _a.call(compRef)) || Promise.resolve();
|
|
673
|
+
});
|
|
674
|
+
return Promise.all(compPromises);
|
|
675
|
+
};
|
|
663
676
|
const resetFields = () => {
|
|
664
677
|
var _a, _b;
|
|
665
678
|
(_a = formRef.value) == null ? void 0 : _a.clearValidate();
|
|
@@ -851,10 +864,6 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
851
864
|
};
|
|
852
865
|
const applyLinkageEffectsForChangedFields = (changedFieldNames) => {
|
|
853
866
|
var _a;
|
|
854
|
-
console.log(
|
|
855
|
-
"🚀 ~ applyLinkageEffectsForChangedFields ~ 变化的字段:",
|
|
856
|
-
changedFieldNames
|
|
857
|
-
);
|
|
858
867
|
const linkedConfig = localConfig.value.linkedConfig || {};
|
|
859
868
|
const fields = [...fieldsData.value, ...hiddenFields.value];
|
|
860
869
|
const relevantConfigs = filterRelevantLinkageConfigs(
|
|
@@ -930,40 +939,46 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
930
939
|
rules[fieldName] = prodRules.value[fieldName];
|
|
931
940
|
}
|
|
932
941
|
formRules.value = rules;
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
const layoutFieldItem = updatedLayoutData.find((g) => g.id == fieldId);
|
|
937
|
-
if (layoutFieldItem) {
|
|
938
|
-
layoutFieldItem.component.readOnly = false;
|
|
939
|
-
}
|
|
940
|
-
});
|
|
941
|
-
if (parseFilterConfig.checkFilterMatch(item.filterConfig, formData.value, fields)) {
|
|
942
|
+
if (formMode.value != "query") {
|
|
943
|
+
relevantConfigs.readonly.forEach((item) => {
|
|
944
|
+
const dataLinkFieldList = item.dataLinkFieldList || [];
|
|
942
945
|
dataLinkFieldList.forEach((fieldId) => {
|
|
943
946
|
const layoutFieldItem = updatedLayoutData.find((g) => g.id == fieldId);
|
|
944
947
|
if (layoutFieldItem) {
|
|
945
|
-
layoutFieldItem.component.readOnly =
|
|
948
|
+
layoutFieldItem.component.readOnly = false;
|
|
946
949
|
}
|
|
947
950
|
});
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
951
|
+
if (parseFilterConfig.checkFilterMatch(item.filterConfig, formData.value, fields)) {
|
|
952
|
+
dataLinkFieldList.forEach((fieldId) => {
|
|
953
|
+
const layoutFieldItem = updatedLayoutData.find(
|
|
954
|
+
(g) => g.id == fieldId
|
|
955
|
+
);
|
|
956
|
+
if (layoutFieldItem) {
|
|
957
|
+
layoutFieldItem.component.readOnly = true;
|
|
958
|
+
}
|
|
959
|
+
});
|
|
956
960
|
}
|
|
957
961
|
});
|
|
958
|
-
|
|
962
|
+
relevantConfigs.disabled.forEach((item) => {
|
|
963
|
+
const dataLinkFieldList = item.dataLinkFieldList || [];
|
|
959
964
|
dataLinkFieldList.forEach((fieldId) => {
|
|
960
965
|
const layoutFieldItem = updatedLayoutData.find((g) => g.id == fieldId);
|
|
961
966
|
if (layoutFieldItem) {
|
|
962
|
-
layoutFieldItem.component.disabled =
|
|
967
|
+
layoutFieldItem.component.disabled = false;
|
|
963
968
|
}
|
|
964
969
|
});
|
|
965
|
-
|
|
966
|
-
|
|
970
|
+
if (parseFilterConfig.checkFilterMatch(item.filterConfig, formData.value, fields)) {
|
|
971
|
+
dataLinkFieldList.forEach((fieldId) => {
|
|
972
|
+
const layoutFieldItem = updatedLayoutData.find(
|
|
973
|
+
(g) => g.id == fieldId
|
|
974
|
+
);
|
|
975
|
+
if (layoutFieldItem) {
|
|
976
|
+
layoutFieldItem.component.disabled = true;
|
|
977
|
+
}
|
|
978
|
+
});
|
|
979
|
+
}
|
|
980
|
+
});
|
|
981
|
+
}
|
|
967
982
|
const fieldsConfigArr = updatedLayoutData.filter((item) => !item.hidden);
|
|
968
983
|
gridLayoutFieldsData.value = sortLayoutItems(fieldsConfigArr);
|
|
969
984
|
(_a = gridLayout == null ? void 0 : gridLayout.value) == null ? void 0 : _a.resizeEvent();
|
|
@@ -1079,6 +1094,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
1079
1094
|
Vue.provide("getFormData", getFormData);
|
|
1080
1095
|
__expose({
|
|
1081
1096
|
validate,
|
|
1097
|
+
docValidate,
|
|
1082
1098
|
resetFields,
|
|
1083
1099
|
getFormData,
|
|
1084
1100
|
setFormData,
|
|
@@ -1095,7 +1111,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
1095
1111
|
const _directive_fec_layout = Vue.resolveDirective("fec-layout");
|
|
1096
1112
|
return !configLoading.value ? Vue.withDirectives((Vue.openBlock(), Vue.createBlock(_component_el_container, {
|
|
1097
1113
|
key: 0,
|
|
1098
|
-
class: "fec-form",
|
|
1114
|
+
class: Vue.normalizeClass(["fec-form", __props.class]),
|
|
1099
1115
|
"data-id": localConfig.value.templateKey,
|
|
1100
1116
|
"data-name": localConfig.value.templateName,
|
|
1101
1117
|
"data-pkId": localConfig.value.pkId,
|
|
@@ -1209,11 +1225,11 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
1209
1225
|
})) : Vue.createCommentVNode("", true)
|
|
1210
1226
|
]),
|
|
1211
1227
|
_: 1
|
|
1212
|
-
}, 8, ["data-id", "data-name", "data-pkId"])), [
|
|
1228
|
+
}, 8, ["class", "data-id", "data-name", "data-pkId"])), [
|
|
1213
1229
|
[_directive_fec_layout]
|
|
1214
1230
|
]) : Vue.createCommentVNode("", true);
|
|
1215
1231
|
};
|
|
1216
1232
|
}
|
|
1217
1233
|
});
|
|
1218
|
-
const _Form = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-
|
|
1234
|
+
const _Form = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-d3057435"]]);
|
|
1219
1235
|
exports.default = _Form;
|
|
@@ -500,7 +500,7 @@ async function handleFormSetValue(node, data, fields, context) {
|
|
|
500
500
|
}
|
|
501
501
|
}
|
|
502
502
|
async function handleFormSubmit(node, data, fields, context) {
|
|
503
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
503
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
504
504
|
const basic = node.basic || {};
|
|
505
505
|
if (!(basic == null ? void 0 : basic.dataSourceId)) {
|
|
506
506
|
console.error("form-setValue: 缺少 dataSourceId 配置");
|
|
@@ -529,6 +529,27 @@ async function handleFormSubmit(node, data, fields, context) {
|
|
|
529
529
|
};
|
|
530
530
|
}
|
|
531
531
|
}
|
|
532
|
+
if (basic == null ? void 0 : basic.docValidate) {
|
|
533
|
+
const docValidateMethod = (_g = (_f = formComponent == null ? void 0 : formComponent.$) == null ? void 0 : _f.exposed) == null ? void 0 : _g.docValidate;
|
|
534
|
+
try {
|
|
535
|
+
if (typeof docValidateMethod === "function") {
|
|
536
|
+
await docValidateMethod();
|
|
537
|
+
} else {
|
|
538
|
+
console.error("未找到表单组件的 docValidate 方法");
|
|
539
|
+
return {
|
|
540
|
+
success: false,
|
|
541
|
+
message: "表单组件未正确配置或 docValidate 方法未暴露",
|
|
542
|
+
shouldShowError: true
|
|
543
|
+
};
|
|
544
|
+
}
|
|
545
|
+
} catch (error) {
|
|
546
|
+
return {
|
|
547
|
+
success: false,
|
|
548
|
+
message: "要件校验失败!",
|
|
549
|
+
shouldShowError: false
|
|
550
|
+
};
|
|
551
|
+
}
|
|
552
|
+
}
|
|
532
553
|
if (typeof getFormDataMethod === "function") {
|
|
533
554
|
try {
|
|
534
555
|
let formData = getFormDataMethod();
|
|
@@ -555,8 +576,8 @@ async function handleFormSubmit(node, data, fields, context) {
|
|
|
555
576
|
formData = common.removeEmptyValues(result.data || {});
|
|
556
577
|
delete formData.pageNo;
|
|
557
578
|
delete formData.pageSize;
|
|
558
|
-
const formComponent2 = (
|
|
559
|
-
const setFormDataMethod = (
|
|
579
|
+
const formComponent2 = (_h = context.components) == null ? void 0 : _h.form;
|
|
580
|
+
const setFormDataMethod = (_j = (_i = formComponent2 == null ? void 0 : formComponent2.$) == null ? void 0 : _i.exposed) == null ? void 0 : _j.setFormData;
|
|
560
581
|
if (typeof setFormDataMethod === "function") {
|
|
561
582
|
setFormDataMethod(formData);
|
|
562
583
|
} else {
|
|
@@ -642,7 +663,7 @@ async function handleDialog(node, data, fields, context) {
|
|
|
642
663
|
}
|
|
643
664
|
}
|
|
644
665
|
async function handleRiskSchDialog(node, data, fields, context) {
|
|
645
|
-
var _a, _b, _c;
|
|
666
|
+
var _a, _b, _c, _d, _e, _f;
|
|
646
667
|
const basic = node.basic || {};
|
|
647
668
|
if (!(basic == null ? void 0 : basic.schNo)) {
|
|
648
669
|
console.error("风险拦截校验: 缺少 schNo 配置");
|
|
@@ -659,6 +680,13 @@ async function handleRiskSchDialog(node, data, fields, context) {
|
|
|
659
680
|
await validateMethod();
|
|
660
681
|
}
|
|
661
682
|
}
|
|
683
|
+
if (basic == null ? void 0 : basic.docValidate) {
|
|
684
|
+
const formComponent = (_d = context.components) == null ? void 0 : _d.form;
|
|
685
|
+
const docValidateMethod = (_f = (_e = formComponent == null ? void 0 : formComponent.$) == null ? void 0 : _e.exposed) == null ? void 0 : _f.docValidate;
|
|
686
|
+
if (typeof docValidateMethod === "function") {
|
|
687
|
+
await docValidateMethod();
|
|
688
|
+
}
|
|
689
|
+
}
|
|
662
690
|
const schNo = basic.schNo;
|
|
663
691
|
const paramList = parseRouteParams.parseRouteParams(basic == null ? void 0 : basic.params, data, fields);
|
|
664
692
|
const busNo = parseRouteParams.parseSingleParamValue(basic.busNo, data, fields);
|