import request from '@/config/axios' import type { Dayjs } from 'dayjs'; /** 学生联系人信息 */ export interface StudentContact { id: number; // 编号 studentId?: number; // 学生编号 name?: string; // 名字 description?: string; // 简介 birthday?: string | Dayjs; // 出生日期 sex?: number; // 性别 enabled?: boolean; // 是否有效 avatar?: string; // 头像 video: string; // 附件 memo?: string; // 备注 } /** 学生班主任信息 */ export interface StudentTeacher { id: number; // 编号 studentId?: number; // 学生编号 name?: string; // 名字 description?: string; // 简介 birthday?: string | Dayjs; // 出生日期 sex?: number; // 性别 enabled?: boolean; // 是否有效 avatar?: string; // 头像 video: string; // 附件 memo?: string; // 备注 } /** 学生信息 */ export interface Student { id: number; // 编号 name?: string; // 名字 description?: string; // 简介 birthday?: string | Dayjs; // 出生日期 sex?: number; // 性别 enabled?: boolean; // 是否有效 avatar?: string; // 头像 video?: string; // 附件 memo?: string; // 备注 studentcontacts?: StudentContact[] studentteacher?: StudentTeacher } // 学生 API export const StudentApi = { // 查询学生分页 getStudentPage: async (params: any) => { return await request.get({ url: `/infra/student/page`, params }) }, // 查询学生详情 getStudent: async (id: number) => { return await request.get({ url: `/infra/student/get?id=` + id }) }, // 新增学生 createStudent: async (data: Student) => { return await request.post({ url: `/infra/student/create`, data }) }, // 修改学生 updateStudent: async (data: Student) => { return await request.put({ url: `/infra/student/update`, data }) }, // 删除学生 deleteStudent: async (id: number) => { return await request.delete({ url: `/infra/student/delete?id=` + id }) }, /** 批量删除学生 */ deleteStudentList: async (ids: number[]) => { return await request.delete({ url: `/infra/student/delete-list?ids=${ids.join(',')}` }) }, // 导出学生 Excel exportStudent: async (params) => { return await request.download({ url: `/infra/student/export-excel`, params }) }, // ==================== 子表(学生联系人) ==================== // 获得学生联系人列表 getStudentContactListByStudentId: async (studentId) => { return await request.get({ url: `/infra/student/student-contact/list-by-student-id?studentId=` + studentId }) }, // ==================== 子表(学生班主任) ==================== // 获得学生班主任 getStudentTeacherByStudentId: async (studentId) => { return await request.get({ url: `/infra/student/student-teacher/get-by-student-id?studentId=` + studentId }) } }