:feat 新增模型配置页面和相关功能

- 新增模型配置页面组件和路由
- 实现模型配置表单和相关逻辑- 添加全局配置入口和功能- 优化首页布局和样式- 新增 404 页面组件
- 更新部分组件样式和结构
This commit is contained in:
Jefferyhcool
2025-04-22 17:01:02 +08:00
parent 2aad103a77
commit bb974b0b89
95 changed files with 7723 additions and 1697 deletions

View File

@@ -0,0 +1,5 @@
import request from '@/utils/request.ts'
export const getProviderList = async () => {
return await request.get('/get_all_providers')
}

View File

@@ -1,97 +1,81 @@
import request from "@/utils/request"
import request from '@/utils/request'
import toast from 'react-hot-toast'
import {useTaskStore} from "@/store/taskStore";
import request from "@/utils/request"
interface GenerateNotePayload {
video_url: string
platform: "bilibili" | "youtube"
quality: "fast" | "medium" | "slow"
}
import { useTaskStore } from '@/store/taskStore'
import request from '@/utils/request'
export const generateNote = async (data: {
video_url: string;
link: undefined | boolean;
screenshot: undefined | boolean;
platform: string;
quality: string
video_url: string
link: undefined | boolean
screenshot: undefined | boolean
platform: string
quality: string
}) => {
try {
const response = await request.post("/generate_note", data)
try {
const response = await request.post('/generate_note', data)
if (response.data.code!=0){
if (response.data.msg){
toast.error(response.data.msg)
}
return null
}
toast.success("笔记生成任务已提交!")
const taskId = response.data.data.task_id
console.log('res',response)
// 成功提示
useTaskStore.getState().addPendingTask(taskId, data.platform)
return response.data
} catch (e: any) {
console.error("❌ 请求出错", e)
// 错误提示
toast.error(
"笔记生成失败,请稍后重试"
)
throw e // 抛出错误以便调用方处理
if (response.data.code != 0) {
if (response.data.msg) {
toast.error(response.data.msg)
}
return null
}
toast.success('笔记生成任务已提交!')
const taskId = response.data.data.task_id
console.log('res', response)
// 成功提示
useTaskStore.getState().addPendingTask(taskId, data.platform)
return response.data
} catch (e: any) {
console.error('❌ 请求出错', e)
// 错误提示
toast.error('笔记生成失败,请稍后重试')
throw e // 抛出错误以便调用方处理
}
}
export const delete_task = async ({video_id, platform}) => {
try {
const data={
video_id,platform
}
const res = await request.post("/delete_task",
data
)
if (res.data.code === 0) {
toast.success("任务已成功删除")
return res.data
} else {
toast.error(res.data.message || "删除失败")
throw new Error(res.data.message || "删除失败")
}
} catch (e) {
toast.error("请求异常,删除任务失败")
console.error("❌ 删除任务失败:", e)
throw e
export const delete_task = async ({ video_id, platform }) => {
try {
const data = {
video_id,
platform,
}
const res = await request.post('/delete_task', data)
if (res.data.code === 0) {
toast.success('任务已成功删除')
return res.data
} else {
toast.error(res.data.message || '删除失败')
throw new Error(res.data.message || '删除失败')
}
} catch (e) {
toast.error('请求异常,删除任务失败')
console.error('❌ 删除任务失败:', e)
throw e
}
}
export const get_task_status = async (task_id: string) => {
try {
const response = await request.get('/task_status/' + task_id)
export const get_task_status=async (task_id:string)=>{
try {
const response = await request.get("/task_status/"+task_id)
if (response.data.code==0 && response.data.status=='SUCCESS') {
// toast.success("笔记生成成功")
}
console.log('res',response)
// 成功提示
return response.data
if (response.data.code == 0 && response.data.status == 'SUCCESS') {
// toast.success("笔记生成成功")
}
catch (e){
console.error("❌ 请求出错", e)
console.log('res', response)
// 成功提示
// 错误提示
toast.error(
"笔记生成失败,请稍后重试"
)
return response.data
} catch (e) {
console.error('❌ 请求出错', e)
throw e // 抛出错误以便调用方处理
}
}
// 错误提示
toast.error('笔记生成失败,请稍后重试')
throw e // 抛出错误以便调用方处理
}
}