更新开发环境API服务地址至192.168.3.30,调整ESLint配置以忽略特定变量,添加数据集和文档相关的创建与更新接口,优化错误处理和用户反馈,移除模拟数据,增强代码可读性。

This commit is contained in:
2026-03-24 18:00:17 +08:00
parent e94204423b
commit 891f8ed776
18 changed files with 695 additions and 298 deletions

View File

@@ -342,12 +342,10 @@ export default {
<script setup lang="ts">
import { ref, reactive, onMounted } from 'vue';
import { useRouter } from 'vue-router';
import { ElMessage, ElMessageBox } from 'element-plus';
import type { FormInstance, FormRules, UploadFile } from 'element-plus';
import DocumentDetailDialog from './component/documentDetailDialog.vue';
const router = useRouter();
import { listDatasets, createKnowledgeBase, updateKnowledgeBase, deleteDataset } from '/@/api/knowledge/dataset';
// 数据集相关
const datasetLoading = ref(false);
@@ -402,12 +400,6 @@ const formatFileSize = (size: number) => {
return (size / 1024 / 1024).toFixed(1) + ' MB';
};
// 格式化日期
const formatDate = (date: string) => {
if (!date) return '';
return date.split(' ')[0];
};
// 获取文件图标颜色
const getFileIconColor = (fileType: string) => {
const colors: Record<string, string> = {
@@ -436,18 +428,13 @@ const getParseStatusType = (status: string) => {
const getDatasetList = async () => {
datasetLoading.value = true;
try {
// 模拟数据
datasetList.value = [
{
id: '1',
name: 'dataset_tenant_1',
fileCount: 3,
totalSize: 30,
createdAt: '28/01/2026 14:09:45',
},
];
} catch (error) {
console.error('获取数据集列表失败:', error);
const response = await listDatasets({
pageNum: 1,
pageSize: 100
});
datasetList.value = response.data.list || [];
} catch (_error) {
ElMessage.error('获取知识库列表失败');
} finally {
datasetLoading.value = false;
}
@@ -493,12 +480,17 @@ const onDeleteDataset = (item: any) => {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
ElMessage.success('删除成功');
if (currentDataset.value?.id === item.id) {
currentDataset.value = null;
}).then(async () => {
try {
await deleteDataset(item.id);
ElMessage.success('删除成功');
if (currentDataset.value?.id === item.id) {
currentDataset.value = null;
}
getDatasetList();
} catch (_error) {
ElMessage.error('删除失败,请重试');
}
getDatasetList();
}).catch(() => {});
};
@@ -511,11 +503,26 @@ const onSaveDataset = async () => {
if (valid) {
datasetSaving.value = true;
try {
if (datasetForm.id) {
// 更新知识库
await updateKnowledgeBase({
id: datasetForm.id,
name: datasetForm.name,
description: datasetForm.description
});
} else {
// 创建知识库
await createKnowledgeBase({
name: datasetForm.name,
description: datasetForm.description
});
}
ElMessage.success(datasetForm.id ? '保存成功' : '创建成功');
showDatasetDialog.value = false;
getDatasetList();
} catch (error) {
console.error('保存失败:', error);
} catch (_error) {
ElMessage.error('保存失败,请重试');
} finally {
datasetSaving.value = false;
}
@@ -559,8 +566,8 @@ const getFileList = async () => {
parseStatus: 'general',
},
];
} catch (error) {
console.error('获取文件列表失败:', error);
} catch (_error) {
ElMessage.error('获取文件列表失败');
} finally {
fileLoading.value = false;
}
@@ -589,8 +596,8 @@ const onConfirmUpload = async () => {
ElMessage.success(`成功上传 ${uploadFileList.value.length} 个文件`);
showUploadDialog.value = false;
getFileList();
} catch (error) {
console.error('上传失败:', error);
} catch (_error) {
ElMessage.error('上传失败,请重试');
} finally {
uploading.value = false;
}