|
@@ -19,7 +19,7 @@
|
|
|
:file-list="ruleFormData.fileUrlList"
|
|
:file-list="ruleFormData.fileUrlList"
|
|
|
:disabled="isViewMode"
|
|
:disabled="isViewMode"
|
|
|
:allow-all-file-types="true"
|
|
:allow-all-file-types="true"
|
|
|
- @uploadSuccess="handleUploadSuccess"
|
|
|
|
|
|
|
+ @uploadSuccess="(list: FileItem[]) => handleUploadSuccess(list)"
|
|
|
/>
|
|
/>
|
|
|
</template>
|
|
</template>
|
|
|
<template #content>
|
|
<template #content>
|
|
@@ -184,7 +184,7 @@
|
|
|
ruleFormData.status = res.status ?? 1;
|
|
ruleFormData.status = res.status ?? 1;
|
|
|
|
|
|
|
|
// 如果有文件URL,转换为FileItem格式
|
|
// 如果有文件URL,转换为FileItem格式
|
|
|
- ruleFormData.fileUrlList = convertFileUrlToFileItems(res.fileUrl || '');
|
|
|
|
|
|
|
+ ruleFormData.fileUrlList = JSON.parse(res.fileUrl || '[]');
|
|
|
}
|
|
}
|
|
|
cloneRuleFormData();
|
|
cloneRuleFormData();
|
|
|
} catch (e) {
|
|
} catch (e) {
|
|
@@ -205,35 +205,34 @@
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
// 处理文件上传:先上传文件获取 URL,然后提取 fileUrl
|
|
// 处理文件上传:先上传文件获取 URL,然后提取 fileUrl
|
|
|
- let fileUrl = '';
|
|
|
|
|
- if (ruleFormData.fileUrlList && ruleFormData.fileUrlList.length > 0) {
|
|
|
|
|
- // 分离已有URL的文件和新上传的文件
|
|
|
|
|
- const existingFiles: string[] = [];
|
|
|
|
|
- const newFiles: FileItem[] = [];
|
|
|
|
|
-
|
|
|
|
|
- ruleFormData.fileUrlList.forEach((file: FileItem) => {
|
|
|
|
|
- // 如果文件已经有 fileUrl 且没有 file 对象,说明是已有文件
|
|
|
|
|
- if (file.fileUrl && !file.file) {
|
|
|
|
|
- existingFiles.push(file.fileUrl);
|
|
|
|
|
- } else {
|
|
|
|
|
- // 否则是需要上传的新文件
|
|
|
|
|
- newFiles.push(file);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ // let fileUrl = '';
|
|
|
|
|
+ // if (ruleFormData.fileUrlList && ruleFormData.fileUrlList.length > 0) {
|
|
|
|
|
+ // // 分离已有URL的文件和新上传的文件
|
|
|
|
|
+ // const existingFiles: string[] = [];
|
|
|
|
|
+ // const newFiles: FileItem[] = [];
|
|
|
|
|
+ // ruleFormData.fileUrlList.forEach((file: FileItem) => {
|
|
|
|
|
+ // // 如果文件已经有 fileUrl 且没有 file 对象,说明是已有文件
|
|
|
|
|
+ // if (file.fileUrl && !file.file) {
|
|
|
|
|
+ // existingFiles.push(file.fileUrl);
|
|
|
|
|
+ // } else {
|
|
|
|
|
+ // // 否则是需要上传的新文件
|
|
|
|
|
+ // newFiles.push(file);
|
|
|
|
|
+ // }
|
|
|
|
|
+ // });
|
|
|
|
|
|
|
|
- // 上传新文件
|
|
|
|
|
- let uploadedUrls: string[] = [];
|
|
|
|
|
- if (newFiles.length > 0) {
|
|
|
|
|
- const uploadedFiles = await formatAttachmentList(newFiles);
|
|
|
|
|
- uploadedUrls = uploadedFiles
|
|
|
|
|
- .map((file: any) => file.fileUrl || file.url || '')
|
|
|
|
|
- .filter((url: string) => url);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // // 上传新文件
|
|
|
|
|
+ // let uploadedUrls: string[] = [];
|
|
|
|
|
+ // if (newFiles.length > 0) {
|
|
|
|
|
+ // const uploadedFiles = await formatAttachmentList(newFiles);
|
|
|
|
|
+ // uploadedUrls = uploadedFiles
|
|
|
|
|
+ // .map((file: any) => file.fileUrl || file.url || '')
|
|
|
|
|
+ // .filter((url: string) => url);
|
|
|
|
|
+ // }
|
|
|
|
|
|
|
|
- // 合并已有URL和新上传的URL,取第一个作为fileUrl
|
|
|
|
|
- const allUrls = [...existingFiles, ...uploadedUrls].filter((url: string) => url);
|
|
|
|
|
- fileUrl = allUrls.length > 0 ? allUrls[0] : '';
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // // 合并已有URL和新上传的URL,取第一个作为fileUrl
|
|
|
|
|
+ // const allUrls = [...existingFiles, ...uploadedUrls].filter((url: string) => url);
|
|
|
|
|
+ // fileUrl = allUrls.length > 0 ? allUrls[0] : '';
|
|
|
|
|
+ // }
|
|
|
|
|
|
|
|
const basePayload: ProductionSafetyFile = {
|
|
const basePayload: ProductionSafetyFile = {
|
|
|
fileName: ruleFormData.fileName,
|
|
fileName: ruleFormData.fileName,
|
|
@@ -242,7 +241,7 @@
|
|
|
fileVersion: ruleFormData.fileVersion,
|
|
fileVersion: ruleFormData.fileVersion,
|
|
|
fileFormat: ruleFormData.fileFormat,
|
|
fileFormat: ruleFormData.fileFormat,
|
|
|
releaseDate: ruleFormData.releaseDate,
|
|
releaseDate: ruleFormData.releaseDate,
|
|
|
- fileUrl: fileUrl || undefined,
|
|
|
|
|
|
|
+ fileUrl: JSON.stringify(ruleFormData.fileUrlList) || undefined,
|
|
|
content: ruleFormData.content || undefined,
|
|
content: ruleFormData.content || undefined,
|
|
|
status: ruleFormData.status ?? 1,
|
|
status: ruleFormData.status ?? 1,
|
|
|
};
|
|
};
|