@fecp/designer 5.6.24 → 5.6.27
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/packages/dialogGlobal/index.vue.mjs +1 -1
- package/es/designer/src/packages/form/components/H2Wrapper.vue.mjs +1 -1
- package/es/designer/src/packages/table/TableSetting.vue.mjs +19 -20
- package/es/designer/src/packages/table/tableBtn.vue.mjs +72 -16
- package/es/designer.css +784 -696
- package/es/node_modules/element-plus/es/components/container/index.mjs +1 -1
- package/es/node_modules/element-plus/es/components/form/index.mjs +1 -1
- package/es/node_modules/element-plus/es/components/input/src/input.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/es/packages/mobile/src/components/base/card/Card.vue.mjs +2 -2
- package/es/packages/mobile/src/components/custom/appDetail/AppDetail.vue.mjs +1 -1
- package/es/packages/vue/src/components/dialog/DialogRenderer.vue2.mjs +7 -7
- package/es/packages/vue/src/components/forms/form/Form.vue.mjs +2 -4
- package/es/packages/vue/src/components/forms/form/index.mjs +1 -1
- package/es/packages/vue/src/components/forms/h2/H2.vue.mjs +1 -1
- package/es/packages/vue/src/components/forms/subTable/SubTable.vue.mjs +58 -3
- package/es/packages/vue/src/components/forms/subTable/index.mjs +2 -2
- package/es/packages/vue/src/components/forms/text/Text.vue.mjs +2 -1
- package/es/packages/vue/src/components/layout/layoutCard/LayoutCard.vue.mjs +1 -1
- package/es/packages/vue/src/components/table/CustomButtons.vue.mjs +51 -2
- package/es/packages/vue/src/components/table/Table.vue.mjs +13 -23
- package/es/packages/vue/src/components/table/TableColumn.vue.mjs +3 -54
- package/es/packages/vue/src/components/table/TableFilter.vue.mjs +6 -6
- package/es/packages/vue/src/composables/usePageEvents.mjs +1 -55
- package/es/packages/vue/src/utils/eventFlowParser.mjs +9 -6
- package/lib/designer/package.json.js +1 -1
- package/lib/designer/src/packages/dialogGlobal/index.vue.js +1 -1
- package/lib/designer/src/packages/form/components/H2Wrapper.vue.js +1 -1
- package/lib/designer/src/packages/form/index.vue.js +1 -1
- package/lib/designer/src/packages/form/property/index.vue.js +1 -1
- package/lib/designer/src/packages/table/TableSetting.vue.js +19 -20
- package/lib/designer/src/packages/table/tableBtn.vue.js +83 -27
- package/lib/designer.css +784 -696
- package/lib/packages/mobile/src/components/base/card/Card.vue.js +2 -2
- package/lib/packages/mobile/src/components/custom/appDetail/AppDetail.vue.js +1 -1
- package/lib/packages/vue/src/components/dialog/DialogRenderer.vue2.js +6 -6
- package/lib/packages/vue/src/components/forms/form/Form.vue.js +2 -4
- package/lib/packages/vue/src/components/forms/form/index.js +1 -1
- package/lib/packages/vue/src/components/forms/h2/H2.vue.js +1 -1
- package/lib/packages/vue/src/components/forms/subTable/SubTable.vue.js +57 -2
- package/lib/packages/vue/src/components/forms/text/Text.vue.js +2 -1
- package/lib/packages/vue/src/components/layout/layoutCard/LayoutCard.vue.js +1 -1
- package/lib/packages/vue/src/components/table/CustomButtons.vue.js +51 -2
- package/lib/packages/vue/src/components/table/Table.vue.js +13 -23
- package/lib/packages/vue/src/components/table/TableColumn.vue.js +3 -54
- package/lib/packages/vue/src/components/table/TableFilter.vue.js +5 -5
- package/lib/packages/vue/src/composables/usePageEvents.js +1 -55
- package/lib/packages/vue/src/utils/eventFlowParser.js +9 -6
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { withNoopInstall, withInstall } from "../../utils/vue/install.mjs";
|
|
2
2
|
import container_default from "./src/container.mjs";
|
|
3
3
|
import aside_default from "./src/aside.mjs";
|
|
4
4
|
import footer_default from "./src/footer.mjs";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { withNoopInstall, withInstall } from "../../utils/vue/install.mjs";
|
|
2
2
|
import form_default from "./src/form2.mjs";
|
|
3
3
|
import form_item_default from "./src/form-item2.mjs";
|
|
4
4
|
const ElForm = withInstall(form_default, { FormItem: form_item_default });
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UPDATE_MODEL_EVENT, CHANGE_EVENT, INPUT_EVENT } from "../../../constants/event.mjs";
|
|
2
2
|
import { useResizeObserver } from "../../../../node_modules/@vueuse/core/index.mjs";
|
|
3
3
|
import { NOOP, isObject } from "../../../../../@vue/shared/dist/shared.esm-bundler.mjs";
|
|
4
4
|
import { debugWarn } from "../../../utils/error.mjs";
|
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
/* empty css */
|
|
7
7
|
/* empty css */
|
|
8
8
|
import { createBlock, openBlock, withCtx, createVNode, renderSlot } from "vue";
|
|
9
|
-
/* empty css */
|
|
10
|
-
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
11
9
|
/* empty css */
|
|
12
10
|
/* empty css */
|
|
13
11
|
/* empty css */
|
|
14
12
|
/* empty css */
|
|
15
13
|
/* empty css */
|
|
14
|
+
/* empty css */
|
|
15
|
+
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
16
16
|
import { SwipeCell } from "../../../../../../node_modules/vant/es/swipe-cell/index.mjs";
|
|
17
17
|
import { showConfirmDialog } from "../../../../../../node_modules/vant/es/dialog/function-call.mjs";
|
|
18
18
|
import "../../../../../../node_modules/vant/es/dialog/index.mjs";
|
|
@@ -185,7 +185,7 @@ const _sfc_main = {
|
|
|
185
185
|
};
|
|
186
186
|
}
|
|
187
187
|
};
|
|
188
|
-
const _AppDetail = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
188
|
+
const _AppDetail = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-64154720"]]);
|
|
189
189
|
export {
|
|
190
190
|
_AppDetail as default
|
|
191
191
|
};
|
|
@@ -3,15 +3,13 @@ import "../../../../../node_modules/element-plus/es/index.mjs";
|
|
|
3
3
|
/* empty css */
|
|
4
4
|
/* empty css */
|
|
5
5
|
/* empty css */
|
|
6
|
-
import { ref, computed, watch, createBlock, openBlock, resolveDynamicComponent, mergeProps, normalizeClass, withCtx, createElementVNode, normalizeStyle, createElementBlock, Fragment, createCommentVNode, normalizeProps, toDisplayString, createVNode, createTextVNode, renderList } from "vue";
|
|
6
|
+
import { ref, computed, watch, resolveComponent, createBlock, openBlock, resolveDynamicComponent, mergeProps, normalizeClass, withCtx, createElementVNode, normalizeStyle, createElementBlock, Fragment, createCommentVNode, normalizeProps, toDisplayString, createVNode, createTextVNode, renderList } from "vue";
|
|
7
7
|
import { parseRouteParams } from "../../utils/parseRouteParams.mjs";
|
|
8
8
|
import { calculate } from "../../utils/formulajs/calculate.mjs";
|
|
9
9
|
import { useEventFlow, executeEventFlow } from "../../utils/eventFlow/eventFlowHandler.mjs";
|
|
10
10
|
/* empty css */
|
|
11
11
|
/* empty css */
|
|
12
12
|
import { loadComponentByPath } from "../../utils/common.mjs";
|
|
13
|
-
import _Table from "../table/Table.vue.mjs";
|
|
14
|
-
import _Form from "../forms/form/Form.vue2.mjs";
|
|
15
13
|
/* empty css */
|
|
16
14
|
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
17
15
|
/* empty css */
|
|
@@ -318,6 +316,8 @@ const _sfc_main = {
|
|
|
318
316
|
}
|
|
319
317
|
return (_ctx, _cache) => {
|
|
320
318
|
var _a;
|
|
319
|
+
const _component_fec_table = resolveComponent("fec-table");
|
|
320
|
+
const _component_fec_form = resolveComponent("fec-form");
|
|
321
321
|
const _component_el_button = ElButton;
|
|
322
322
|
const _component_el_dialog = ElDialog;
|
|
323
323
|
return __props.dialogConfig.componentIsDialog ? (openBlock(), createBlock(resolveDynamicComponent(currentComponent.value), mergeProps({
|
|
@@ -395,7 +395,7 @@ const _sfc_main = {
|
|
|
395
395
|
style: normalizeStyle(contentStyle.value)
|
|
396
396
|
}, [
|
|
397
397
|
((_b = __props.dialogConfig) == null ? void 0 : _b.contentSource) === "table" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
398
|
-
__props.dialogConfig.tableContent === "select" ? (openBlock(), createBlock(
|
|
398
|
+
__props.dialogConfig.tableContent === "select" ? (openBlock(), createBlock(_component_fec_table, {
|
|
399
399
|
key: 0,
|
|
400
400
|
templateKey: __props.dialogConfig.subTableKey,
|
|
401
401
|
mode: __props.dialogConfig.subTableMode,
|
|
@@ -407,7 +407,7 @@ const _sfc_main = {
|
|
|
407
407
|
onSelectionChange: tableSelectionChange,
|
|
408
408
|
ref_key: "dialogTableRef",
|
|
409
409
|
ref: dialogTableRef
|
|
410
|
-
}, null, 8, ["templateKey", "mode", "hasPagination", "initHiddenData", "readonly", "selectMode"])) : __props.dialogConfig.tableContent === "custom" ? (openBlock(), createBlock(
|
|
410
|
+
}, null, 8, ["templateKey", "mode", "hasPagination", "initHiddenData", "readonly", "selectMode"])) : __props.dialogConfig.tableContent === "custom" ? (openBlock(), createBlock(_component_fec_table, {
|
|
411
411
|
key: 1,
|
|
412
412
|
initOption: __props.dialogConfig.customTableConfig,
|
|
413
413
|
isDialog: "",
|
|
@@ -419,7 +419,7 @@ const _sfc_main = {
|
|
|
419
419
|
ref_key: "dialogTableRef",
|
|
420
420
|
ref: dialogTableRef
|
|
421
421
|
}, null, 8, ["initOption", "hasPagination", "initHiddenData", "readonly", "selectMode"])) : createCommentVNode("", true)
|
|
422
|
-
], 64)) : ((_c = __props.dialogConfig) == null ? void 0 : _c.contentSource) === "form" ? (openBlock(), createBlock(
|
|
422
|
+
], 64)) : ((_c = __props.dialogConfig) == null ? void 0 : _c.contentSource) === "form" ? (openBlock(), createBlock(_component_fec_form, {
|
|
423
423
|
key: 1,
|
|
424
424
|
templateKey: __props.dialogConfig.subFormKey,
|
|
425
425
|
isDialog: "",
|
|
@@ -440,7 +440,7 @@ const _sfc_main = {
|
|
|
440
440
|
};
|
|
441
441
|
}
|
|
442
442
|
};
|
|
443
|
-
const DialogRenderer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
443
|
+
const DialogRenderer = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2b0f2231"]]);
|
|
444
444
|
export {
|
|
445
445
|
DialogRenderer as default
|
|
446
446
|
};
|
|
@@ -21,8 +21,6 @@ import { cloneDeep, removeEmptyValues, isEqual } from "../../../utils/common.mjs
|
|
|
21
21
|
/* empty css */
|
|
22
22
|
import { calculate } from "../../../utils/formulajs/calculate.mjs";
|
|
23
23
|
import { useEventFlow } from "../../../utils/eventFlow/eventFlowHandler.mjs";
|
|
24
|
-
import "../../table/index.mjs";
|
|
25
|
-
import "./index.mjs";
|
|
26
24
|
/* empty css */
|
|
27
25
|
/* empty css */
|
|
28
26
|
/* empty css */
|
|
@@ -1332,7 +1330,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
1332
1330
|
};
|
|
1333
1331
|
}
|
|
1334
1332
|
});
|
|
1335
|
-
const
|
|
1333
|
+
const _Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2a14b0ea"]]);
|
|
1336
1334
|
export {
|
|
1337
|
-
|
|
1335
|
+
_Form as default
|
|
1338
1336
|
};
|
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
import "../../../../../../node_modules/element-plus/es/index.mjs";
|
|
2
2
|
/* empty css */
|
|
3
3
|
/* empty css */
|
|
4
|
-
import { inject, ref, watch, computed, resolveComponent, createElementBlock, openBlock, Fragment, createCommentVNode, createVNode, createBlock, unref, createSlots, withCtx, renderList, createTextVNode, toDisplayString } from "vue";
|
|
4
|
+
import { inject, ref, watch, computed, resolveComponent, createElementBlock, openBlock, Fragment, createCommentVNode, createVNode, createBlock, unref, createSlots, withCtx, renderList, createTextVNode, toDisplayString, createElementVNode } from "vue";
|
|
5
5
|
import { SubTitle } from "../subTitle/index.mjs";
|
|
6
6
|
import { H2 } from "../h2/index.mjs";
|
|
7
7
|
import { parseRouteParams } from "../../../utils/parseRouteParams.mjs";
|
|
8
8
|
import { checkFilterMatch } from "../../../utils/parseFilterConfig.mjs";
|
|
9
|
+
import { formatCellValue } from "../../../utils/formatCellValue.mjs";
|
|
10
|
+
/* empty css */
|
|
11
|
+
import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
9
12
|
import { ElButton } from "../../../../../../node_modules/element-plus/es/components/button/index.mjs";
|
|
10
13
|
const _hoisted_1 = {
|
|
11
14
|
key: 0,
|
|
12
15
|
style: { "height": "60px", "position": "relative" }
|
|
13
16
|
};
|
|
17
|
+
const _hoisted_2 = {
|
|
18
|
+
key: 0,
|
|
19
|
+
class: "selectionSummary"
|
|
20
|
+
};
|
|
21
|
+
const _hoisted_3 = { class: "summary-badge summary-count" };
|
|
14
22
|
const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
15
23
|
inheritAttrs: false
|
|
16
24
|
}, {
|
|
@@ -96,6 +104,35 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
96
104
|
...((_b = subTableOption.value) == null ? void 0 : _b.hiddenFields) || []
|
|
97
105
|
];
|
|
98
106
|
});
|
|
107
|
+
const selectedRows = ref([]);
|
|
108
|
+
const handleSelectionChange = (rows) => {
|
|
109
|
+
selectedRows.value = rows || [];
|
|
110
|
+
};
|
|
111
|
+
const showSelectionSummary = computed(() => {
|
|
112
|
+
var _a, _b;
|
|
113
|
+
const selectMode = (_a = subTableOption.value) == null ? void 0 : _a.selectMode;
|
|
114
|
+
return selectMode === "multiple" && ((_b = subTableOption.value) == null ? void 0 : _b.showSelectionSummary);
|
|
115
|
+
});
|
|
116
|
+
const summaryItems = computed(() => {
|
|
117
|
+
var _a;
|
|
118
|
+
const summaryFields = ((_a = subTableOption.value) == null ? void 0 : _a.selectionSummaryFields) || [];
|
|
119
|
+
if (!summaryFields.length) return [];
|
|
120
|
+
return summaryFields.map((fieldName) => {
|
|
121
|
+
const field = subTableFieldsData.value.find(
|
|
122
|
+
(f) => f.fieldName === fieldName
|
|
123
|
+
);
|
|
124
|
+
if (!field) return null;
|
|
125
|
+
const sum = selectedRows.value.reduce((total, row) => {
|
|
126
|
+
const value = parseFloat(row[fieldName]);
|
|
127
|
+
return total + (isNaN(value) ? 0 : value);
|
|
128
|
+
}, 0);
|
|
129
|
+
return {
|
|
130
|
+
fieldName,
|
|
131
|
+
label: field.label || field.fieldName,
|
|
132
|
+
value: formatCellValue(sum, field)
|
|
133
|
+
};
|
|
134
|
+
}).filter(Boolean);
|
|
135
|
+
});
|
|
99
136
|
const leftButtons = computed(() => {
|
|
100
137
|
var _a, _b;
|
|
101
138
|
return (((_b = (_a = subTableOption.value) == null ? void 0 : _a.customBtns) == null ? void 0 : _b.left) || []).filter((item) => {
|
|
@@ -170,7 +207,23 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
170
207
|
unref(leftButtons) ? {
|
|
171
208
|
name: "left",
|
|
172
209
|
fn: withCtx(() => [
|
|
173
|
-
|
|
210
|
+
unref(showSelectionSummary) ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
211
|
+
createElementVNode("span", _hoisted_3, [
|
|
212
|
+
_cache[0] || (_cache[0] = createTextVNode("已勾选 ")),
|
|
213
|
+
createElementVNode("em", null, toDisplayString(unref(selectedRows).length || 0), 1),
|
|
214
|
+
_cache[1] || (_cache[1] = createTextVNode(" 条"))
|
|
215
|
+
]),
|
|
216
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(summaryItems), (item) => {
|
|
217
|
+
return openBlock(), createElementBlock("span", {
|
|
218
|
+
key: item.fieldName,
|
|
219
|
+
class: "summary-badge summary-item"
|
|
220
|
+
}, [
|
|
221
|
+
createTextVNode(toDisplayString(item.label) + " ", 1),
|
|
222
|
+
createElementVNode("em", null, toDisplayString(item.value), 1)
|
|
223
|
+
]);
|
|
224
|
+
}), 128))
|
|
225
|
+
])) : createCommentVNode("", true),
|
|
226
|
+
__props.formMode != "query" ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(unref(leftButtons), (btn) => {
|
|
174
227
|
return openBlock(), createBlock(_component_el_button, {
|
|
175
228
|
link: "",
|
|
176
229
|
type: "primary",
|
|
@@ -196,6 +249,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
196
249
|
templateKey: __props.config.subTableKey,
|
|
197
250
|
isSubTable: "",
|
|
198
251
|
onHeightLoaded: subTableLoaded,
|
|
252
|
+
onSelectionChange: handleSelectionChange,
|
|
199
253
|
mode: __props.config.subTableMode,
|
|
200
254
|
titleMode: __props.config.titleMode,
|
|
201
255
|
hasPagination: __props.config.isSubTablePagination,
|
|
@@ -213,6 +267,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
213
267
|
};
|
|
214
268
|
}
|
|
215
269
|
});
|
|
270
|
+
const _SubTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-8a26081e"]]);
|
|
216
271
|
export {
|
|
217
|
-
|
|
272
|
+
_SubTable as default
|
|
218
273
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _SubTable from "./SubTable.vue.mjs";
|
|
2
2
|
import install from "../../../utils/install.mjs";
|
|
3
|
-
const SubTable = install.withInstall("SubTable",
|
|
3
|
+
const SubTable = install.withInstall("SubTable", _SubTable);
|
|
4
4
|
export {
|
|
5
5
|
SubTable,
|
|
6
6
|
SubTable as default
|
|
@@ -160,6 +160,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
160
160
|
fields: fieldsList,
|
|
161
161
|
instance: {
|
|
162
162
|
instance: {
|
|
163
|
+
...instance,
|
|
163
164
|
proxy: formCtx
|
|
164
165
|
}
|
|
165
166
|
},
|
|
@@ -265,7 +266,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
265
266
|
};
|
|
266
267
|
}
|
|
267
268
|
});
|
|
268
|
-
const _Text = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
269
|
+
const _Text = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-632db1b4"]]);
|
|
269
270
|
export {
|
|
270
271
|
_Text as default
|
|
271
272
|
};
|
|
@@ -6,7 +6,7 @@ import { ArrowRight as arrow_right_default } from "../../../../../../node_module
|
|
|
6
6
|
import { customDialog } from "../../dialog/customDialog/index.mjs";
|
|
7
7
|
import api from "../../../api/index.mjs";
|
|
8
8
|
import { getCurrentVueInstance } from "../../../utils/getInstance.mjs";
|
|
9
|
-
import _Form from "../../forms/form/Form.
|
|
9
|
+
import _Form from "../../forms/form/Form.vue.mjs";
|
|
10
10
|
import _Table from "../../table/Table.vue.mjs";
|
|
11
11
|
import { cloneDeep, loadComponentByPath } from "../../../utils/common.mjs";
|
|
12
12
|
/* empty css */
|
|
@@ -6,6 +6,7 @@ import { VxeToolbar } from "vxe-table";
|
|
|
6
6
|
import { ArrowLeftBold as arrow_left_bold_default, Search as search_default, Edit as edit_default, Delete as delete_default, Plus as plus_default, Setting as setting_default, Download as download_default, Refresh as refresh_default } from "../../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
|
|
7
7
|
import { getCurrentVueInstance } from "../../utils/getInstance.mjs";
|
|
8
8
|
import { checkFilterMatch } from "../../utils/parseFilterConfig.mjs";
|
|
9
|
+
import { formatCellValue } from "../../utils/formatCellValue.mjs";
|
|
9
10
|
/* empty css */
|
|
10
11
|
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
11
12
|
import { ElIcon } from "../../../../../node_modules/element-plus/es/components/icon/index.mjs";
|
|
@@ -15,6 +16,11 @@ const _hoisted_2 = {
|
|
|
15
16
|
key: 1,
|
|
16
17
|
class: "template-name"
|
|
17
18
|
};
|
|
19
|
+
const _hoisted_3 = {
|
|
20
|
+
key: 2,
|
|
21
|
+
class: "selectionSummary"
|
|
22
|
+
};
|
|
23
|
+
const _hoisted_4 = { class: "summary-badge summary-count" };
|
|
18
24
|
const _sfc_main = {
|
|
19
25
|
__name: "CustomButtons",
|
|
20
26
|
props: {
|
|
@@ -40,6 +46,10 @@ const _sfc_main = {
|
|
|
40
46
|
hiddenFormData: {
|
|
41
47
|
type: Object,
|
|
42
48
|
default: {}
|
|
49
|
+
},
|
|
50
|
+
selectedRows: {
|
|
51
|
+
type: Array,
|
|
52
|
+
default: () => []
|
|
43
53
|
}
|
|
44
54
|
},
|
|
45
55
|
emits: ["click"],
|
|
@@ -77,6 +87,29 @@ const _sfc_main = {
|
|
|
77
87
|
const hasButtons = computed(() => {
|
|
78
88
|
return leftButtons.value.length > 0 || rightButtons.value.length > 0;
|
|
79
89
|
});
|
|
90
|
+
const showSelectionSummary = computed(() => {
|
|
91
|
+
var _a, _b;
|
|
92
|
+
const selectMode = (_a = props.localConfig) == null ? void 0 : _a.selectMode;
|
|
93
|
+
return selectMode === "multiple" && ((_b = props.localConfig) == null ? void 0 : _b.showSelectionSummary);
|
|
94
|
+
});
|
|
95
|
+
const summaryItems = computed(() => {
|
|
96
|
+
var _a;
|
|
97
|
+
const summaryFields = ((_a = props.localConfig) == null ? void 0 : _a.selectionSummaryFields) || [];
|
|
98
|
+
if (!summaryFields.length) return [];
|
|
99
|
+
return summaryFields.map((fieldName) => {
|
|
100
|
+
const field = fieldsData.value.find((f) => f.fieldName === fieldName);
|
|
101
|
+
if (!field) return null;
|
|
102
|
+
const sum = props.selectedRows.reduce((total, row) => {
|
|
103
|
+
const value = parseFloat(row[fieldName]);
|
|
104
|
+
return total + (isNaN(value) ? 0 : value);
|
|
105
|
+
}, 0);
|
|
106
|
+
return {
|
|
107
|
+
fieldName,
|
|
108
|
+
label: field.label || field.fieldName,
|
|
109
|
+
value: formatCellValue(sum, field)
|
|
110
|
+
};
|
|
111
|
+
}).filter(Boolean);
|
|
112
|
+
});
|
|
80
113
|
const getBtnIcon = (btnType) => {
|
|
81
114
|
const iconMap = {
|
|
82
115
|
refresh: refresh_default,
|
|
@@ -126,8 +159,24 @@ const _sfc_main = {
|
|
|
126
159
|
_cache[0] || (_cache[0] = createElementVNode("div", { class: "template-name-line" }, null, -1)),
|
|
127
160
|
createTextVNode(" " + toDisplayString(__props.localConfig.templateName), 1)
|
|
128
161
|
])) : createCommentVNode("", true),
|
|
162
|
+
!__props.isSubTable && showSelectionSummary.value ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
163
|
+
createElementVNode("span", _hoisted_4, [
|
|
164
|
+
_cache[1] || (_cache[1] = createTextVNode("已勾选 ")),
|
|
165
|
+
createElementVNode("em", null, toDisplayString(__props.selectedRows.length || 0), 1),
|
|
166
|
+
_cache[2] || (_cache[2] = createTextVNode(" 条"))
|
|
167
|
+
]),
|
|
168
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(summaryItems.value, (item) => {
|
|
169
|
+
return openBlock(), createElementBlock("span", {
|
|
170
|
+
key: item.fieldName,
|
|
171
|
+
class: "summary-badge summary-item"
|
|
172
|
+
}, [
|
|
173
|
+
createTextVNode(toDisplayString(item.label) + " ", 1),
|
|
174
|
+
createElementVNode("em", null, toDisplayString(item.value), 1)
|
|
175
|
+
]);
|
|
176
|
+
}), 128))
|
|
177
|
+
])) : createCommentVNode("", true),
|
|
129
178
|
!__props.readOnly && !__props.isSubTable && hasButtons.value ? (openBlock(), createBlock(unref(VxeToolbar), {
|
|
130
|
-
key:
|
|
179
|
+
key: 3,
|
|
131
180
|
ref: "toolbarRef",
|
|
132
181
|
style: { "flex": "1", "margin-bottom": "0", "padding": "0" }
|
|
133
182
|
}, {
|
|
@@ -171,7 +220,7 @@ const _sfc_main = {
|
|
|
171
220
|
};
|
|
172
221
|
}
|
|
173
222
|
};
|
|
174
|
-
const CustomButtons = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
223
|
+
const CustomButtons = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-d37b4cca"]]);
|
|
175
224
|
export {
|
|
176
225
|
CustomButtons as default
|
|
177
226
|
};
|
|
@@ -23,29 +23,10 @@ import { isEqual } from "../../utils/common.mjs";
|
|
|
23
23
|
/* empty css */
|
|
24
24
|
import "../../utils/formulajs/functionCore.mjs";
|
|
25
25
|
import { useEventFlow } from "../../utils/eventFlow/eventFlowHandler.mjs";
|
|
26
|
-
import getJsonAsyncUtil from "../../utils/getJsonAsyncUtil.mjs";
|
|
27
|
-
import emitter from "../../utils/eventBus.mjs";
|
|
28
|
-
import { formatCellValue } from "../../utils/formatCellValue.mjs";
|
|
29
|
-
import { useStore } from "../../../../../node_modules/vuex/dist/vuex.esm-bundler.mjs";
|
|
30
26
|
/* empty css */
|
|
31
27
|
/* empty css */
|
|
32
|
-
/* empty css */
|
|
33
|
-
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
34
|
-
/* empty css */
|
|
35
|
-
/* empty css */
|
|
36
|
-
import "../../../../../node_modules/grid-layout-plus/es/index.mjs";
|
|
37
|
-
import "../forms/formItem/index.mjs";
|
|
38
|
-
import "../details/header/index.mjs";
|
|
39
|
-
import "../details/main/index.mjs";
|
|
40
|
-
import "../details/footer/index.mjs";
|
|
41
|
-
/* empty css */
|
|
42
|
-
/* empty css */
|
|
43
|
-
/* empty css */
|
|
44
|
-
/* empty css */
|
|
45
|
-
import "../../../../../node_modules/moment/dist/moment.mjs";
|
|
46
|
-
import "../../utils/importantDataChange.mjs";
|
|
47
|
-
/* empty css */
|
|
48
28
|
/* empty css */
|
|
29
|
+
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
49
30
|
/* empty css */
|
|
50
31
|
/* empty css */
|
|
51
32
|
/* empty css */
|
|
@@ -58,6 +39,11 @@ import "../../utils/importantDataChange.mjs";
|
|
|
58
39
|
/* empty css */
|
|
59
40
|
/* empty css */
|
|
60
41
|
/* empty css */
|
|
42
|
+
import getJsonAsyncUtil from "../../utils/getJsonAsyncUtil.mjs";
|
|
43
|
+
import emitter from "../../utils/eventBus.mjs";
|
|
44
|
+
import { formatCellValue } from "../../utils/formatCellValue.mjs";
|
|
45
|
+
import { useStore } from "../../../../../node_modules/vuex/dist/vuex.esm-bundler.mjs";
|
|
46
|
+
/* empty css */
|
|
61
47
|
import { ElContainer } from "../../../../../node_modules/element-plus/es/components/container/index.mjs";
|
|
62
48
|
import { ElMessage } from "../../../../../node_modules/element-plus/es/components/message/index.mjs";
|
|
63
49
|
const _hoisted_1 = { class: "fec-vxe-table" };
|
|
@@ -560,10 +546,13 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
560
546
|
}
|
|
561
547
|
emit("page-change", { pageNo, pageSize });
|
|
562
548
|
};
|
|
549
|
+
const selectedRows = ref([]);
|
|
563
550
|
const handleCheckboxChange = (checked) => {
|
|
551
|
+
selectedRows.value = checked.records;
|
|
564
552
|
emit("selection-change", checked.records);
|
|
565
553
|
};
|
|
566
554
|
const handleCheckboxAll = (checked) => {
|
|
555
|
+
selectedRows.value = checked.records;
|
|
567
556
|
emit("selection-change", checked.records);
|
|
568
557
|
};
|
|
569
558
|
const handleRadioChange = (checked) => {
|
|
@@ -952,8 +941,9 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
952
941
|
readonly: __props.readonly,
|
|
953
942
|
isSubTable: __props.titleMode == "label",
|
|
954
943
|
onClick: handleCustomBtnClick,
|
|
955
|
-
hiddenFormData: hiddenFormData.value
|
|
956
|
-
|
|
944
|
+
hiddenFormData: hiddenFormData.value,
|
|
945
|
+
selectedRows: selectedRows.value
|
|
946
|
+
}, null, 8, ["custom-btns", "localConfig", "readonly", "isSubTable", "hiddenFormData", "selectedRows"])
|
|
957
947
|
], 64)) : createCommentVNode("", true),
|
|
958
948
|
((_d = (_c = localConfig.value) == null ? void 0 : _c.queryConfig) == null ? void 0 : _d.mode) == "dynamic" ? (openBlock(), createBlock(DynamicQuery, {
|
|
959
949
|
key: 1,
|
|
@@ -1040,7 +1030,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
|
|
|
1040
1030
|
};
|
|
1041
1031
|
}
|
|
1042
1032
|
});
|
|
1043
|
-
const _Table = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
1033
|
+
const _Table = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-80e86615"]]);
|
|
1044
1034
|
export {
|
|
1045
1035
|
_Table as default
|
|
1046
1036
|
};
|
|
@@ -13,61 +13,8 @@ import { removeEmptyValues } from "../../utils/common.mjs";
|
|
|
13
13
|
/* empty css */
|
|
14
14
|
import "../../utils/formulajs/functionCore.mjs";
|
|
15
15
|
import { useEventFlow } from "../../utils/eventFlow/eventFlowHandler.mjs";
|
|
16
|
-
/* empty css */
|
|
17
|
-
/* empty css */
|
|
18
|
-
/* empty css */
|
|
19
|
-
/* empty css */
|
|
20
|
-
/* empty css */
|
|
21
|
-
import "xe-utils";
|
|
22
|
-
/* empty css */
|
|
23
|
-
/* empty css */
|
|
24
|
-
/* empty css */
|
|
25
|
-
/* empty css */
|
|
26
|
-
/* empty css */
|
|
27
|
-
/* empty css */
|
|
28
|
-
/* empty css */
|
|
29
|
-
/* empty css */
|
|
30
|
-
/* empty css */
|
|
31
|
-
/* empty css */
|
|
32
|
-
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
33
|
-
/* empty css */
|
|
34
|
-
/* empty css */
|
|
35
|
-
/* empty css */
|
|
36
|
-
/* empty css */
|
|
37
|
-
/* empty css */
|
|
38
|
-
/* empty css */
|
|
39
|
-
/* empty css */
|
|
40
|
-
import "../../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.mjs";
|
|
41
|
-
import "../forms/text/index.mjs";
|
|
42
|
-
import "../forms/select/index.mjs";
|
|
43
|
-
import "../forms/multipleSelection/index.mjs";
|
|
44
|
-
import "../forms/date/index.mjs";
|
|
45
|
-
import "../forms/number/index.mjs";
|
|
46
|
-
/* empty css */
|
|
47
|
-
/* empty css */
|
|
48
|
-
/* empty css */
|
|
49
|
-
/* empty css */
|
|
50
|
-
/* empty css */
|
|
51
|
-
/* empty css */
|
|
52
|
-
import "../../../../../node_modules/element-plus/theme-chalk/el-tab-pane.css.mjs";
|
|
53
|
-
/* empty css */
|
|
54
|
-
import "../../utils/eventBus.mjs";
|
|
55
|
-
import "../../../../../node_modules/decimal.js/decimal.mjs";
|
|
56
|
-
/* empty css */
|
|
57
|
-
/* empty css */
|
|
58
|
-
import "../../../../../node_modules/grid-layout-plus/es/index.mjs";
|
|
59
|
-
import "../forms/formItem/index.mjs";
|
|
60
|
-
import "../details/header/index.mjs";
|
|
61
|
-
import "../details/main/index.mjs";
|
|
62
|
-
import "../details/footer/index.mjs";
|
|
63
|
-
/* empty css */
|
|
64
|
-
/* empty css */
|
|
65
|
-
/* empty css */
|
|
66
|
-
/* empty css */
|
|
67
|
-
import "../../../../../node_modules/moment/dist/moment.mjs";
|
|
68
|
-
import "../../utils/importantDataChange.mjs";
|
|
69
|
-
/* empty css */
|
|
70
16
|
/* empty css */
|
|
17
|
+
import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
71
18
|
/* empty css */
|
|
72
19
|
/* empty css */
|
|
73
20
|
/* empty css */
|
|
@@ -78,7 +25,9 @@ import "../../utils/importantDataChange.mjs";
|
|
|
78
25
|
/* empty css */
|
|
79
26
|
/* empty css */
|
|
80
27
|
/* empty css */
|
|
28
|
+
/* empty css */
|
|
81
29
|
/* empty css */
|
|
30
|
+
/* empty css */
|
|
82
31
|
import { ElLink } from "../../../../../node_modules/element-plus/es/components/link/index.mjs";
|
|
83
32
|
import { ElIcon } from "../../../../../node_modules/element-plus/es/components/icon/index.mjs";
|
|
84
33
|
import { ElButton } from "../../../../../node_modules/element-plus/es/components/button/index.mjs";
|
|
@@ -10,7 +10,7 @@ import "../../../../../node_modules/element-plus/es/index.mjs";
|
|
|
10
10
|
/* empty css */
|
|
11
11
|
/* empty css */
|
|
12
12
|
import "../../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.mjs";
|
|
13
|
-
import { useCssVars, computed, ref, watch, createElementBlock, openBlock, Fragment, createBlock, createCommentVNode, withKeys, normalizeStyle, withCtx, createElementVNode,
|
|
13
|
+
import { useCssVars, computed, ref, watch, createElementBlock, openBlock, Fragment, createBlock, createCommentVNode, withKeys, normalizeStyle, normalizeClass, withCtx, createElementVNode, renderList, withDirectives, createVNode, resolveDynamicComponent, mergeProps, vShow, createTextVNode, toDisplayString, unref } from "vue";
|
|
14
14
|
import { DArrowRight as d_arrow_right_default, DArrowLeft as d_arrow_left_default } from "../../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
|
|
15
15
|
import { Text } from "../forms/text/index.mjs";
|
|
16
16
|
import { Select } from "../forms/select/index.mjs";
|
|
@@ -52,7 +52,7 @@ const _sfc_main = {
|
|
|
52
52
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
53
53
|
var _a;
|
|
54
54
|
useCssVars((_ctx) => ({
|
|
55
|
-
"
|
|
55
|
+
"fedf9b3c": `${config.value.collapseRows * 90}px`
|
|
56
56
|
}));
|
|
57
57
|
const props = __props;
|
|
58
58
|
const emit = __emit;
|
|
@@ -183,7 +183,7 @@ const _sfc_main = {
|
|
|
183
183
|
config.value.enabled ? (openBlock(), createBlock(_component_el_form, {
|
|
184
184
|
key: 0,
|
|
185
185
|
model: filterValues.value,
|
|
186
|
-
class: "fec-table-filter",
|
|
186
|
+
class: normalizeClass(["fec-table-filter", { "should-show-toggle": shouldShowToggle.value }]),
|
|
187
187
|
"label-width": "100px",
|
|
188
188
|
"label-position": "right",
|
|
189
189
|
style: normalizeStyle({ "--column-count": config.value.columnCount }),
|
|
@@ -275,8 +275,8 @@ const _sfc_main = {
|
|
|
275
275
|
])
|
|
276
276
|
]),
|
|
277
277
|
_: 1
|
|
278
|
-
}, 8, ["model", "style"])) : createCommentVNode("", true),
|
|
279
|
-
shouldShowToggle.value ? (openBlock(), createBlock(_component_el_divider, {
|
|
278
|
+
}, 8, ["model", "class", "style"])) : createCommentVNode("", true),
|
|
279
|
+
config.value.enabled && shouldShowToggle.value ? (openBlock(), createBlock(_component_el_divider, {
|
|
280
280
|
key: 1,
|
|
281
281
|
"border-style": "dashed",
|
|
282
282
|
class: "filter-divider"
|
|
@@ -301,7 +301,7 @@ const _sfc_main = {
|
|
|
301
301
|
};
|
|
302
302
|
}
|
|
303
303
|
};
|
|
304
|
-
const TableFilter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
304
|
+
const TableFilter = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-de2e11bc"]]);
|
|
305
305
|
export {
|
|
306
306
|
TableFilter as default
|
|
307
307
|
};
|