diff --git a/src/components/CreateKnowledgeBaseModal.jsx b/src/components/CreateKnowledgeBaseModal.jsx index 4efd85e..79f66a0 100644 --- a/src/components/CreateKnowledgeBaseModal.jsx +++ b/src/components/CreateKnowledgeBaseModal.jsx @@ -4,6 +4,7 @@ import SvgIcon from './SvgIcon'; // 部门和组别的映射关系 const departmentGroups = { 技术部: ['开发组', '测试组', '运维组', '架构组', '安全组'], + 测试部: ['测试组'], 产品部: ['产品规划组', '用户研究组', '交互设计组', '项目管理组'], 市场部: ['品牌推广组', '市场调研组', '客户关系组', '社交媒体组'], 行政部: ['人事组', '财务组', '行政管理组', '后勤组'], diff --git a/src/components/SearchBar.jsx b/src/components/SearchBar.jsx index 8c7bdf3..cefac8c 100644 --- a/src/components/SearchBar.jsx +++ b/src/components/SearchBar.jsx @@ -54,12 +54,12 @@ const SearchBar = ({ }; }, []); - // 只有在用户执行搜索后且有结果时显示下拉框 + // 只有在用户执行搜索后才显示下拉框,无论是否有结果 useEffect(() => { - if (isSearching && searchResults.length > 0) { + if (isSearching) { setShowDropdown(true); } - }, [isSearching, searchResults]); + }, [isSearching]); // 处理输入变化 const handleInputChange = (e) => { @@ -111,8 +111,8 @@ const SearchBar = ({ - {/* 搜索结果下拉框 - 仅在用户搜索且有结果时显示 */} - {showDropdown && (isSearchLoading || searchResults?.length > 0) && ( + {/* 搜索结果下拉框 - 在用户搜索后显示,无论是否有结果 */} + {showDropdown && (
{ diff --git a/src/pages/KnowledgeBase/Detail/components/DocumentList.jsx b/src/pages/KnowledgeBase/Detail/components/DocumentList.jsx index 60b1db4..690ce55 100644 --- a/src/pages/KnowledgeBase/Detail/components/DocumentList.jsx +++ b/src/pages/KnowledgeBase/Detail/components/DocumentList.jsx @@ -10,6 +10,7 @@ import DocumentPreviewModal from './DocumentPreviewModal'; const DocumentList = ({ knowledgeBaseId }) => { const dispatch = useDispatch(); const { items, loading, error } = useSelector((state) => state.knowledgeBase.documents); + const currentKnowledgeBase = useSelector((state) => state.knowledgeBase.currentKnowledgeBase); const [previewModalVisible, setPreviewModalVisible] = useState(false); const [selectedDocumentId, setSelectedDocumentId] = useState(null); @@ -19,6 +20,9 @@ const DocumentList = ({ knowledgeBaseId }) => { const [displayedItems, setDisplayedItems] = useState([]); const [totalPages, setTotalPages] = useState(1); + // 检查当前用户是否有编辑权限 + const canEdit = currentKnowledgeBase?.permissions?.can_edit || false; + // 处理分页 useEffect(() => { if (!items || items.length === 0) { @@ -146,12 +150,14 @@ const DocumentList = ({ knowledgeBaseId }) => { > 预览 - + {canEdit && ( + + )}
diff --git a/src/pages/KnowledgeBase/Detail/components/KnowledgeBaseForm.jsx b/src/pages/KnowledgeBase/Detail/components/KnowledgeBaseForm.jsx index e70ef13..1ed0640 100644 --- a/src/pages/KnowledgeBase/Detail/components/KnowledgeBaseForm.jsx +++ b/src/pages/KnowledgeBase/Detail/components/KnowledgeBaseForm.jsx @@ -75,7 +75,7 @@ const KnowledgeBaseForm = ({ id='name' name='name' value={formData.name} - disabled={!formData.permissions.can_edit} + disabled={!(formData.permissions && formData.permissions.can_edit)} onChange={onInputChange} /> {formErrors.name &&
{formErrors.name}
} @@ -91,7 +91,7 @@ const KnowledgeBaseForm = ({ name='desc' rows='3' value={formData.desc} - disabled={!formData.permissions.can_edit} + disabled={!(formData.permissions && formData.permissions.can_edit)} onChange={onInputChange} > {formErrors.desc &&
{formErrors.desc}
} @@ -112,7 +112,7 @@ const KnowledgeBaseForm = ({ value={type.value} checked={formData.type === type.value} onChange={onInputChange} - disabled={!formData.permissions.can_edit} + disabled={!(formData.permissions && formData.permissions.can_edit)} />