feat: 完成整体内容开发

This commit is contained in:
2026-05-22 16:27:35 +08:00
parent 5e05bf4f63
commit d3cb786edb
72 changed files with 2410 additions and 29 deletions
+33
View File
@@ -0,0 +1,33 @@
<!-- app/pages/dashboard.vue - 运行状态与最近问答记录页面 -->
<script lang="ts" setup>
import QaRecordDetail from "@/components/dashboard/QaRecordDetail.vue";
import QaRecordsTable from "@/components/dashboard/QaRecordsTable.vue";
import StatsOverview from "@/components/dashboard/StatsOverview.vue";
import { useAnswerStore } from "@/stores/answer";
const answerStore = useAnswerStore();
useHead({
title: "Dashboard - OCS AI 答题服务"
});
/**
* 客户端 ready 后加载 Dashboard 数据
*
* Dashboard 数据来自当前运行中的 Nitro 进程;放到客户端 ready 阶段可以避免
* `nuxt build` 在构建期等待运行态请求,同时刷新页面后仍会自动拉取真实状态。
*/
if (import.meta.client) {
onNuxtReady(() => {
void answerStore.loadDashboard();
});
}
</script>
<template>
<div class="grid gap-6">
<StatsOverview />
<QaRecordsTable />
<QaRecordDetail />
</div>
</template>
+12
View File
@@ -0,0 +1,12 @@
<!-- app/pages/docs.vue - API 文档页替代旧 Flask /docs 模板 -->
<script lang="ts" setup>
import ApiDocsContent from "@/components/docs/ApiDocsContent.vue";
useHead({
title: "API 文档 - OCS AI 答题服务"
});
</script>
<template>
<ApiDocsContent />
</template>
+20
View File
@@ -0,0 +1,20 @@
<!-- app/pages/index.vue - 首页直接提供可用的答题工作台 -->
<script lang="ts" setup>
import AnswerForm from "@/components/home/AnswerForm.vue";
import AnswerResult from "@/components/home/AnswerResult.vue";
import OcsConfigCard from "@/components/home/OcsConfigCard.vue";
useHead({
title: "OCS AI 答题服务"
});
</script>
<template>
<div class="grid items-start gap-6 lg:grid-cols-[minmax(0,1fr)_420px]">
<div class="grid gap-5">
<AnswerForm />
<AnswerResult />
</div>
<OcsConfigCard />
</div>
</template>