lyflowchart 1.0.115 → 1.0.133
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/ActionsConfig-BuvSvRbv.js +395 -0
- package/dist/ActionsConfig-BuvSvRbv.js.map +1 -0
- package/dist/ApprovalEditorModal-suKPJ-vN.js +48 -0
- package/dist/ApprovalEditorModal-suKPJ-vN.js.map +1 -0
- package/dist/CancelModal-BUi3ieI8.js +61 -0
- package/dist/CancelModal-BUi3ieI8.js.map +1 -0
- package/dist/Cell_click_approve-Dr83RkI-.js +244 -0
- package/dist/Cell_click_approve-Dr83RkI-.js.map +1 -0
- package/dist/JsonTags-BbWLqghI.js +66 -0
- package/dist/JsonTags-BbWLqghI.js.map +1 -0
- package/dist/MyProcess-FWGEwQcv.js +26434 -0
- package/dist/MyProcess-FWGEwQcv.js.map +1 -0
- package/dist/MyProcess.vue.d.ts +991 -0
- package/dist/approval-BW2WjPxY.js +167 -0
- package/dist/approval-BW2WjPxY.js.map +1 -0
- package/dist/approval-BaVHder3.js +18 -0
- package/dist/approval-BaVHder3.js.map +1 -0
- package/dist/approvalHistory-B2gpQbFC.js +868 -0
- package/dist/approvalHistory-B2gpQbFC.js.map +1 -0
- package/dist/approvalHistoryViewModal-DgLpv2ot.js +114 -0
- package/dist/approvalHistoryViewModal-DgLpv2ot.js.map +1 -0
- package/dist/approvalPageConfig-D0zPXOUf.js +2437 -0
- package/dist/approvalPageConfig-D0zPXOUf.js.map +1 -0
- package/dist/approveLeftConfig-BOU_UgHp.js +136 -0
- package/dist/approveLeftConfig-BOU_UgHp.js.map +1 -0
- package/dist/codeHistoryViewModal-BfSjIbEU.js +103 -0
- package/dist/codeHistoryViewModal-BfSjIbEU.js.map +1 -0
- package/dist/columnTables-DLwtgcC7.js +1272 -0
- package/dist/columnTables-DLwtgcC7.js.map +1 -0
- package/dist/components/Cell_click_approve.vue.d.ts +5 -0
- package/dist/components/Cell_click_data_source.vue.d.ts +6 -0
- package/dist/components/Process/common/bpmnUtils.d.ts +8 -0
- package/dist/components/Process/common/global.d.ts +16 -0
- package/dist/components/Process/common/index.d.ts +5 -0
- package/dist/components/Process/component/JsonTags2.vue.d.ts +60 -0
- package/dist/components/Process/component/ValueInput2.vue.d.ts +74 -0
- package/dist/components/Process/component/columnNameField2.vue.d.ts +51 -0
- package/dist/components/Process/component/data.d.ts +157 -0
- package/dist/components/Process/customPanel/CustomContextPad.d.ts +31 -0
- package/dist/components/Process/customPanel/CustomPalette.d.ts +89 -0
- package/dist/components/Process/customPanel/customTranslate.d.ts +1 -0
- package/dist/components/Process/customPanel/index.d.ts +8 -0
- package/dist/components/Process/designer.vue.d.ts +589 -0
- package/dist/components/Process/flowable/init.d.ts +1 -0
- package/dist/components/Process/index.vue.d.ts +812 -0
- package/dist/components/Process/lang/zh.d.ts +249 -0
- package/dist/components/Process/panel/ButtonsPanel.vue.d.ts +24 -0
- package/dist/components/Process/panel/PropertiesPanel.vue.d.ts +24 -0
- package/dist/components/Process/panel/commonPanel.vue.d.ts +40 -0
- package/dist/components/Process/panel/conditionPanel.vue.d.ts +271 -0
- package/dist/components/Process/panel/executionListener.vue.d.ts +66 -0
- package/dist/components/Process/panel/formPanel.vue.d.ts +7 -0
- package/dist/components/Process/panel/multiInstance.vue.d.ts +33 -0
- package/dist/components/Process/panel/otherPanel.vue.d.ts +17 -0
- package/dist/components/Process/panel/taskListener.vue.d.ts +64 -0
- package/dist/components/Process/panel/taskPanel.vue.d.ts +254 -0
- package/dist/components/Process/viewer/index.vue.d.ts +41 -0
- package/dist/components/approval/ApprovalEditorModal.vue.d.ts +26 -0
- package/dist/components/approval/CostCompanySelect.vue.d.ts +29 -0
- package/dist/components/approval/CostDepartmentSelect.vue.d.ts +35 -0
- package/dist/components/approval/CreateByCascader.vue.d.ts +27 -0
- package/dist/components/approval/CreateBySelect.vue.d.ts +35 -0
- package/dist/components/approval/PostionCascader.vue.d.ts +26 -0
- package/dist/components/approval/SystemTime.vue.d.ts +38 -0
- package/dist/components/approval/approvalViewId.d.ts +36 -0
- package/dist/components/approval/components/CancelModal.vue.d.ts +25 -0
- package/dist/components/approval/components/FormCodeInput.vue.d.ts +33 -0
- package/dist/components/approval/components/FormContextInput.vue.d.ts +33 -0
- package/dist/components/approval/components/FormFlowOrgInput.vue.d.ts +40 -0
- package/dist/components/approval/components/actionsBar.vue.d.ts +17 -0
- package/dist/components/approval/components/approvalHistory/approvalHistoryViewModal.vue.d.ts +41 -0
- package/dist/components/approval/components/approvalHistory/dataStoreSettingHistory.vue.d.ts +55 -0
- package/dist/components/approval/components/approvalHistory/dataStoreSettingHistoryViewModal.vue.d.ts +41 -0
- package/dist/components/approval/components/approvalHistory/flowHistoryViewModal.vue.d.ts +41 -0
- package/dist/components/approval/components/approvalHistory/flowSettingHistory.vue.d.ts +55 -0
- package/dist/components/approval/components/approvalHistory/index.vue.d.ts +212 -0
- package/dist/components/approval/components/approvalHistory/pageSettingHistory.vue.d.ts +55 -0
- package/dist/components/approval/components/approvalPageConfig/ActionsConfig.vue.d.ts +112 -0
- package/dist/components/approval/components/approvalPageConfig/BaseConditions.vue.d.ts +205 -0
- package/dist/components/approval/components/approvalPageConfig/CodeEditorWraper.vue.d.ts +51 -0
- package/dist/components/approval/components/approvalPageConfig/ColumnConfig.vue.d.ts +145 -0
- package/dist/components/approval/components/approvalPageConfig/ConditionFieldMulType.vue.d.ts +137 -0
- package/dist/components/approval/components/approvalPageConfig/JsonInput.vue.d.ts +38 -0
- package/dist/components/approval/components/approvalPageConfig/JsonTags.vue.d.ts +26 -0
- package/dist/components/approval/components/approvalPageConfig/JsonText.vue.d.ts +36 -0
- package/dist/components/approval/components/approvalPageConfig/approveLeftConfig.vue.d.ts +6 -0
- package/dist/components/approval/components/approvalPageConfig/baseConfig.vue.d.ts +10 -0
- package/dist/components/approval/components/approvalPageConfig/cellEdit.vue.d.ts +23 -0
- package/dist/components/approval/components/approvalPageConfig/configSync.vue.d.ts +76 -0
- package/dist/components/approval/components/approvalPageConfig/confirmInput.vue.d.ts +26 -0
- package/dist/components/approval/components/approvalPageConfig/defaultOperatorSelect.vue.d.ts +18 -0
- package/dist/components/approval/components/approvalPageConfig/index.vue.d.ts +11 -0
- package/dist/components/approval/components/approvalPageConfig/jsonConfig.vue.d.ts +16 -0
- package/dist/components/approval/components/approvalPageConfig/layoutSetting.vue.d.ts +9 -0
- package/dist/components/approval/components/approvalPageConfig/leftColumn.vue.d.ts +1184 -0
- package/dist/components/approval/components/approvalPageConfig/middleColumn.vue.d.ts +145 -0
- package/dist/components/approval/components/approvalPageConfig/operatorSelect.vue.d.ts +18 -0
- package/dist/components/approval/components/approvalPageConfig/searchConfig.vue.d.ts +166 -0
- package/dist/components/approval/components/approvalPageConfig/tableConfig.vue.d.ts +802 -0
- package/dist/components/approval/components/codeHistory/codeHistory.vue.d.ts +53 -0
- package/dist/components/approval/components/codeHistory/codeHistoryViewModal.vue.d.ts +32 -0
- package/dist/components/approval/components/columnDataList.vue.d.ts +454 -0
- package/dist/components/approval/components/columnForm.vue.d.ts +26 -0
- package/dist/components/approval/components/columnTables.vue.d.ts +502 -0
- package/dist/components/approval/components/columnUnknown.vue.d.ts +2 -0
- package/dist/components/approval/components/dataStoreConfig/ConditionConfig.vue.d.ts +199 -0
- package/dist/components/approval/components/dataStoreConfig/ValueInput.vue.d.ts +37 -0
- package/dist/components/approval/components/dataStoreConfig/dataSourceDetial.vue.d.ts +22 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreConfig.vue.d.ts +554 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreConfigItem.vue.d.ts +434 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreTest.vue.d.ts +39 -0
- package/dist/components/approval/components/dataStoreConfig/dataStoreTestsItem.vue.d.ts +17 -0
- package/dist/components/approval/components/dataStoreConfig/formField.vue.d.ts +28 -0
- package/dist/components/approval/components/dataStoreConfig/formFieldMulType.vue.d.ts +96 -0
- package/dist/components/approval/components/dataStoreConfig/selectExcelColumn.vue.d.ts +26 -0
- package/dist/components/approval/components/dataStoreConfig/selectExcelType.vue.d.ts +28 -0
- package/dist/components/approval/components/debugCode/debugCode.vue.d.ts +214 -0
- package/dist/components/approval/components/drawerDataList.vue.d.ts +504 -0
- package/dist/components/approval/components/drawerTablesList.vue.d.ts +551 -0
- package/dist/components/approval/components/flowConfig/flowConfig.vue.d.ts +1097 -0
- package/dist/components/approval/components/flowConfig/selectCcGroup.vue.d.ts +9 -0
- package/dist/components/approval/components/flowConfig/selectUsers.vue.d.ts +9 -0
- package/dist/components/approval/components/modelTablesList.vue.d.ts +551 -0
- package/dist/components/approval/components/pageConfigHistory.vue.d.ts +2 -0
- package/dist/components/approval/components/search.vue.d.ts +238 -0
- package/dist/components/approval/components/searchSummary.vue.d.ts +100 -0
- package/dist/components/approval/components/table.vue.d.ts +416 -0
- package/dist/components/approval/components/tableModal.vue.d.ts +84 -0
- package/dist/components/approval/configs/approval/default.d.ts +11 -0
- package/dist/components/approval/configs/approval/recordActions.d.ts +22 -0
- package/dist/components/approval/core.vue.d.ts +53 -0
- package/dist/components/approval/example_code/example_code.d.ts +11 -0
- package/dist/components/approval/index.d.ts +18 -0
- package/dist/components/approval/index.vue.d.ts +2 -0
- package/dist/components/approval/migrate/index.d.ts +1 -0
- package/dist/components/approval/migrate/v0001.d.ts +2 -0
- package/dist/components/approval/store/context.d.ts +48 -0
- package/dist/components/approval/store/debugCode.d.ts +7 -0
- package/dist/components/approval/store/settingsState.d.ts +15 -0
- package/dist/components/approval/typing.d.ts +210 -0
- package/dist/components/approval/useApprovalRecordActions.d.ts +83 -0
- package/dist/components/approval/utils.d.ts +164 -0
- package/dist/components/approval_for_details.vue.d.ts +9 -0
- package/dist/components/flow/ElInputTag/index.vue.d.ts +46 -0
- package/dist/components/flow/Expression/index.vue.d.ts +48 -0
- package/dist/components/flow/Role/index.vue.d.ts +68 -0
- package/dist/components/flow/User/index.vue.d.ts +76 -0
- package/dist/config/packed-config.d.ts +26 -0
- package/dist/constants.d.ts +1 -0
- package/dist/core-BOc9ch_5.js +1631 -0
- package/dist/core-BOc9ch_5.js.map +1 -0
- package/dist/dataStoreSettingHistoryViewModal-D_so-KLp.js +114 -0
- package/dist/dataStoreSettingHistoryViewModal-D_so-KLp.js.map +1 -0
- package/dist/debugCode-Cm9-WiUG.js +565 -0
- package/dist/debugCode-Cm9-WiUG.js.map +1 -0
- package/dist/debugCode-dD1YnQSD.js +11 -0
- package/dist/debugCode-dD1YnQSD.js.map +1 -0
- package/dist/default-VdDMlY4e.js +560 -0
- package/dist/default-VdDMlY4e.js.map +1 -0
- package/dist/example_code-C_xF8RRG.js +129 -0
- package/dist/example_code-C_xF8RRG.js.map +1 -0
- package/dist/flowHistoryViewModal-D8DJP7Te.js +109 -0
- package/dist/flowHistoryViewModal-D8DJP7Te.js.map +1 -0
- package/dist/index.d.ts +81 -0
- package/dist/index.js +507 -26691
- package/dist/index.js.map +1 -1
- package/dist/init-plugin-fQTSQzui.js +48 -0
- package/dist/init-plugin-fQTSQzui.js.map +1 -0
- package/dist/init-plugin.d.ts +57 -0
- package/dist/leftColumn-CsPjufue.js +209 -0
- package/dist/leftColumn-CsPjufue.js.map +1 -0
- package/dist/lyflowchart.css +1 -1
- package/dist/middleColumn-C7M6-eVo.js +107 -0
- package/dist/middleColumn-C7M6-eVo.js.map +1 -0
- package/dist/recordActions-BgFlNsGU.js +51 -0
- package/dist/recordActions-BgFlNsGU.js.map +1 -0
- package/dist/settingsState-CI81PG-i.js +19 -0
- package/dist/settingsState-CI81PG-i.js.map +1 -0
- package/dist/style.d.ts +3 -0
- package/dist/styles.d.ts +7 -0
- package/dist/tableConfig-uLXue-BS.js +2408 -0
- package/dist/tableConfig-uLXue-BS.js.map +1 -0
- package/dist/tableModal-BcYfVL02.js +124 -0
- package/dist/tableModal-BcYfVL02.js.map +1 -0
- package/dist/useApprovalRecordActions-BQ6MgV2L.js +843 -0
- package/dist/useApprovalRecordActions-BQ6MgV2L.js.map +1 -0
- package/dist/utils/StrUtil.d.ts +52 -0
- package/dist/utils/function.d.ts +8 -0
- package/dist/utils-CLet2gLV.js +420 -0
- package/dist/utils-CLet2gLV.js.map +1 -0
- package/dist/v0001-OaBeBCXI.js +4 -0
- package/dist/v0001-OaBeBCXI.js.map +1 -0
- package/dist/{Cell_click_data_source-C8WEsBGB.js → viewer-Dv3kQsMf.js} +1839 -2724
- package/dist/viewer-Dv3kQsMf.js.map +1 -0
- package/dist/vue-print-next-HRweUmNi.js +683 -0
- package/dist/vue-print-next-HRweUmNi.js.map +1 -0
- package/package.json +39 -8
- package/dist/Cell_click_data_source-C8WEsBGB.js.map +0 -1
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { w as e } from "./utils-CLet2gLV.js";
|
|
2
|
+
import { p as t, t as n } from "./columnTables-DLwtgcC7.js";
|
|
3
|
+
import { computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, createVNode as l, defineComponent as u, mergeModels as d, openBlock as f, ref as p, resolveComponent as m, toDisplayString as h, useModel as g, watch as _, withCtx as v } from "vue";
|
|
4
|
+
import { message as y } from "ant-design-vue";
|
|
5
|
+
//#region src/components/approval/components/tableModal.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var b = { class: "table-modal-footer" }, x = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "footer-error"
|
|
9
|
+
}, S = { class: "footer-actions" }, C = /* @__PURE__ */ u({
|
|
10
|
+
__name: "tableModal",
|
|
11
|
+
props: /* @__PURE__ */ d({
|
|
12
|
+
columnConfig: {
|
|
13
|
+
type: Object,
|
|
14
|
+
required: !0
|
|
15
|
+
},
|
|
16
|
+
height: {
|
|
17
|
+
type: Number,
|
|
18
|
+
required: !0
|
|
19
|
+
},
|
|
20
|
+
eventBus: {
|
|
21
|
+
type: Object,
|
|
22
|
+
required: !0
|
|
23
|
+
},
|
|
24
|
+
modelType: {
|
|
25
|
+
type: String,
|
|
26
|
+
required: !0
|
|
27
|
+
},
|
|
28
|
+
approvalConfig: {
|
|
29
|
+
type: Object,
|
|
30
|
+
required: !0
|
|
31
|
+
},
|
|
32
|
+
tables: {
|
|
33
|
+
type: Array,
|
|
34
|
+
required: !0
|
|
35
|
+
},
|
|
36
|
+
title: {
|
|
37
|
+
type: String,
|
|
38
|
+
required: !0
|
|
39
|
+
},
|
|
40
|
+
hideAllButtons: {
|
|
41
|
+
type: Boolean,
|
|
42
|
+
required: !0
|
|
43
|
+
}
|
|
44
|
+
}, {
|
|
45
|
+
open: { type: Boolean },
|
|
46
|
+
openModifiers: {}
|
|
47
|
+
}),
|
|
48
|
+
emits: /* @__PURE__ */ d(["ok", "cancel"], ["update:open"]),
|
|
49
|
+
setup(u, { emit: d }) {
|
|
50
|
+
let C = u, w = d, T = t().contexts?.[C.modelType] || {}, E = g(u, "open"), D = p({}), O = p(""), k = !1, A = r(() => {
|
|
51
|
+
let e = {};
|
|
52
|
+
for (let t of C.columnConfig?.tables || []) e[t.id] = t;
|
|
53
|
+
return (C.tables || []).filter((t) => e[t.id]).map((t) => ({
|
|
54
|
+
...t,
|
|
55
|
+
title: t.title || e[t.id].title
|
|
56
|
+
}));
|
|
57
|
+
}), j = () => e(A.value, D.value), M = () => {
|
|
58
|
+
k = !1, O.value = "";
|
|
59
|
+
}, N = (e) => {
|
|
60
|
+
D.value = e || {};
|
|
61
|
+
}, P = async () => {
|
|
62
|
+
k = !0;
|
|
63
|
+
let e = j();
|
|
64
|
+
if (O.value = e, e) {
|
|
65
|
+
y.warning(e);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
w("ok", { context: JSON.parse(JSON.stringify(T)) });
|
|
69
|
+
}, F = () => {
|
|
70
|
+
M(), w("cancel");
|
|
71
|
+
};
|
|
72
|
+
return _(D, () => {
|
|
73
|
+
k && (O.value = j());
|
|
74
|
+
}), _(E, (e) => {
|
|
75
|
+
e || M();
|
|
76
|
+
}), (e, t) => {
|
|
77
|
+
let r = m("a-button"), d = m("a-space"), p = m("a-modal");
|
|
78
|
+
return f(), i(p, {
|
|
79
|
+
open: E.value,
|
|
80
|
+
"onUpdate:open": t[0] ||= (e) => E.value = e,
|
|
81
|
+
title: u.title,
|
|
82
|
+
width: "80%",
|
|
83
|
+
"wrap-class-name": "approve-table-full-modal",
|
|
84
|
+
onCancel: F
|
|
85
|
+
}, {
|
|
86
|
+
footer: v(() => [s("div", b, [O.value ? (f(), o("span", x, h(O.value), 1)) : a("", !0), s("div", S, [l(d, { size: 8 }, {
|
|
87
|
+
default: v(() => [l(r, { onClick: F }, {
|
|
88
|
+
default: v(() => [...t[1] ||= [c("取消", -1)]]),
|
|
89
|
+
_: 1
|
|
90
|
+
}), l(r, {
|
|
91
|
+
type: "primary",
|
|
92
|
+
onClick: P
|
|
93
|
+
}, {
|
|
94
|
+
default: v(() => [...t[2] ||= [c(" 确定 ", -1)]]),
|
|
95
|
+
_: 1
|
|
96
|
+
})]),
|
|
97
|
+
_: 1
|
|
98
|
+
})])])]),
|
|
99
|
+
default: v(() => [E.value ? (f(), i(n, {
|
|
100
|
+
key: 0,
|
|
101
|
+
columnConfig: u.columnConfig,
|
|
102
|
+
height: u.height,
|
|
103
|
+
eventBus: u.eventBus,
|
|
104
|
+
modelType: u.modelType,
|
|
105
|
+
approvalConfig: u.approvalConfig,
|
|
106
|
+
filterTables: u.tables,
|
|
107
|
+
hideAllButtons: u.hideAllButtons,
|
|
108
|
+
onSelectedCountsChange: N
|
|
109
|
+
}, null, 8, [
|
|
110
|
+
"columnConfig",
|
|
111
|
+
"height",
|
|
112
|
+
"eventBus",
|
|
113
|
+
"modelType",
|
|
114
|
+
"approvalConfig",
|
|
115
|
+
"filterTables",
|
|
116
|
+
"hideAllButtons"
|
|
117
|
+
])) : a("", !0)]),
|
|
118
|
+
_: 1
|
|
119
|
+
}, 8, ["open", "title"]);
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
//#endregion
|
|
124
|
+
export { C as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tableModal-BcYfVL02.js","names":[],"sources":["../src/components/approval/components/tableModal.vue","../src/components/approval/components/tableModal.vue"],"sourcesContent":["<template>\n <a-modal\n v-model:open=\"open\"\n :title=\"title\"\n width=\"80%\"\n wrap-class-name=\"approve-table-full-modal\"\n @cancel=\"cancel\"\n >\n <columnTables\n v-if=\"open\"\n :columnConfig=\"columnConfig\"\n :height=\"height\"\n :eventBus=\"eventBus\"\n :modelType=\"modelType\"\n :approvalConfig=\"approvalConfig\"\n :filterTables=\"tables\"\n :hideAllButtons=\"hideAllButtons\"\n @selected-counts-change=\"handleSelectedCountsChange\"\n ></columnTables>\n <!-- 自定义 footer:左侧固定位置放校验错误(不满足选择数量时不关闭弹窗),右侧为确定/取消 -->\n <template #footer>\n <div class=\"table-modal-footer\">\n <span\n v-if=\"errorText\"\n class=\"footer-error\"\n >\n {{ errorText }}\n </span>\n <div class=\"footer-actions\">\n <a-space :size=\"8\">\n <a-button @click=\"cancel\">取消</a-button>\n <a-button\n type=\"primary\"\n @click=\"ok\"\n >\n 确定\n </a-button>\n </a-space>\n </div>\n </div>\n </template>\n </a-modal>\n</template>\n<script setup lang=\"ts\">\nimport { computed, PropType, ref, watch } from 'vue';\nimport { message } from 'ant-design-vue';\nimport columnTables from './columnTables.vue';\nimport { ApprovalSetting } from '../typing';\nimport { useContextStore } from '@/components/approval/store/context';\nimport { validateTableSelectCounts } from '../utils';\nconst props = defineProps({\n columnConfig: {\n type: Object,\n required: true,\n },\n height: {\n type: Number,\n required: true,\n },\n eventBus: {\n type: Object,\n required: true,\n },\n modelType: {\n type: String,\n required: true,\n },\n approvalConfig: {\n type: Object as PropType<ApprovalSetting>,\n required: true,\n },\n tables: {\n type: Array,\n required: true,\n },\n title: {\n type: String,\n required: true,\n },\n hideAllButtons: {\n type: Boolean,\n required: true,\n },\n});\nconst emit = defineEmits(['ok', 'cancel']);\nconst contextStore = useContextStore();\n\nconst current_context = contextStore.contexts?.[props.modelType] || ({} as any);\nconst open = defineModel<boolean>('open');\n\n/** 表 id → 已选条数,由 columnTables 汇总各表(ApprovalTable)上报的条数 */\nconst selectedCounts = ref<Record<string, number>>({});\n/** 弹窗底部红字:只在点过「确定」之后才出现,用户改对了自动消失 */\nconst errorText = ref('');\nlet validateAttempted = false;\n\n/**\n * 参与校验的表 = showTables 入参 tables ∩ 页面配置里**真实渲染出来**的表。\n * 入参里写了页面上不存在的表 id 时必须剔除:否则用户根本勾不到那张表,\n * 配了 min_count 就会让弹窗永远关不掉。\n */\nconst validateTables = computed<any[]>(() => {\n const configMap: Record<string, any> = {};\n for (const item of (props.columnConfig as any)?.tables || []) {\n configMap[item.id] = item;\n }\n return ((props.tables || []) as any[])\n .filter(item => configMap[item.id])\n .map(item => ({ ...item, title: item.title || configMap[item.id].title }));\n});\n\nconst collectError = () => validateTableSelectCounts(validateTables.value, selectedCounts.value);\nconst resetError = () => {\n validateAttempted = false;\n errorText.value = '';\n};\nconst handleSelectedCountsChange = (counts: Record<string, number>) => {\n selectedCounts.value = counts || {};\n};\n\nconst ok = async () => {\n validateAttempted = true;\n const err = collectError();\n errorText.value = err;\n if (err) {\n // 拦截确定:不 emit ok(父级收到 ok 后才会移除弹窗),保持弹窗打开让用户补选\n message.warning(err);\n return;\n }\n emit('ok', { context: JSON.parse(JSON.stringify(current_context)) });\n};\nconst cancel = () => {\n resetError();\n emit('cancel');\n};\n\n// 校验失败后,选择变化时实时刷新底部提示(改对了自动消失)\nwatch(selectedCounts, () => {\n if (!validateAttempted) {\n return;\n }\n errorText.value = collectError();\n});\nwatch(open, value => {\n if (!value) {\n resetError();\n }\n});\n</script>\n<style>\n.approve-table-full-modal {\n .ant-layout-header {\n background-color: #fff;\n }\n .ant-layout-sider {\n background-color: #fff;\n }\n .ant-modal {\n top: 0;\n margin: 0 auto;\n padding-bottom: 0;\n }\n .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n }\n .ant-modal-body {\n flex: 1;\n padding: 0;\n overflow: hidden;\n }\n .ant-modal-footer {\n padding: 0;\n }\n .table-modal-footer {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 16px;\n border-top: 1px solid #e8e8e8;\n .footer-error {\n flex: 1 1 auto;\n min-width: 0;\n text-align: left;\n font-size: 13px;\n line-height: 1.5;\n color: #ff4d4f;\n }\n .footer-actions {\n flex: 0 0 auto;\n margin-left: auto;\n }\n }\n}\n</style>\n","<template>\n <a-modal\n v-model:open=\"open\"\n :title=\"title\"\n width=\"80%\"\n wrap-class-name=\"approve-table-full-modal\"\n @cancel=\"cancel\"\n >\n <columnTables\n v-if=\"open\"\n :columnConfig=\"columnConfig\"\n :height=\"height\"\n :eventBus=\"eventBus\"\n :modelType=\"modelType\"\n :approvalConfig=\"approvalConfig\"\n :filterTables=\"tables\"\n :hideAllButtons=\"hideAllButtons\"\n @selected-counts-change=\"handleSelectedCountsChange\"\n ></columnTables>\n <!-- 自定义 footer:左侧固定位置放校验错误(不满足选择数量时不关闭弹窗),右侧为确定/取消 -->\n <template #footer>\n <div class=\"table-modal-footer\">\n <span\n v-if=\"errorText\"\n class=\"footer-error\"\n >\n {{ errorText }}\n </span>\n <div class=\"footer-actions\">\n <a-space :size=\"8\">\n <a-button @click=\"cancel\">取消</a-button>\n <a-button\n type=\"primary\"\n @click=\"ok\"\n >\n 确定\n </a-button>\n </a-space>\n </div>\n </div>\n </template>\n </a-modal>\n</template>\n<script setup lang=\"ts\">\nimport { computed, PropType, ref, watch } from 'vue';\nimport { message } from 'ant-design-vue';\nimport columnTables from './columnTables.vue';\nimport { ApprovalSetting } from '../typing';\nimport { useContextStore } from '@/components/approval/store/context';\nimport { validateTableSelectCounts } from '../utils';\nconst props = defineProps({\n columnConfig: {\n type: Object,\n required: true,\n },\n height: {\n type: Number,\n required: true,\n },\n eventBus: {\n type: Object,\n required: true,\n },\n modelType: {\n type: String,\n required: true,\n },\n approvalConfig: {\n type: Object as PropType<ApprovalSetting>,\n required: true,\n },\n tables: {\n type: Array,\n required: true,\n },\n title: {\n type: String,\n required: true,\n },\n hideAllButtons: {\n type: Boolean,\n required: true,\n },\n});\nconst emit = defineEmits(['ok', 'cancel']);\nconst contextStore = useContextStore();\n\nconst current_context = contextStore.contexts?.[props.modelType] || ({} as any);\nconst open = defineModel<boolean>('open');\n\n/** 表 id → 已选条数,由 columnTables 汇总各表(ApprovalTable)上报的条数 */\nconst selectedCounts = ref<Record<string, number>>({});\n/** 弹窗底部红字:只在点过「确定」之后才出现,用户改对了自动消失 */\nconst errorText = ref('');\nlet validateAttempted = false;\n\n/**\n * 参与校验的表 = showTables 入参 tables ∩ 页面配置里**真实渲染出来**的表。\n * 入参里写了页面上不存在的表 id 时必须剔除:否则用户根本勾不到那张表,\n * 配了 min_count 就会让弹窗永远关不掉。\n */\nconst validateTables = computed<any[]>(() => {\n const configMap: Record<string, any> = {};\n for (const item of (props.columnConfig as any)?.tables || []) {\n configMap[item.id] = item;\n }\n return ((props.tables || []) as any[])\n .filter(item => configMap[item.id])\n .map(item => ({ ...item, title: item.title || configMap[item.id].title }));\n});\n\nconst collectError = () => validateTableSelectCounts(validateTables.value, selectedCounts.value);\nconst resetError = () => {\n validateAttempted = false;\n errorText.value = '';\n};\nconst handleSelectedCountsChange = (counts: Record<string, number>) => {\n selectedCounts.value = counts || {};\n};\n\nconst ok = async () => {\n validateAttempted = true;\n const err = collectError();\n errorText.value = err;\n if (err) {\n // 拦截确定:不 emit ok(父级收到 ok 后才会移除弹窗),保持弹窗打开让用户补选\n message.warning(err);\n return;\n }\n emit('ok', { context: JSON.parse(JSON.stringify(current_context)) });\n};\nconst cancel = () => {\n resetError();\n emit('cancel');\n};\n\n// 校验失败后,选择变化时实时刷新底部提示(改对了自动消失)\nwatch(selectedCounts, () => {\n if (!validateAttempted) {\n return;\n }\n errorText.value = collectError();\n});\nwatch(open, value => {\n if (!value) {\n resetError();\n }\n});\n</script>\n<style>\n.approve-table-full-modal {\n .ant-layout-header {\n background-color: #fff;\n }\n .ant-layout-sider {\n background-color: #fff;\n }\n .ant-modal {\n top: 0;\n margin: 0 auto;\n padding-bottom: 0;\n }\n .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n }\n .ant-modal-body {\n flex: 1;\n padding: 0;\n overflow: hidden;\n }\n .ant-modal-footer {\n padding: 0;\n }\n .table-modal-footer {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 16px;\n border-top: 1px solid #e8e8e8;\n .footer-error {\n flex: 1 1 auto;\n min-width: 0;\n text-align: left;\n font-size: 13px;\n line-height: 1.5;\n color: #ff4d4f;\n }\n .footer-actions {\n flex: 0 0 auto;\n margin-left: auto;\n }\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkDA,IAAM,IAAQ,GAkCR,IAAO,GAGP,IAFe,GAAiB,CAED,WAAW,EAAM,cAAe,EAAE,EACjE,IAAO,EAAoB,GAAC,OAAO,EAGnC,IAAiB,EAA4B,EAAE,CAAC,EAEhD,IAAY,EAAI,GAAG,EACrB,IAAoB,IAOlB,IAAiB,QAAsB;GAC3C,IAAM,IAAiC,EAAE;AACzC,QAAK,IAAM,KAAS,EAAM,cAAsB,UAAU,EAAE,CAC1D,GAAU,EAAK,MAAM;AAEvB,WAAS,EAAM,UAAU,EAAE,EACxB,QAAO,MAAQ,EAAU,EAAK,IAAG,CACjC,KAAI,OAAS;IAAE,GAAG;IAAM,OAAO,EAAK,SAAS,EAAU,EAAK,IAAI;IAAO,EAAE;IAC5E,EAEI,UAAqB,EAA0B,EAAe,OAAO,EAAe,MAAM,EAC1F,UAAmB;AAEvB,GADA,IAAoB,IACpB,EAAU,QAAQ;KAEd,KAA8B,MAAmC;AACrE,KAAe,QAAQ,KAAU,EAAE;KAG/B,IAAK,YAAY;AACrB,OAAoB;GACpB,IAAM,IAAM,GAAc;AAE1B,OADA,EAAU,QAAQ,GACd,GAAK;AAEP,MAAQ,QAAQ,EAAI;AACpB;;AAEF,KAAK,MAAM,EAAE,SAAS,KAAK,MAAM,KAAK,UAAU,EAAgB,CAAC,EAAE,CAAC;KAEhE,UAAe;AAEnB,GADA,GAAY,EACZ,EAAK,SAAS;;SAIhB,EAAM,SAAsB;AACrB,SAGL,EAAU,QAAQ,GAAc;IAChC,EACF,EAAM,IAAM,MAAS;AACnB,GAAK,KACH,GAAY;IAEd;;eAlJA,EAwCU,GAAA;IAvCA,MAAM,EAAA;uCAAI,QAAA;IACjB,OAAO,EAAA;IACR,OAAM;IACN,mBAAgB;IACf,UAAQ;;IAcE,QAAM,QAmBT,CAlBN,EAkBM,OAlBN,GAkBM,CAhBI,EAAA,SAAA,GAAA,EADR,EAKO,QALP,GAKO,EADF,EAAA,MAAS,EAAA,EAAA,IAAA,EAAA,IAAA,GAAA,EAEd,EAUM,OAVN,GAUM,CATJ,EAQU,GAAA,EARA,MAAM,GAAC,EAAA;sBACwB,CAAvC,EAAuC,GAAA,EAA5B,SAAO,GAAM,EAAA;uBAAI,CAAA,GAAA,AAAA,EAAA,OAAA,CAAA,EAAF,MAAE,GAAA,CAAA,CAAA,CAAA;;SAC5B,EAKW,GAAA;MAJT,MAAK;MACJ,SAAO;;uBAGV,CAAA,GAAA,AAAA,EAAA,OAAA,CAAA,EAFC,QAED,GAAA,CAAA,CAAA,CAAA;;;;;qBAlBQ,CATR,EAAA,SAAA,GAAA,EADR,EAUgB,GAAA;;KARb,cAAc,EAAA;KACd,QAAQ,EAAA;KACR,UAAU,EAAA;KACV,WAAW,EAAA;KACX,gBAAgB,EAAA;KAChB,cAAc,EAAA;KACd,gBAAgB,EAAA;KAChB,wBAAwB"}
|