diff --git a/public/locales/en/bs.json b/public/locales/en/bs.json index 68b8476..10ceb99 100644 --- a/public/locales/en/bs.json +++ b/public/locales/en/bs.json @@ -276,7 +276,13 @@ "textDataset": "Text dataset", "tableDataset": "Table Dataset", "createImport": "Create/Import", - "knowledge": "Knowledge base" + "knowledge": "Knowledge base", + "web": "Website", + "knowledgeId": "Knowledge Base ID", + "knowledgeImg": "Knowledge Base Avatar", + "indexModel": "Index model", + "dataUp": "Single data upper limit", + "introduce": "Introduce" }, "code": { "editPythonCodeDescription": "Edit your Python code here. This code snippet accepts module imports and a function definition. Make sure your function returns a string.", diff --git a/public/locales/zh/bs.json b/public/locales/zh/bs.json index 3a5e775..9d6dbde 100644 --- a/public/locales/zh/bs.json +++ b/public/locales/zh/bs.json @@ -268,7 +268,13 @@ "textDataset": "文本数据集", "tableDataset": "表格数据集", "createImport": "新建/导入", - "knowledge": "知识库" + "knowledge": "知识库", + "web": "网站", + "knowledgeId": "知识库ID", + "knowledgeImg": "知识库头像", + "indexModel": "索引模型", + "dataUp": "单条数据上限", + "introduce": "介绍" }, "code": { "editPythonCodeDescription": "编辑你的 Python 代码此代码片段接受模块导入和一个函数定义。确保您的函数返回一个字符串。", diff --git a/src/assets/knowledge/red-delete-icon.png b/src/assets/knowledge/red-delete-icon.png new file mode 100644 index 0000000..2069057 Binary files /dev/null and b/src/assets/knowledge/red-delete-icon.png differ diff --git a/src/assets/knowledge/set-active-icon.png b/src/assets/knowledge/set-active-icon.png new file mode 100644 index 0000000..3b11d96 Binary files /dev/null and b/src/assets/knowledge/set-active-icon.png differ diff --git a/src/controllers/API/index.ts b/src/controllers/API/index.ts index 8a70df8..1dc0462 100644 --- a/src/controllers/API/index.ts +++ b/src/controllers/API/index.ts @@ -167,6 +167,14 @@ export async function updateFileLib(data) { return await axios.put(`/api/v1/knowledge/update`, data); } +/** + * 修改支持库 + * + */ +export async function getFileLibById(id) { + return await axios.get(`/api/v1/knowledge/${id}`); +} + /** * 修改支持库文件 * diff --git a/src/pages/Knowledge/components/configModel.tsx b/src/pages/Knowledge/components/configModel.tsx new file mode 100644 index 0000000..9498bb8 --- /dev/null +++ b/src/pages/Knowledge/components/configModel.tsx @@ -0,0 +1,135 @@ +import {Link, useNavigate, useParams} from "react-router-dom"; +import { useContext, useEffect, useRef, useState } from "react"; +import { useTranslation } from "react-i18next"; +import { locationContext } from "../../../contexts/locationContext"; +import { + getFileLibById, + deleteFileLib, updateFileLib +} from "../../../controllers/API"; +import {captureAndAlertRequestErrorHoc} from "../../../controllers/request"; + + +export default function ConfigModal({ id, reload }) { + if(!open) return null + + const { t } = useTranslation() + const [knowledge, setKnowledge] = useState({}) + const [nameValue, setNameValue] = useState("") + const [descValue, setDescValue] = useState("") + const navigate = useNavigate() + + useEffect(() => { + getFileLibById(id).then(res => { + const data = res || {} + setNameValue(data.name) + setDescValue(data.description) + setKnowledge(data) + }) + }, [id]) + + // 删除 + const { delShow, idRef, close, delConfim } = useDelete() + + const handleDelete = () => { + captureAndAlertRequestErrorHoc(deleteFileLib(idRef.current).then(res => { + navigate("/filelib"); + })); + } + + const saveKnowledge = () => { + captureAndAlertRequestErrorHoc(updateFileLib({ + id: knowledge.id, + name: nameValue, + parent_id: knowledge.parent_id, + description: descValue + }).then(res => { + reload() + })) + } + + return ( +
+
+
+
配置
+
+
+
+
+
{ t("lib.knowledgeId")}
+
{knowledge.id}
+
+
+
{ t("lib.knowledgeImg")}
+
+ { + knowledge.img_url? + + : + + + + } +
+
+
+
{ t("lib.libraryName")}
+
+ setNameValue(event.target.value)} placeholder={t('lib.giveAName')} className={'form-input'}/> +
+
+
+
{ t("lib.indexModel")}
+
{knowledge.model}
+
+
+
{ t("lib.dataUp")}
+
3000
+
+
+
{ t("lib.introduce")}
+
+