添加课程资源和课程教室api
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
type CreateCourseResourceReq {
|
||||
CourseId int `json:"course_id" form:"course_id" validate:"required"`
|
||||
Title string `json:"title" form:"title" validate:"required,max=255"`
|
||||
ResourceUrl string `json:"resource_url" form:"resource_url" validate:"required,max=512"`
|
||||
Size int `json:"size" form:"size" validate:"omitempty,min=0"`
|
||||
Sort int `json:"sort" form:"sort" validate:"omitempty,min=0"`
|
||||
}
|
||||
|
||||
type CreateCourseResourceResp {
|
||||
Id int `json:"id"`
|
||||
Message string `json:"message"`
|
||||
}
|
||||
|
||||
type GetCourseResourceReq {
|
||||
Id int `path:"id" validate:"required"`
|
||||
}
|
||||
|
||||
type GetCourseResourceResp {
|
||||
Id int `json:"id"`
|
||||
CourseId int `json:"course_id"`
|
||||
Title string `json:"title"`
|
||||
ResourceUrl string `json:"resource_url"`
|
||||
Size int `json:"size"`
|
||||
Sort int `json:"sort"`
|
||||
}
|
||||
|
||||
type ListCourseResourceReq {
|
||||
CourseId int `form:"course_id" validate:"omitempty"`
|
||||
Page int `form:"page" validate:"required,min=1"`
|
||||
PageSize int `form:"page_size" validate:"required,min=1,max=100"`
|
||||
}
|
||||
|
||||
type ListCourseResourceResp {
|
||||
Total int `json:"total"`
|
||||
List []GetCourseResourceResp `json:"list"`
|
||||
Page int `json:"page"`
|
||||
PageSize int `json:"page_size"`
|
||||
}
|
||||
|
||||
type UpdateCourseResourceReq {
|
||||
Id int `json:"id" validate:"required"`
|
||||
CourseId int `json:"course_id" validate:"omitempty"`
|
||||
Title string `json:"title" validate:"omitempty,max=255"`
|
||||
ResourceUrl string `json:"resource_url" validate:"omitempty,max=512"`
|
||||
Size int `json:"size" validate:"omitempty,min=0"`
|
||||
Sort int `json:"sort" validate:"omitempty,min=0"`
|
||||
}
|
||||
|
||||
type UpdateCourseResourceResp {
|
||||
Message string `json:"message"`
|
||||
}
|
||||
|
||||
type DeleteCourseResourceReq {
|
||||
Id int `path:"id" validate:"required"`
|
||||
}
|
||||
|
||||
type DeleteCourseResourceResp {
|
||||
Message string `json:"message"`
|
||||
}
|
||||
|
||||
@server (
|
||||
group: course_resource
|
||||
prefix: /api/course-resource
|
||||
)
|
||||
service course_resource_api {
|
||||
@handler CreateCourseResourceHandler
|
||||
post / (CreateCourseResourceReq) returns (CreateCourseResourceResp)
|
||||
|
||||
@handler GetCourseResourceHandler
|
||||
get /:id (GetCourseResourceReq) returns (GetCourseResourceResp)
|
||||
|
||||
@handler ListCourseResourceHandler
|
||||
post /list (ListCourseResourceReq) returns (ListCourseResourceResp)
|
||||
|
||||
@handler UpdateCourseResourceHandler
|
||||
put / (UpdateCourseResourceReq) returns (UpdateCourseResourceResp)
|
||||
|
||||
@handler DeleteCourseResourceHandler
|
||||
delete /:id (DeleteCourseResourceReq) returns (DeleteCourseResourceResp)
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
// 教学团队表API定义(适配course_teacher表)
|
||||
type (
|
||||
// 创建教学团队关联请求(无需id,数据库自增生成)
|
||||
CreateCourseTeacherReq {
|
||||
CourseId int `json:"course_id" form:"course_id" validate:"required"` // 关联课程ID(必填,外键)
|
||||
TeacherId int `json:"teacher_id" form:"teacher_id" validate:"required"` // 教师ID(必填,关联用户表)
|
||||
Name string `json:"name" form:"name" validate:"required,max=100"` // 教师姓名(必填,最长100字符)
|
||||
Title string `json:"title" form:"title" validate:"omitempty,max=200"` // 教师头衔(可选,最长200字符)
|
||||
Avatar string `json:"avatar" form:"avatar" validate:"omitempty,max=512"` // 头像URL(可选,最长512字符)
|
||||
Intro string `json:"intro" form:"intro"` // 教师简介(可选,文本)
|
||||
Sort int `json:"sort" form:"sort" validate:"omitempty,min=0"` // 排序(可选,默认0)
|
||||
}
|
||||
// 创建教学团队关联响应
|
||||
CreateCourseTeacherResp {
|
||||
Id int `json:"id"` // 新增关联ID
|
||||
Message string `json:"message"` // 操作结果信息
|
||||
}
|
||||
// 查询单个教学团队关联请求(按ID查询)
|
||||
GetCourseTeacherReq {
|
||||
Id int `json:"id" form:"id" path:"id" validate:"required"` // 关联ID(必填,路径参数)
|
||||
}
|
||||
// 查询单个教学团队关联响应(返回完整信息)
|
||||
GetCourseTeacherResp {
|
||||
Id int `json:"id"` // 关联ID(主键)
|
||||
CourseId int `json:"course_id"` // 关联课程ID
|
||||
TeacherId int `json:"teacher_id"` // 教师ID
|
||||
Name string `json:"name"` // 教师姓名
|
||||
Title string `json:"title"` // 教师头衔
|
||||
Avatar string `json:"avatar"` // 头像URL
|
||||
Intro string `json:"intro"` // 教师简介
|
||||
Sort int `json:"sort"` // 排序
|
||||
}
|
||||
// 教学团队列表查询请求(支持筛选和分页)
|
||||
ListCourseTeacherReq {
|
||||
CourseId int `json:"course_id" form:"course_id" validate:"omitempty"` // 可选筛选:按课程ID查询
|
||||
TeacherId int `json:"teacher_id" form:"teacher_id" validate:"omitempty"` // 可选筛选:按教师ID查询
|
||||
Page int `json:"page" form:"page" validate:"required,min=1"` // 页码(必填,从1开始)
|
||||
PageSize int `json:"page_size" form:"page_size" validate:"required,min=1,max=100"` // 每页条数(1-100)
|
||||
}
|
||||
// 教学团队列表响应
|
||||
ListCourseTeacherResp {
|
||||
Total int `json:"total"` // 总条数
|
||||
List []GetCourseTeacherResp `json:"list"` // 教学团队列表
|
||||
Page int `json:"page"` // 当前页码
|
||||
PageSize int `json:"page_size"` // 每页条数
|
||||
}
|
||||
// 更新教学团队关联请求
|
||||
UpdateCourseTeacherReq {
|
||||
Id int `json:"id" form:"id" validate:"required"` // 关联ID(必填)
|
||||
CourseId int `json:"course_id" form:"course_id" validate:"omitempty"` // 可选更新:课程ID
|
||||
TeacherId int `json:"teacher_id" form:"teacher_id" validate:"omitempty"` // 可选更新:教师ID
|
||||
Name string `json:"name" form:"name" validate:"omitempty,max=100"` // 可选更新:教师姓名
|
||||
Title string `json:"title" form:"title" validate:"omitempty,max=200"` // 可选更新:教师头衔
|
||||
Avatar string `json:"avatar" form:"avatar" validate:"omitempty,max=512"` // 可选更新:头像URL
|
||||
Intro string `json:"intro" form:"intro"` // 可选更新:教师简介
|
||||
Sort int `json:"sort" form:"sort" validate:"omitempty,min=0"` // 可选更新:排序
|
||||
}
|
||||
// 更新教学团队关联响应
|
||||
UpdateCourseTeacherResp {
|
||||
Message string `json:"message"` // 操作结果信息
|
||||
}
|
||||
// 删除教学团队关联请求
|
||||
DeleteCourseTeacherReq {
|
||||
Id int `json:"id" form:"id" path:"id" validate:"required"` // 关联ID(必填,路径参数)
|
||||
}
|
||||
// 删除教学团队关联响应
|
||||
DeleteCourseTeacherResp {
|
||||
Message string `json:"message"` // 操作结果信息
|
||||
}
|
||||
)
|
||||
|
||||
@server (
|
||||
group: course_teacher // 接口分组:教学团队
|
||||
prefix: /api/course-teacher // 接口前缀(与模块语义一致)
|
||||
)
|
||||
service course_teacher_api { // 服务名称:教学团队API
|
||||
@handler CreateCourseTeacherHandler // 创建教学团队关联
|
||||
post / (CreateCourseTeacherReq) returns (CreateCourseTeacherResp)
|
||||
|
||||
@handler GetCourseTeacherHandler // 查询单个教学团队关联
|
||||
get /:id (GetCourseTeacherReq) returns (GetCourseTeacherResp)
|
||||
|
||||
@handler ListCourseTeacherHandler // 教学团队列表查询(分页/筛选)
|
||||
post /list (ListCourseTeacherReq) returns (ListCourseTeacherResp)
|
||||
|
||||
@handler UpdateCourseTeacherHandler // 更新教学团队关联
|
||||
put / (UpdateCourseTeacherReq) returns (UpdateCourseTeacherResp)
|
||||
|
||||
@handler DeleteCourseTeacherHandler // 删除教学团队关联
|
||||
delete /:id (DeleteCourseTeacherReq) returns (DeleteCourseTeacherResp)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user