From d849bc15399eb19d64e608bf7e1506924253d576 Mon Sep 17 00:00:00 2001
From: simonkoson <28867558@qq.com>
Date: Wed, 27 May 2026 12:56:57 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=9F=A5=E8=AF=86?=
=?UTF-8?q?=E5=BA=93=E9=A1=B5=E9=9D=A2=E4=B8=89=E5=A4=84=E9=97=AE=E9=A2=98?=
=?UTF-8?q?=EF=BC=9A=E5=87=BA=E5=A4=84=E4=B8=8B=E6=8B=89=E4=B8=BA=E7=A9=BA?=
=?UTF-8?q?=E3=80=81=E5=AE=BD=E5=BA=A6=E8=B7=B3=E5=8A=A8=E3=80=81=E8=A1=A8?=
=?UTF-8?q?=E6=A0=BC=E5=88=97=E5=AE=BD=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/pages/KnowledgeBase/KnowledgeBase.jsx | 31 +++++++++++++++----
1 file changed, 25 insertions(+), 6 deletions(-)
diff --git a/frontend/src/pages/KnowledgeBase/KnowledgeBase.jsx b/frontend/src/pages/KnowledgeBase/KnowledgeBase.jsx
index 6c45e1e..b74c2f6 100644
--- a/frontend/src/pages/KnowledgeBase/KnowledgeBase.jsx
+++ b/frontend/src/pages/KnowledgeBase/KnowledgeBase.jsx
@@ -29,6 +29,7 @@ export default function KnowledgeBase() {
const [treeData, setTreeData] = useState([])
const [loading, setLoading] = useState(false)
const [uploading, setUploading] = useState(false)
+ const [sources, setSources] = useState([]) // 出处下拉选项
const [sourceTypeFilter, setSourceTypeFilter] = useState('')
const [sourceDetailFilter, setSourceDetailFilter] = useState('')
const [selectedTreeNode, setSelectedTreeNode] = useState(null) // { type, detail }
@@ -54,9 +55,20 @@ export default function KnowledgeBase() {
}
}
+ const fetchSources = async () => {
+ try {
+ const data = await knowledgeService.listSources()
+ // 接口返回 [{source: "航空知识 2026年第1期"}, ...],提取 source 字段
+ setSources(data.map(s => s.source).filter(Boolean))
+ } catch {
+ // ignore
+ }
+ }
+
useEffect(() => {
fetchItems()
fetchTree()
+ fetchSources()
}, [sourceTypeFilter])
// 上传
@@ -127,32 +139,37 @@ export default function KnowledgeBase() {
title: '标题',
dataIndex: 'title',
key: 'title',
- render: (text, record) => (
- {text}
+ width: 240,
+ render: (text) => (
+ {text}
),
},
{
title: '作者',
dataIndex: 'author',
key: 'author',
- render: (val) => val || null,
+ width: 80,
+ render: (val) => val || '-',
},
{
title: '播出/发表时间',
dataIndex: 'publish_date',
key: 'publish_date',
- render: (val) => val || null,
+ width: 156,
+ render: (val) => val || '-',
},
{
title: '出处',
dataIndex: 'source_detail',
key: 'source_detail',
+ width: 170,
render: (val) => val || '-',
},
{
title: '类型',
dataIndex: 'source_type',
key: 'source_type',
+ width: 88,
render: (val) => (
{SOURCE_TYPE_LABEL[val] || val}
@@ -163,11 +180,13 @@ export default function KnowledgeBase() {
title: '入库时间',
dataIndex: 'created_at',
key: 'created_at',
- render: (val) => val ? new Date(val).toLocaleString('zh-CN') : '-',
+ width: 140,
+ render: (val) => val ? new Date(val).toLocaleString('zh-CN', { hour12: false }).replace(' ', ' ') : '-',
},
{
title: '操作',
key: 'action',
+ width: 86,
render: (_, record) => (