From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目

---
 src/api/infra/demo/demo03/normal/index.ts |   81 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 81 insertions(+), 0 deletions(-)

diff --git a/src/api/infra/demo/demo03/normal/index.ts b/src/api/infra/demo/demo03/normal/index.ts
new file mode 100644
index 0000000..56a824d
--- /dev/null
+++ b/src/api/infra/demo/demo03/normal/index.ts
@@ -0,0 +1,81 @@
+import request from '@/config/axios'
+import type { Dayjs } from 'dayjs';
+
+/** 瀛︾敓璇剧▼淇℃伅 */
+export interface Demo03Course {
+  id: number; // 缂栧彿
+  studentId?: number; // 瀛︾敓缂栧彿
+  name?: string; // 鍚嶅瓧
+  score?: number; // 鍒嗘暟
+}
+
+/** 瀛︾敓鐝骇淇℃伅 */
+export interface Demo03Grade {
+  id: number; // 缂栧彿
+  studentId?: number; // 瀛︾敓缂栧彿
+  name?: string; // 鍚嶅瓧
+  teacher?: string; // 鐝富浠�
+}
+
+/** 瀛︾敓淇℃伅 */
+export interface Demo03Student {
+  id: number; // 缂栧彿
+  name?: string; // 鍚嶅瓧
+  sex?: number; // 鎬у埆
+  birthday?: string | Dayjs; // 鍑虹敓鏃ユ湡
+  description?: string; // 绠�浠�
+  demo03courses?: Demo03Course[]
+  demo03grade?: Demo03Grade
+}
+
+// 瀛︾敓 API
+export const Demo03StudentApi = {
+  // 鏌ヨ瀛︾敓鍒嗛〉
+  getDemo03StudentPage: async (params: any) => {
+    return await request.get({ url: `/infra/demo03-student-normal/page`, params })
+  },
+
+  // 鏌ヨ瀛︾敓璇︽儏
+  getDemo03Student: async (id: number) => {
+    return await request.get({ url: `/infra/demo03-student-normal/get?id=` + id })
+  },
+
+  // 鏂板瀛︾敓
+  createDemo03Student: async (data: Demo03Student) => {
+    return await request.post({ url: `/infra/demo03-student-normal/create`, data })
+  },
+
+  // 淇敼瀛︾敓
+  updateDemo03Student: async (data: Demo03Student) => {
+    return await request.put({ url: `/infra/demo03-student-normal/update`, data })
+  },
+
+  // 鍒犻櫎瀛︾敓
+  deleteDemo03Student: async (id: number) => {
+    return await request.delete({ url: `/infra/demo03-student-normal/delete?id=` + id })
+  },
+
+  /** 鎵归噺鍒犻櫎瀛︾敓 */
+  deleteDemo03StudentList: async (ids: number[]) => {
+    return await request.delete({ url: `/infra/demo03-student-normal/delete-list?ids=${ids.join(',')}` })
+  },
+
+  // 瀵煎嚭瀛︾敓 Excel
+  exportDemo03Student: async (params) => {
+    return await request.download({ url: `/infra/demo03-student-normal/export-excel`, params })
+  },
+
+// ==================== 瀛愯〃锛堝鐢熻绋嬶級 ====================
+
+  // 鑾峰緱瀛︾敓璇剧▼鍒楄〃
+  getDemo03CourseListByStudentId: async (studentId) => {
+    return await request.get({ url: `/infra/demo03-student-normal/demo03-course/list-by-student-id?studentId=` + studentId })
+  },
+
+// ==================== 瀛愯〃锛堝鐢熺彮绾э級 ====================
+
+  // 鑾峰緱瀛︾敓鐝骇
+  getDemo03GradeByStudentId: async (studentId) => {
+    return await request.get({ url: `/infra/demo03-student-normal/demo03-grade/get-by-student-id?studentId=` + studentId })
+  },
+}

--
Gitblit v1.8.0