chore(api): 接入 orval 自动生成 API 客户端

- 新增 orval.config.ts:从 OpenAPI spec 自动生成 TypeScript 代码
- 新增 src/api/request.ts:orval mutator,复用现有 axios 实例
- 新增 src/api/generated/:自动生成的 API 函数和类型定义(106个接口,155个类型)
- 新增 api-spec.json:后端 OpenAPI 规范快照
- package.json 新增脚本:api:fetch / api:gen / api:update

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
tonytech 2026-03-03 11:03:56 +08:00
parent 8b7615bcf1
commit 2a394a4882
163 changed files with 9554 additions and 1 deletions

5
reading-platform-frontend/.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
node_modules/
dist/
.env.local
# orval 生成的文件已提交到 git无需忽略

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,25 @@
import { defineConfig } from 'orval'
export default defineConfig({
readingPlatform: {
input: {
// 本地开发:使用下载的规范文件(运行 npm run api:fetch 更新)
// 服务器直连时改为:'http://8.148.151.56:3002/v3/api-docs'
target: './api-spec.json',
},
output: {
// 自动生成到这个目录,不要手动修改这里的文件
target: 'src/api/generated/api.ts',
schemas: 'src/api/generated/model',
client: 'axios',
// 复用项目里已有的 axios 实例(带 token、错误处理
override: {
mutator: {
path: 'src/api/request.ts',
name: 'request',
},
},
prettier: true,
},
},
})

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,10 @@
"dev": "vite",
"build": "vue-tsc && vite build",
"preview": "vite preview",
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore"
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
"api:fetch": "curl -s http://8.148.151.56:3002/v3/api-docs -o api-spec.json && echo API spec updated",
"api:gen": "orval --config orval.config.ts",
"api:update": "npm run api:fetch && npm run api:gen"
},
"dependencies": {
"@ant-design/icons-vue": "^7.0.1",
@ -31,6 +34,7 @@
"@types/node": "^20.11.28",
"@vitejs/plugin-vue": "^5.0.4",
"@vue/tsconfig": "^0.5.1",
"orval": "^7.13.2",
"sass-embedded": "^1.97.3",
"typescript": "~5.4.0",
"unplugin-auto-import": "^0.17.5",

View File

@ -0,0 +1,15 @@
# 自动生成的 API 代码
此目录由 orval 根据后端 OpenAPI 规范自动生成,**不要手动修改**。
## 更新方式
当后端接口变更后(后端工程师执行):
```bash
npm run api:update # 拉取最新规范 + 重新生成
git add api-spec.json src/api/generated/
git commit -m "chore(api): 同步最新接口规范"
git push java original:main
```
前端工程师只需 `git pull`,即可获得最新类型定义,无需手动操作。

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,12 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type BindStudentParams = {
relationship?: string;
isPrimary?: boolean;
};

View File

@ -0,0 +1,12 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type ChangePasswordParams = {
oldPassword: string;
newPassword: string;
};

View File

@ -0,0 +1,21 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Class Create Request
*/
export interface ClassCreateRequest {
/** Class name */
name: string;
/** Grade */
grade?: string;
/** Description */
description?: string;
/** Capacity */
capacity?: number;
}

View File

@ -0,0 +1,23 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Class Update Request
*/
export interface ClassUpdateRequest {
/** Class name */
name?: string;
/** Grade */
grade?: string;
/** Description */
description?: string;
/** Capacity */
capacity?: number;
/** Status */
status?: string;
}

View File

@ -0,0 +1,20 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface Clazz {
id?: number;
tenantId?: number;
name?: string;
grade?: string;
description?: string;
capacity?: number;
status?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type CompleteTaskParams = {
studentId: number;
content?: string;
attachments?: string;
};

View File

@ -0,0 +1,69 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface Course {
id?: number;
tenantId?: number;
name?: string;
code?: string;
description?: string;
coverUrl?: string;
category?: string;
ageRange?: string;
difficultyLevel?: string;
durationMinutes?: number;
objectives?: string;
status?: string;
isSystem?: number;
coreContent?: string;
introSummary?: string;
introHighlights?: string;
introGoals?: string;
introSchedule?: string;
introKeyPoints?: string;
introMethods?: string;
introEvaluation?: string;
introNotes?: string;
scheduleRefData?: string;
environmentConstruction?: string;
themeId?: number;
pictureBookName?: string;
coverImagePath?: string;
ebookPaths?: string;
audioPaths?: string;
videoPaths?: string;
otherResources?: string;
pptPath?: string;
pptName?: string;
posterPaths?: string;
tools?: string;
studentMaterials?: string;
lessonPlanData?: string;
activitiesData?: string;
assessmentData?: string;
gradeTags?: string;
domainTags?: string;
hasCollectiveLesson?: number;
version?: string;
parentId?: number;
isLatest?: number;
submittedAt?: string;
submittedBy?: number;
reviewedAt?: string;
reviewedBy?: number;
reviewComment?: string;
reviewChecklist?: string;
publishedAt?: string;
usageCount?: number;
teacherCount?: number;
avgRating?: number;
createdBy?: number;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,89 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Course Create Request
*/
export interface CourseCreateRequest {
/** Course name */
name: string;
/** Course code */
code?: string;
/** Description */
description?: string;
/** Cover URL */
coverUrl?: string;
/** Cover image path */
coverImagePath?: string;
/** Category */
category?: string;
/** Age range */
ageRange?: string;
/** Difficulty level */
difficultyLevel?: string;
/** Duration in minutes */
durationMinutes?: number;
/** Objectives */
objectives?: string;
/** Core content */
coreContent?: string;
/** Course summary */
introSummary?: string;
/** Course highlights */
introHighlights?: string;
/** Course goals */
introGoals?: string;
/** Content schedule */
introSchedule?: string;
/** Key points and difficulties */
introKeyPoints?: string;
/** Teaching methods */
introMethods?: string;
/** Evaluation methods */
introEvaluation?: string;
/** Notes and precautions */
introNotes?: string;
/** Schedule reference data (JSON) */
scheduleRefData?: string;
/** Environment construction content */
environmentConstruction?: string;
/** Theme ID */
themeId?: number;
/** Picture book name */
pictureBookName?: string;
/** Ebook paths (JSON array) */
ebookPaths?: string;
/** Audio paths (JSON array) */
audioPaths?: string;
/** Video paths (JSON array) */
videoPaths?: string;
/** Other resources (JSON array) */
otherResources?: string;
/** PPT file path */
pptPath?: string;
/** PPT file name */
pptName?: string;
/** Poster paths (JSON array) */
posterPaths?: string;
/** Teaching tools (JSON array) */
tools?: string;
/** Student materials */
studentMaterials?: string;
/** Lesson plan data (JSON) */
lessonPlanData?: string;
/** Activities data (JSON) */
activitiesData?: string;
/** Assessment data (JSON) */
assessmentData?: string;
/** Grade tags (JSON array) */
gradeTags?: string;
/** Domain tags (JSON array) */
domainTags?: string;
/** Has collective lesson */
hasCollectiveLesson?: boolean;
}

View File

@ -0,0 +1,22 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface CourseLesson {
id?: number;
courseId?: number;
title?: string;
description?: string;
content?: string;
sortOrder?: number;
durationMinutes?: number;
videoUrl?: string;
status?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,21 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface CoursePackage {
id?: number;
name?: string;
description?: string;
coverUrl?: string;
courseCount?: number;
price?: number;
status?: string;
isSystem?: number;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,91 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Course Update Request
*/
export interface CourseUpdateRequest {
/** Course name */
name?: string;
/** Course code */
code?: string;
/** Description */
description?: string;
/** Cover URL */
coverUrl?: string;
/** Cover image path */
coverImagePath?: string;
/** Category */
category?: string;
/** Age range */
ageRange?: string;
/** Difficulty level */
difficultyLevel?: string;
/** Duration in minutes */
durationMinutes?: number;
/** Objectives */
objectives?: string;
/** Status */
status?: string;
/** Core content */
coreContent?: string;
/** Course summary */
introSummary?: string;
/** Course highlights */
introHighlights?: string;
/** Course goals */
introGoals?: string;
/** Content schedule */
introSchedule?: string;
/** Key points and difficulties */
introKeyPoints?: string;
/** Teaching methods */
introMethods?: string;
/** Evaluation methods */
introEvaluation?: string;
/** Notes and precautions */
introNotes?: string;
/** Schedule reference data (JSON) */
scheduleRefData?: string;
/** Environment construction content */
environmentConstruction?: string;
/** Theme ID */
themeId?: number;
/** Picture book name */
pictureBookName?: string;
/** Ebook paths (JSON array) */
ebookPaths?: string;
/** Audio paths (JSON array) */
audioPaths?: string;
/** Video paths (JSON array) */
videoPaths?: string;
/** Other resources (JSON array) */
otherResources?: string;
/** PPT file path */
pptPath?: string;
/** PPT file name */
pptName?: string;
/** Poster paths (JSON array) */
posterPaths?: string;
/** Teaching tools (JSON array) */
tools?: string;
/** Student materials */
studentMaterials?: string;
/** Lesson plan data (JSON) */
lessonPlanData?: string;
/** Activities data (JSON) */
activitiesData?: string;
/** Assessment data (JSON) */
assessmentData?: string;
/** Grade tags (JSON array) */
gradeTags?: string;
/** Domain tags (JSON array) */
domainTags?: string;
/** Has collective lesson */
hasCollectiveLesson?: boolean;
}

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type DeleteFileParams = {
filePath: string;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetActiveTenantsParams = {
limit?: number;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetActivitiesParams = {
limit?: number;
};

View File

@ -0,0 +1,15 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetClassPageParams = {
page?: number;
pageSize?: number;
keyword?: string;
grade?: string;
status?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetCoursePage1Params = {
page?: number;
pageSize?: number;
keyword?: string;
category?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetCoursePageParams = {
page?: number;
pageSize?: number;
keyword?: string;
category?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetCourses1Params = {
pageNum?: number;
pageSize?: number;
keyword?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetCoursesParams = {
pageNum?: number;
pageSize?: number;
keyword?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetGrowthRecordPage1Params = {
page?: number;
pageSize?: number;
studentId?: number;
type?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetGrowthRecordPageParams = {
page?: number;
pageSize?: number;
studentId?: number;
type?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetGrowthRecordsByStudentParams = {
page?: number;
pageSize?: number;
type?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetItemsParams = {
pageNum?: number;
pageSize?: number;
libraryId?: number;
keyword?: string;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetLibrariesParams = {
tenantId?: number;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetLogs1Params = {
pageNum?: number;
pageSize?: number;
tenantId?: number;
module?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetLogsParams = {
pageNum?: number;
pageSize?: number;
module?: string;
};

View File

@ -0,0 +1,15 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetMyLessonsParams = {
page?: number;
pageSize?: number;
status?: string;
startDate?: string;
endDate?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetMyNotifications1Params = {
page?: number;
pageSize?: number;
isRead?: number;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetMyNotificationsParams = {
page?: number;
pageSize?: number;
isRead?: number;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetPackages1Params = {
pageNum?: number;
pageSize?: number;
keyword?: string;
status?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetPackagesParams = {
pageNum?: number;
pageSize?: number;
keyword?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetParentPageParams = {
page?: number;
pageSize?: number;
keyword?: string;
status?: string;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetPopularCoursesParams = {
limit?: number;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetRecentGrowthRecordsParams = {
limit?: number;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetSchedulePlans1Params = {
pageNum?: number;
pageSize?: number;
classId?: number;
};

View File

@ -0,0 +1,12 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetSchedulePlansParams = {
pageNum?: number;
pageSize?: number;
};

View File

@ -0,0 +1,12 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetScheduleTemplatesParams = {
pageNum?: number;
pageSize?: number;
};

View File

@ -0,0 +1,15 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetStudentPageParams = {
page?: number;
pageSize?: number;
keyword?: string;
grade?: string;
status?: string;
};

View File

@ -0,0 +1,15 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetTaskPage1Params = {
page?: number;
pageSize?: number;
keyword?: string;
type?: string;
status?: string;
};

View File

@ -0,0 +1,15 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetTaskPageParams = {
page?: number;
pageSize?: number;
keyword?: string;
type?: string;
status?: string;
};

View File

@ -0,0 +1,13 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetTasksByStudentParams = {
page?: number;
pageSize?: number;
status?: string;
};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetTeacherPageParams = {
page?: number;
pageSize?: number;
keyword?: string;
status?: string;
};

View File

@ -0,0 +1,15 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetTenantPageParams = {
page?: number;
pageSize?: number;
keyword?: string;
status?: string;
packageType?: string;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type GetThemesParams = {
enabledOnly?: boolean;
};

View File

@ -0,0 +1,24 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface GrowthRecord {
id?: number;
tenantId?: number;
studentId?: number;
type?: string;
title?: string;
content?: string;
images?: string;
recordedBy?: number;
recorderRole?: string;
recordDate?: string;
tags?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,27 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Growth Record Create Request
*/
export interface GrowthRecordCreateRequest {
/** Student ID */
studentId: number;
/** Type: reading, behavior, achievement, milestone */
type: string;
/** Title */
title: string;
/** Content */
content?: string;
/** Images (JSON array) */
images?: string;
/** Record date */
recordDate?: string;
/** Tags */
tags?: string[];
}

View File

@ -0,0 +1,25 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Growth Record Update Request
*/
export interface GrowthRecordUpdateRequest {
/** Type */
type?: string;
/** Title */
title?: string;
/** Content */
content?: string;
/** Images (JSON array) */
images?: string;
/** Record date */
recordDate?: string;
/** Tags */
tags?: string[];
}

View File

@ -0,0 +1,162 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export * from './bindStudentParams';
export * from './changePasswordParams';
export * from './classCreateRequest';
export * from './classUpdateRequest';
export * from './clazz';
export * from './completeTaskParams';
export * from './course';
export * from './courseCreateRequest';
export * from './courseLesson';
export * from './coursePackage';
export * from './courseUpdateRequest';
export * from './deleteFileParams';
export * from './getActiveTenantsParams';
export * from './getActivitiesParams';
export * from './getClassPageParams';
export * from './getCoursePage1Params';
export * from './getCoursePageParams';
export * from './getCourses1Params';
export * from './getCoursesParams';
export * from './getGrowthRecordPage1Params';
export * from './getGrowthRecordPageParams';
export * from './getGrowthRecordsByStudentParams';
export * from './getItemsParams';
export * from './getLibrariesParams';
export * from './getLogs1Params';
export * from './getLogsParams';
export * from './getMyLessonsParams';
export * from './getMyNotifications1Params';
export * from './getMyNotificationsParams';
export * from './getPackages1Params';
export * from './getPackagesParams';
export * from './getParentPageParams';
export * from './getPopularCoursesParams';
export * from './getRecentGrowthRecordsParams';
export * from './getSchedulePlans1Params';
export * from './getSchedulePlansParams';
export * from './getScheduleTemplatesParams';
export * from './getStudentPageParams';
export * from './getTaskPage1Params';
export * from './getTaskPageParams';
export * from './getTasksByStudentParams';
export * from './getTeacherPageParams';
export * from './getTenantPageParams';
export * from './getThemesParams';
export * from './growthRecord';
export * from './growthRecordCreateRequest';
export * from './growthRecordUpdateRequest';
export * from './lesson';
export * from './lessonCreateRequest';
export * from './lessonUpdateRequest';
export * from './localTime';
export * from './loginRequest';
export * from './loginResponse';
export * from './notification';
export * from './operationLog';
export * from './pageResultClazz';
export * from './pageResultCourse';
export * from './pageResultCoursePackage';
export * from './pageResultGrowthRecord';
export * from './pageResultLesson';
export * from './pageResultNotification';
export * from './pageResultOperationLog';
export * from './pageResultParent';
export * from './pageResultResourceItem';
export * from './pageResultSchedulePlan';
export * from './pageResultScheduleTemplate';
export * from './pageResultSchoolCourse';
export * from './pageResultStudent';
export * from './pageResultTask';
export * from './pageResultTeacher';
export * from './pageResultTenant';
export * from './parent';
export * from './parentCreateRequest';
export * from './parentUpdateRequest';
export * from './resetPassword1Params';
export * from './resetPasswordParams';
export * from './resourceItem';
export * from './resourceLibrary';
export * from './resultClazz';
export * from './resultCourse';
export * from './resultCourseLesson';
export * from './resultCoursePackage';
export * from './resultGrowthRecord';
export * from './resultLesson';
export * from './resultListCourse';
export * from './resultListCourseLesson';
export * from './resultListGrowthRecord';
export * from './resultListLesson';
export * from './resultListMapStringObject';
export * from './resultListMapStringObjectDataItem';
export * from './resultListResourceLibrary';
export * from './resultListStudent';
export * from './resultListTenantResponse';
export * from './resultListTheme';
export * from './resultLoginResponse';
export * from './resultLong';
export * from './resultMapStringObject';
export * from './resultMapStringObjectData';
export * from './resultMapStringString';
export * from './resultMapStringStringData';
export * from './resultNotification';
export * from './resultPageResultClazz';
export * from './resultPageResultCourse';
export * from './resultPageResultCoursePackage';
export * from './resultPageResultGrowthRecord';
export * from './resultPageResultLesson';
export * from './resultPageResultNotification';
export * from './resultPageResultOperationLog';
export * from './resultPageResultParent';
export * from './resultPageResultResourceItem';
export * from './resultPageResultSchedulePlan';
export * from './resultPageResultScheduleTemplate';
export * from './resultPageResultSchoolCourse';
export * from './resultPageResultStudent';
export * from './resultPageResultTask';
export * from './resultPageResultTeacher';
export * from './resultPageResultTenant';
export * from './resultParent';
export * from './resultResourceItem';
export * from './resultResourceLibrary';
export * from './resultSchedulePlan';
export * from './resultScheduleTemplate';
export * from './resultSchoolCourse';
export * from './resultStudent';
export * from './resultTask';
export * from './resultTeacher';
export * from './resultTenant';
export * from './resultTheme';
export * from './resultUserInfoResponse';
export * from './resultVoid';
export * from './resultVoidData';
export * from './schedulePlan';
export * from './scheduleTemplate';
export * from './schoolCourse';
export * from './student';
export * from './studentCreateRequest';
export * from './studentUpdateRequest';
export * from './task';
export * from './taskCreateRequest';
export * from './taskUpdateRequest';
export * from './teacher';
export * from './teacherCreateRequest';
export * from './teacherUpdateRequest';
export * from './tenant';
export * from './tenantCreateRequest';
export * from './tenantResponse';
export * from './tenantUpdateRequest';
export * from './theme';
export * from './updateSettings1Body';
export * from './updateSettingsBody';
export * from './updateTenantQuotaBody';
export * from './updateTenantStatusBody';
export * from './uploadFileBody';
export * from './userInfoResponse';

View File

@ -0,0 +1,26 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { LocalTime } from './localTime';
export interface Lesson {
id?: number;
tenantId?: number;
courseId?: number;
classId?: number;
teacherId?: number;
title?: string;
lessonDate?: string;
startTime?: LocalTime;
endTime?: LocalTime;
location?: string;
status?: string;
notes?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,30 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { LocalTime } from './localTime';
/**
* Lesson Create Request
*/
export interface LessonCreateRequest {
/** Course ID */
courseId: number;
/** Class ID */
classId?: number;
/** Teacher ID */
teacherId: number;
/** Lesson title */
title: string;
/** Lesson date */
lessonDate: string;
startTime?: LocalTime;
endTime?: LocalTime;
/** Location */
location?: string;
/** Notes */
notes?: string;
}

View File

@ -0,0 +1,26 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { LocalTime } from './localTime';
/**
* Lesson Update Request
*/
export interface LessonUpdateRequest {
/** Lesson title */
title?: string;
/** Lesson date */
lessonDate?: string;
startTime?: LocalTime;
endTime?: LocalTime;
/** Location */
location?: string;
/** Status */
status?: string;
/** Notes */
notes?: string;
}

View File

@ -0,0 +1,17 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* End time
*/
export interface LocalTime {
hour?: number;
minute?: number;
second?: number;
nano?: number;
}

View File

@ -0,0 +1,19 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Login Request
*/
export interface LoginRequest {
/** Username */
username: string;
/** Password */
password: string;
/** Login role */
role?: string;
}

View File

@ -0,0 +1,25 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Login Response
*/
export interface LoginResponse {
/** JWT Token */
token?: string;
/** User ID */
userId?: number;
/** Username */
username?: string;
/** User name */
name?: string;
/** User role */
role?: string;
/** Tenant ID */
tenantId?: number;
}

View File

@ -0,0 +1,23 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface Notification {
id?: number;
tenantId?: number;
title?: string;
content?: string;
type?: string;
senderId?: number;
senderRole?: string;
recipientType?: string;
recipientId?: number;
isRead?: number;
readAt?: string;
createdAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,22 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface OperationLog {
id?: number;
tenantId?: number;
userId?: number;
userRole?: string;
action?: string;
module?: string;
targetType?: string;
targetId?: number;
details?: string;
ipAddress?: string;
userAgent?: string;
createdAt?: string;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Clazz } from './clazz';
export interface PageResultClazz {
total?: number;
pageSize?: number;
items?: Clazz[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Course } from './course';
export interface PageResultCourse {
total?: number;
pageSize?: number;
items?: Course[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { CoursePackage } from './coursePackage';
export interface PageResultCoursePackage {
total?: number;
pageSize?: number;
items?: CoursePackage[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { GrowthRecord } from './growthRecord';
export interface PageResultGrowthRecord {
total?: number;
pageSize?: number;
items?: GrowthRecord[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Lesson } from './lesson';
export interface PageResultLesson {
total?: number;
pageSize?: number;
items?: Lesson[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Notification } from './notification';
export interface PageResultNotification {
total?: number;
pageSize?: number;
items?: Notification[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { OperationLog } from './operationLog';
export interface PageResultOperationLog {
total?: number;
pageSize?: number;
items?: OperationLog[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Parent } from './parent';
export interface PageResultParent {
total?: number;
pageSize?: number;
items?: Parent[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { ResourceItem } from './resourceItem';
export interface PageResultResourceItem {
total?: number;
pageSize?: number;
items?: ResourceItem[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { SchedulePlan } from './schedulePlan';
export interface PageResultSchedulePlan {
total?: number;
pageSize?: number;
items?: SchedulePlan[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { ScheduleTemplate } from './scheduleTemplate';
export interface PageResultScheduleTemplate {
total?: number;
pageSize?: number;
items?: ScheduleTemplate[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { SchoolCourse } from './schoolCourse';
export interface PageResultSchoolCourse {
total?: number;
pageSize?: number;
items?: SchoolCourse[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Student } from './student';
export interface PageResultStudent {
total?: number;
pageSize?: number;
items?: Student[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Task } from './task';
export interface PageResultTask {
total?: number;
pageSize?: number;
items?: Task[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Teacher } from './teacher';
export interface PageResultTeacher {
total?: number;
pageSize?: number;
items?: Teacher[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,16 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Tenant } from './tenant';
export interface PageResultTenant {
total?: number;
pageSize?: number;
items?: Tenant[];
page?: number;
totalPages?: number;
}

View File

@ -0,0 +1,24 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface Parent {
id?: number;
tenantId?: number;
username?: string;
password?: string;
name?: string;
phone?: string;
email?: string;
avatarUrl?: string;
gender?: string;
status?: string;
lastLoginAt?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,25 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Parent Create Request
*/
export interface ParentCreateRequest {
/** Username */
username: string;
/** Password */
password: string;
/** Name */
name: string;
/** Phone */
phone?: string;
/** Email */
email?: string;
/** Gender */
gender?: string;
}

View File

@ -0,0 +1,25 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
/**
* Parent Update Request
*/
export interface ParentUpdateRequest {
/** Name */
name?: string;
/** Phone */
phone?: string;
/** Email */
email?: string;
/** Avatar URL */
avatarUrl?: string;
/** Gender */
gender?: string;
/** Status */
status?: string;
}

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type ResetPassword1Params = {
newPassword: string;
};

View File

@ -0,0 +1,11 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type ResetPasswordParams = {
newPassword: string;
};

View File

@ -0,0 +1,22 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface ResourceItem {
id?: number;
libraryId?: number;
name?: string;
code?: string;
description?: string;
quantity?: number;
availableQuantity?: number;
location?: string;
status?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,18 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export interface ResourceLibrary {
id?: number;
tenantId?: number;
name?: string;
description?: string;
type?: string;
createdAt?: string;
updatedAt?: string;
deleted?: number;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Clazz } from './clazz';
export interface ResultClazz {
code?: number;
message?: string;
data?: Clazz;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Course } from './course';
export interface ResultCourse {
code?: number;
message?: string;
data?: Course;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { CourseLesson } from './courseLesson';
export interface ResultCourseLesson {
code?: number;
message?: string;
data?: CourseLesson;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { CoursePackage } from './coursePackage';
export interface ResultCoursePackage {
code?: number;
message?: string;
data?: CoursePackage;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { GrowthRecord } from './growthRecord';
export interface ResultGrowthRecord {
code?: number;
message?: string;
data?: GrowthRecord;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Lesson } from './lesson';
export interface ResultLesson {
code?: number;
message?: string;
data?: Lesson;
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Course } from './course';
export interface ResultListCourse {
code?: number;
message?: string;
data?: Course[];
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { CourseLesson } from './courseLesson';
export interface ResultListCourseLesson {
code?: number;
message?: string;
data?: CourseLesson[];
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { GrowthRecord } from './growthRecord';
export interface ResultListGrowthRecord {
code?: number;
message?: string;
data?: GrowthRecord[];
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Lesson } from './lesson';
export interface ResultListLesson {
code?: number;
message?: string;
data?: Lesson[];
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { ResultListMapStringObjectDataItem } from './resultListMapStringObjectDataItem';
export interface ResultListMapStringObject {
code?: number;
message?: string;
data?: ResultListMapStringObjectDataItem[];
}

View File

@ -0,0 +1,9 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
export type ResultListMapStringObjectDataItem = {[key: string]: { [key: string]: unknown }};

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { ResourceLibrary } from './resourceLibrary';
export interface ResultListResourceLibrary {
code?: number;
message?: string;
data?: ResourceLibrary[];
}

View File

@ -0,0 +1,14 @@
/**
* Generated by orval v7.13.2 🍺
* Do not edit manually.
* Reading Platform API
* Reading Platform Backend Service API Documentation
* OpenAPI spec version: 1.0.0
*/
import type { Student } from './student';
export interface ResultListStudent {
code?: number;
message?: string;
data?: Student[];
}

Some files were not shown because too many files have changed in this diff Show More