From 15cb3ef62876447b21b7cd1b888bbb16d9547e1b Mon Sep 17 00:00:00 2001 From: dataeaseShu Date: Wed, 17 Sep 2025 11:17:15 +0800 Subject: [PATCH] feat(Data Training): add data training --- frontend/src/api/training.ts | 11 + frontend/src/components/layout/LayoutDsl.vue | 12 +- frontend/src/components/layout/Menu.vue | 1 + frontend/src/i18n/en.json | 14 +- frontend/src/i18n/zh-CN.json | 14 +- frontend/src/router/index.ts | 7 + frontend/src/views/chat/index.vue | 2 +- .../src/views/system/appearance/index.vue | 2 +- .../src/views/system/professional/index.vue | 7 - frontend/src/views/system/training/index.vue | 752 ++++++++++++++++++ 10 files changed, 805 insertions(+), 17 deletions(-) create mode 100644 frontend/src/api/training.ts create mode 100644 frontend/src/views/system/training/index.vue diff --git a/frontend/src/api/training.ts b/frontend/src/api/training.ts new file mode 100644 index 00000000..c88ad13a --- /dev/null +++ b/frontend/src/api/training.ts @@ -0,0 +1,11 @@ +import { request } from '@/utils/request' + +export const trainingApi = { + getList: (pageNum: any, pageSize: any, params: any) => + request.get(`/system/data-training/page/${pageNum}/${pageSize}`, { + params, + }), + updateEmbedded: (data: any) => request.put('/system/data-training', data), + deleteEmbedded: (params: any) => request.delete('/system/data-training', { data: params }), + getOne: (id: any) => request.get(`/system/data-training/${id}`), +} diff --git a/frontend/src/components/layout/LayoutDsl.vue b/frontend/src/components/layout/LayoutDsl.vue index f17b8129..9a0fe5f9 100644 --- a/frontend/src/components/layout/LayoutDsl.vue +++ b/frontend/src/components/layout/LayoutDsl.vue @@ -61,37 +61,37 @@ const showSysmenu = computed(() => { width="30" height="30" :src="logo_fold_blue" - @click="toChatIndex" style="margin: 0 0 6px 5px; cursor: pointer" + @click="toChatIndex" /> diff --git a/frontend/src/components/layout/Menu.vue b/frontend/src/components/layout/Menu.vue index b2081936..24143e95 100644 --- a/frontend/src/components/layout/Menu.vue +++ b/frontend/src/components/layout/Menu.vue @@ -50,6 +50,7 @@ const routerList = computed(() => { !route.path.includes('canvas') && !route.path.includes('member') && !route.path.includes('professional') && + !route.path.includes('training') && !route.path.includes('permission') && !route.path.includes('preview') && route.path !== '/login' && diff --git a/frontend/src/i18n/en.json b/frontend/src/i18n/en.json index ea6d621c..4bc9ff34 100644 --- a/frontend/src/i18n/en.json +++ b/frontend/src/i18n/en.json @@ -6,6 +6,18 @@ "Dashboard": "Dashboard", "AI Model Configuration": "AI Model Configuration" }, + "training": { + "data_training": "Data Training", + "problem_description": "Problem Description", + "sample_sql": "Sample SQL", + "search_problem": "Search Problem", + "add_training_data": "Add Training Data", + "training_data_details": "Training Data Details", + "training_data_items": "Do you want to delete the {msg} selected training data items?", + "sql_statement": "SQL Statement", + "edit_training_data": "Edit Training Data", + "sales_this_year": "Do you want to delete the training data: {msg}?" + }, "professional": { "cannot_be_repeated": "Term name, synonyms cannot be repeated", "code_for_debugging": "Copy the following code for debugging", @@ -656,4 +668,4 @@ "setting_successfully": "Setting Successfully", "customize_theme_color": "Customize theme color" } -} +} \ No newline at end of file diff --git a/frontend/src/i18n/zh-CN.json b/frontend/src/i18n/zh-CN.json index 192f6827..bb597f2d 100644 --- a/frontend/src/i18n/zh-CN.json +++ b/frontend/src/i18n/zh-CN.json @@ -6,6 +6,18 @@ "Dashboard": "仪表盘", "AI Model Configuration": "模型配置" }, + "training": { + "data_training": "数据训练", + "problem_description": "问题描述", + "sample_sql": "示例 SQL", + "search_problem": "搜索问题", + "add_training_data": "添加训练数据", + "training_data_details": "训练数据详情", + "training_data_items": "是否删除选中的 {msg} 条训练数据?", + "sql_statement": "SQL 语句", + "edit_training_data": "编辑训练数据", + "sales_this_year": "是否删除训练数据:{msg}?" + }, "professional": { "cannot_be_repeated": "术语名称,同义词不能重复", "code_for_debugging": "复制以下代码进行调试", @@ -656,4 +668,4 @@ "setting_successfully": "设置成功", "customize_theme_color": "自定义主题色" } -} +} \ No newline at end of file diff --git a/frontend/src/router/index.ts b/frontend/src/router/index.ts index 7e91bc7b..0b5adb2f 100644 --- a/frontend/src/router/index.ts +++ b/frontend/src/router/index.ts @@ -16,6 +16,7 @@ import assistant from '@/views/embedded/index.vue' import EmbeddedPage from '@/views/embedded/page.vue' import Member from '@/views/system/member/index.vue' import Professional from '@/views/system/professional/index.vue' +import Training from '@/views/system/training/index.vue' import Appearance from '@/views/system/appearance/index.vue' import Permission from '@/views/system/permission/index.vue' import User from '@/views/system/user/User.vue' @@ -112,6 +113,12 @@ export const routes = [ component: Professional, meta: { title: t('professional.professional_terminology') }, }, + { + path: '/set/training', + name: 'training', + component: Training, + meta: { title: t('training.data_training') }, + }, ], }, { diff --git a/frontend/src/views/chat/index.vue b/frontend/src/views/chat/index.vue index 07455844..8f2e5bfe 100644 --- a/frontend/src/views/chat/index.vue +++ b/frontend/src/views/chat/index.vue @@ -1,7 +1,7 @@