@fecp/designer 5.6.9 → 5.6.11
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/FieldSetMapping.vue2.mjs +11 -3
- package/es/designer/src/packages/dialog/useDialogDialog.mjs +1 -1
- package/es/designer/src/packages/dialogGlobal/index.vue.mjs +2 -1
- package/es/designer/src/packages/dialogGlobal/useDialogGlobalDialog.mjs +1 -1
- package/es/designer/src/packages/eventFlow/dialog/action/TableSelection.vue2.mjs +64 -0
- package/es/designer/src/packages/eventFlow/dialog/action/config.mjs +10 -0
- package/es/designer/src/packages/form/property/widgets.vue.mjs +2 -2
- package/es/designer/src/packages/table/headerBtn.vue.mjs +1 -0
- package/es/designer.css +153 -123
- package/es/packages/vue/src/components/dialog/DialogRenderer.vue2.mjs +13 -10
- package/es/packages/vue/src/components/forms/formItem/FormItem.vue.mjs +83 -89
- package/es/packages/vue/src/components/forms/roleSelect/RoleSelect.vue.mjs +28 -31
- package/es/packages/vue/src/components/forms/text/Text.vue.mjs +10 -11
- package/es/packages/vue/src/components/forms/userSelect/UserSelect.vue.mjs +28 -31
- package/es/packages/vue/src/components/table/Table.vue.mjs +23 -3
- package/es/packages/vue/src/utils/datasource.mjs +18 -9
- package/es/packages/vue/src/utils/eventFlow/actionHandlers.mjs +43 -0
- package/es/packages/vue/src/utils/importantDataChange.mjs +1 -15
- package/lib/designer/package.json.js +1 -1
- package/lib/designer/src/components/FieldSetMapping.vue2.js +11 -3
- package/lib/designer/src/packages/dialog/useDialogDialog.js +1 -1
- package/lib/designer/src/packages/dialogGlobal/index.vue.js +2 -1
- package/lib/designer/src/packages/dialogGlobal/useDialogGlobalDialog.js +1 -1
- package/lib/designer/src/packages/eventFlow/dialog/action/TableSelection.vue2.js +64 -0
- package/lib/designer/src/packages/eventFlow/dialog/action/config.js +10 -0
- package/lib/designer/src/packages/form/property/widgets.vue.js +2 -2
- package/lib/designer/src/packages/table/headerBtn.vue.js +1 -0
- package/lib/designer.css +153 -123
- package/lib/packages/vue/src/components/dialog/DialogRenderer.vue2.js +12 -9
- package/lib/packages/vue/src/components/forms/formItem/FormItem.vue.js +88 -94
- package/lib/packages/vue/src/components/forms/roleSelect/RoleSelect.vue.js +27 -30
- package/lib/packages/vue/src/components/forms/text/Text.vue.js +9 -10
- package/lib/packages/vue/src/components/forms/userSelect/UserSelect.vue.js +27 -30
- package/lib/packages/vue/src/components/table/Table.vue.js +23 -3
- package/lib/packages/vue/src/utils/datasource.js +18 -9
- package/lib/packages/vue/src/utils/eventFlow/actionHandlers.js +43 -0
- package/lib/packages/vue/src/utils/importantDataChange.js +1 -15
- package/package.json +1 -1
|
@@ -392,6 +392,47 @@ async function handleTableChildSelection(node, data, fields, context) {
|
|
|
392
392
|
};
|
|
393
393
|
}
|
|
394
394
|
}
|
|
395
|
+
async function handleTableSelection(node, data, fields, context) {
|
|
396
|
+
var _a, _b, _c, _d, _e;
|
|
397
|
+
const basic = node.basic || {};
|
|
398
|
+
debugger;
|
|
399
|
+
const tableComponent = (_a = context.components) == null ? void 0 : _a.table;
|
|
400
|
+
const setFormDataMethod = (_c = (_b = tableComponent == null ? void 0 : tableComponent.$) == null ? void 0 : _b.exposed) == null ? void 0 : _c.setFormData;
|
|
401
|
+
const getSelectionMethod = (_e = (_d = tableComponent == null ? void 0 : tableComponent.$) == null ? void 0 : _d.exposed) == null ? void 0 : _e.getSelection;
|
|
402
|
+
if (typeof getSelectionMethod === "function") {
|
|
403
|
+
const rows = await getSelectionMethod();
|
|
404
|
+
const fieldMapping = basic.tableSelectionFieldMapping;
|
|
405
|
+
if (fieldMapping && Array.isArray(fieldMapping)) {
|
|
406
|
+
let formData = {};
|
|
407
|
+
fieldMapping.forEach((mapping) => {
|
|
408
|
+
const { field, value } = mapping;
|
|
409
|
+
const targetField = fields.find((item) => item.id == field);
|
|
410
|
+
if (!targetField) {
|
|
411
|
+
return {
|
|
412
|
+
success: false,
|
|
413
|
+
message: `未找到字段: ${field}`
|
|
414
|
+
};
|
|
415
|
+
}
|
|
416
|
+
const values = rows.map((row) => row[value]);
|
|
417
|
+
formData[targetField.fieldName] = values.join(",");
|
|
418
|
+
});
|
|
419
|
+
if (typeof setFormDataMethod === "function") {
|
|
420
|
+
setFormDataMethod(formData);
|
|
421
|
+
return {
|
|
422
|
+
success: true,
|
|
423
|
+
message: "赋值成功"
|
|
424
|
+
};
|
|
425
|
+
} else {
|
|
426
|
+
console.error("未找到列表组件的 setFormData 方法");
|
|
427
|
+
return {
|
|
428
|
+
success: false,
|
|
429
|
+
message: "列表组件未正确配置或 setFormData 方法未暴露",
|
|
430
|
+
shouldShowError: true
|
|
431
|
+
};
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
}
|
|
395
436
|
async function handleTableRowDelete(node, data, fields, context) {
|
|
396
437
|
var _a, _b, _c;
|
|
397
438
|
console.log("[EventFlow] 执行表格行删除:", node.basic);
|
|
@@ -832,6 +873,7 @@ const defaultActionHandlers = {
|
|
|
832
873
|
"table-row-delete": handleTableRowDelete,
|
|
833
874
|
"table-child-refresh": handleTableChildRefresh,
|
|
834
875
|
"table-child-selection": handleTableChildSelection,
|
|
876
|
+
"table-selection": handleTableSelection,
|
|
835
877
|
"form-setValue": handleFormSetValue,
|
|
836
878
|
"form-submit": handleFormSubmit,
|
|
837
879
|
custom: handleCustomAction,
|
|
@@ -853,4 +895,5 @@ exports.handleTableChildRefresh = handleTableChildRefresh;
|
|
|
853
895
|
exports.handleTableChildSelection = handleTableChildSelection;
|
|
854
896
|
exports.handleTableRefresh = handleTableRefresh;
|
|
855
897
|
exports.handleTableRowDelete = handleTableRowDelete;
|
|
898
|
+
exports.handleTableSelection = handleTableSelection;
|
|
856
899
|
exports.handleUpload = handleUpload;
|
|
@@ -9,7 +9,7 @@ function camelToColumn(fieldName) {
|
|
|
9
9
|
if (!fieldName) return "";
|
|
10
10
|
return fieldName.replace(/([A-Z])/g, "_$1").toUpperCase();
|
|
11
11
|
}
|
|
12
|
-
|
|
12
|
+
[
|
|
13
13
|
{
|
|
14
14
|
logId: "67edd238e0d1eabf032c456adef6b215",
|
|
15
15
|
tableName: "LEASE_INIT_APPLY",
|
|
@@ -53,12 +53,6 @@ const MOCK_DATA = [
|
|
|
53
53
|
runTime: 69
|
|
54
54
|
}
|
|
55
55
|
];
|
|
56
|
-
async function mockFetchChanges(params) {
|
|
57
|
-
await new Promise((resolve) => setTimeout(resolve, 200));
|
|
58
|
-
return MOCK_DATA.filter(
|
|
59
|
-
(item) => item.tableName === params.tableName && item.keyName === params.keyName && item.keyValue === params.keyValue
|
|
60
|
-
);
|
|
61
|
-
}
|
|
62
56
|
class ImportantDataChangeManager {
|
|
63
57
|
/**
|
|
64
58
|
* @param {Array} configList - 配置组 [{ tableName, keyField: { type, value } }]
|
|
@@ -98,7 +92,6 @@ class ImportantDataChangeManager {
|
|
|
98
92
|
* TODO: 替换 mock API 为真实后端接口
|
|
99
93
|
*/
|
|
100
94
|
async fetchChanges() {
|
|
101
|
-
var _a;
|
|
102
95
|
const allRecords = [];
|
|
103
96
|
for (const config of this.configList) {
|
|
104
97
|
const keyName = this._getKeyName(config.keyField);
|
|
@@ -109,13 +102,6 @@ class ImportantDataChangeManager {
|
|
|
109
102
|
keyName,
|
|
110
103
|
keyValue
|
|
111
104
|
});
|
|
112
|
-
debugger;
|
|
113
|
-
await mockFetchChanges({
|
|
114
|
-
tableName: (_a = config.tableName) == null ? void 0 : _a.toUpperCase(),
|
|
115
|
-
keyName,
|
|
116
|
-
keyValue
|
|
117
|
-
});
|
|
118
|
-
debugger;
|
|
119
105
|
allRecords.push(...records);
|
|
120
106
|
}
|
|
121
107
|
this.changeRecords = allRecords;
|