From f14bd082c8402b0fb4c31e39827d66fb5906a6da Mon Sep 17 00:00:00 2001 From: tangjie <122778500@qq.com> Date: Thu, 9 Jul 2026 17:00:19 +0800 Subject: [PATCH] feat --- src/components/AttachmentUpload/index.js | 27 ++++++++++------- .../Container/EnterpriseInfo/OrgInfo/index.js | 6 +--- .../QualApplication/FilingListTable.jsx | 3 +- .../QualApplication/filingPersist.js | 4 +-- .../QualificationReview/FilingTabs/index.js | 29 +++++++++++++++++-- 5 files changed, 49 insertions(+), 20 deletions(-) diff --git a/src/components/AttachmentUpload/index.js b/src/components/AttachmentUpload/index.js index f6b638a..ba0c2dc 100644 --- a/src/components/AttachmentUpload/index.js +++ b/src/components/AttachmentUpload/index.js @@ -17,16 +17,23 @@ export default function AttachmentUpload({ name, label, disabled = false, maxCou if (Array.isArray(value)) { return { fileList: value }; } - return { - fileList: value - ? value.split(",").map((item) => ({ - url: item, - uid: item, - status: "done", - name: "附件", - })) - : [], - }; + if (typeof value === "string" && value) { + try { + const parsed = JSON.parse(value); + if (Array.isArray(parsed)) { + return { fileList: parsed }; + } + } catch {} + return { + fileList: value.split(",").map((item) => ({ + url: item, + uid: item, + status: "done", + name: "附件", + })), + }; + } + return { fileList: [] }; }} getValueFromEvent={({ fileList }) => { return ( diff --git a/src/pages/Container/EnterpriseInfo/OrgInfo/index.js b/src/pages/Container/EnterpriseInfo/OrgInfo/index.js index f169011..cf6f6ce 100644 --- a/src/pages/Container/EnterpriseInfo/OrgInfo/index.js +++ b/src/pages/Container/EnterpriseInfo/OrgInfo/index.js @@ -341,11 +341,7 @@ function OrgInfoPage(props) { /> - - - - - + { + if (mode === FILING_FORM_MODE.FILED) { - return record.filingStatusCode === 2; + return record.filingStatusCode === 1; } return isQualFilingEditable(record.filingStatusCode); }; diff --git a/src/pages/Container/QualApplication/filingPersist.js b/src/pages/Container/QualApplication/filingPersist.js index 2f03f13..63edba4 100644 --- a/src/pages/Container/QualApplication/filingPersist.js +++ b/src/pages/Container/QualApplication/filingPersist.js @@ -276,14 +276,14 @@ export function mergeDetailFromForms(detail, { basicValues, commitmentValues }) return { ...detail, ...basicValues, - attachmentUrl: Array.isArray(basicValues?.attachmentUrl) ? basicValues?.attachmentUrl?.map((file) => file.url).join(",") : basicValues?.attachmentUrl, + attachmentUrl: Array.isArray(basicValues?.attachmentUrl) ? JSON.stringify(basicValues?.attachmentUrl) : basicValues?.attachmentUrl, materials: detail.materials, personnelList: detail.personnelList, equipmentList: detail.equipmentList, commitment: { ...detail.commitment, ...commitmentValues, - legalRepSignatureUrl: Array.isArray(commitmentValues?.legalRepSignatureUrl) ? commitmentValues?.legalRepSignatureUrl?.map((file) => file.url).join(",") : commitmentValues?.legalRepSignatureUrl, + legalRepSignatureUrl: Array.isArray(commitmentValues?.legalRepSignatureUrl) ? commitmentValues?.legalRepSignatureUrl[0]?.url : commitmentValues?.legalRepSignatureUrl, }, }; } diff --git a/src/pages/Container/QualificationReview/FilingTabs/index.js b/src/pages/Container/QualificationReview/FilingTabs/index.js index f55cb87..0ebd264 100644 --- a/src/pages/Container/QualificationReview/FilingTabs/index.js +++ b/src/pages/Container/QualificationReview/FilingTabs/index.js @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from "react"; +import React, { useState, useEffect, useMemo } from "react"; import { Button, Descriptions, Table, Tag, Tabs, Select, Modal, Space, Image } from "antd"; import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { NS_QUAL_REVIEW } from "~/enumerate/namespace"; @@ -25,6 +25,17 @@ const FilingTabs = ({ }) => { const [viewId, setViewId] = useState(""); + + const attachmentList = useMemo(() => { + const v = detail.attachmentUrl; + if (!v) return []; + try { + const p = JSON.parse(v); + return Array.isArray(p) ? p : []; + } catch { + return []; + } + }, [detail.attachmentUrl]); const baseCols = [ @@ -62,7 +73,7 @@ const FilingTabs = ({ { title: "操作", width: 80, render: (_, record) => 预览 }, ]; - const commitment= detail.commitment || {}; + const commitment= detail.commitment || {}; const items = [ { @@ -87,6 +98,20 @@ const FilingTabs = ({ {detail.fulltimeEvaluatorCount}人 {detail.registeredEngineerCount}人 {detail.unitIntro} + + {attachmentList.length + ? attachmentList.map((item, i) => { + const isImg = /\.(png|jpe?g|gif|bmp|webp|svg)(\?.*)?$/i.test(item.url || ""); + return isImg ? ( + + ) : ( + + {item.name || `附件${i + 1}`} + + ); + }) + : "-"} + ), },