quxin
2026-09-02 55f0ca7c32e522ddbdefea0487c7fbde047707d9
修复:
物料中的SOP/SIP上传图片后,点击保存后图片没有展示
已修改2个文件
15 ■■■■ 文件已修改
src/components/upload/use-upload.ts 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/mes/md/item/modules/product-media-list.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/upload/use-upload.ts
@@ -103,12 +103,18 @@
  ) {
    const formData = new FormData();
    formData.append('files', file);
    const blobs = await requestClient.post('/system/storage-blob/upload', formData, {
    // 使用公共上传接口,返回永久公开 previewURL
    const blobs = await requestClient.post('/system/storage-blob/public-upload', formData, {
      onUploadProgress,
      headers: { 'Content-Type': 'multipart/form-data' },
    });
    const blob = Array.isArray(blobs) ? blobs[0] : blobs;
    return blob ? { url: blob.url || blob.previewURL, name: blob.name, id: blob.id } : {};
    // 存储完整 previewURL(含 publicKey),确保可访问
    return blob ? {
      url: blob.previewURL || blob.url,
      name: blob.name || blob.originalFilename,
      id: blob.id
    } : {};
  }
  return {
src/views/mes/md/item/modules/product-media-list.vue
@@ -56,8 +56,9 @@
function resolveImageUrl(url?: string): string {
  if (!url) return '';
  try {
    const { pathname } = new URL(url, window.location.origin);
    return pathname;
    const { pathname, search } = new URL(url, window.location.origin);
    // 保留 pathname + 查询参数(publicKey),确保后端能验证
    return pathname + search;
  } catch {
    return url;
  }