diff --git a/server/internal/course_activity/internal/types/types.go b/server/internal/course_activity/internal/types/types.go index 0bf0894a..4f230e71 100644 --- a/server/internal/course_activity/internal/types/types.go +++ b/server/internal/course_activity/internal/types/types.go @@ -4,13 +4,13 @@ package types type CreateCourseActivityReq struct { - CourseId int `json:"course_id" form:"course_id" validate:"required"` // 关联课程ID(必填,外键) - Title string `json:"title" form:"title" validate:"required,max=255"` // 活动标题(必填,最长255字符) - ActivityType int `json:"activity_type" form:"activity_type" validate:"omitempty,min=1,max=4"` // 活动类型(可选,1-作业/2-考试/3-讨论/4-直播,默认1) - Content string `json:"content" form:"content"` // 活动详情(可选,文本) - StartTime string `json:"start_time" form:"start_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 开始时间(可选,格式yyyy-MM-dd HH:mm:ss) - EndTime string `json:"end_time" form:"end_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 结束时间(可选,格式同上) - Sort int `json:"sort" form:"sort" validate:"omitempty,min=0"` // 排序(可选,默认0) + CourseId int `json:"course_id" validate:"required"` // 关联课程ID(必填,外键) + Title string `json:"title" validate:"required,max=255"` // 活动标题(必填,最长255字符) + ActivityType int `json:"activity_type" validate:"omitempty,min=1,max=4"` // 活动类型(可选,1-作业/2-考试/3-讨论/4-直播,默认1) + Content string `json:"content"` // 活动详情(可选,文本) + StartTime string `json:"start_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 开始时间(可选,格式yyyy-MM-dd HH:mm:ss) + EndTime string `json:"end_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 结束时间(可选,格式同上) + Sort int `json:"sort" validate:"omitempty,min=0"` // 排序(可选,默认0) } type CreateCourseActivityResp struct { @@ -42,10 +42,9 @@ type GetCourseActivityResp struct { } type ListCourseActivityReq struct { - CourseId int `json:"course_id" form:"course_id" validate:"omitempty"` // 可选筛选:按课程ID查询 - ActivityType int `json:"activity_type" form:"activity_type" validate:"omitempty,min=1,max=4"` // 可选筛选:按活动类型查询 - 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) + CourseId int `json:"course_id" validate:"omitempty"` // 可选筛选:按课程ID查询 + Page int `json:"page" validate:"required,min=1"` // 页码(必填,从1开始) + PageSize int `json:"page_size" validate:"required,min=1,max=100"` // 每页条数(必填,1-100) } type ListCourseActivityResp struct { @@ -56,14 +55,14 @@ type ListCourseActivityResp struct { } type UpdateCourseActivityReq struct { - Id int `json:"id" form:"id" validate:"required"` // 活动ID(必填) - CourseId int `json:"course_id" form:"course_id" validate:"omitempty"` // 可选更新:关联课程ID - Title string `json:"title" form:"title" validate:"omitempty,max=255"` // 可选更新:活动标题 - ActivityType int `json:"activity_type" form:"activity_type" validate:"omitempty,min=1,max=4"` // 可选更新:活动类型 - Content string `json:"content" form:"content"` // 可选更新:活动详情 - StartTime string `json:"start_time" form:"start_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 可选更新:开始时间 - EndTime string `json:"end_time" form:"end_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 可选更新:结束时间 - Sort int `json:"sort" form:"sort" validate:"omitempty,min=0"` // 可选更新:排序 + Id int `json:"id" validate:"required"` // 活动ID(必填) + CourseId int `json:"course_id" validate:"omitempty"` // 可选更新:关联课程ID + Title string `json:"title" validate:"omitempty,max=255"` // 可选更新:活动标题 + ActivityType int `json:"activity_type" validate:"omitempty,min=1,max=4"` // 可选更新:活动类型 + Content string `json:"content"` // 可选更新:活动详情 + StartTime string `json:"start_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 可选更新:开始时间 + EndTime string `json:"end_time" validate:"omitempty,datetime=2006-01-02 15:04:05"` // 可选更新:结束时间 + Sort int `json:"sort" validate:"omitempty,min=0"` // 可选更新:排序 } type UpdateCourseActivityResp struct { diff --git a/server/internal/course_teacher/internal/types/types.go b/server/internal/course_teacher/internal/types/types.go index acd52169..5d555787 100644 --- a/server/internal/course_teacher/internal/types/types.go +++ b/server/internal/course_teacher/internal/types/types.go @@ -4,13 +4,13 @@ package types type CreateCourseTeacherReq struct { - 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) + CourseId int `json:"course_id" validate:"required"` // 关联课程ID(必填,外键) + TeacherId int `json:"teacher_id" validate:"required"` // 教师ID(必填,关联用户表) + Name string `json:"name" validate:"required,max=100"` // 教师姓名(必填,最长100字符) + Title string `json:"title" validate:"omitempty,max=200"` // 教师头衔(可选,最长200字符) + Avatar string `json:"avatar" validate:"omitempty,max=512"` // 头像URL(可选,最长512字符) + Intro string `json:"intro"` // 教师简介(可选,文本) + Sort int `json:"sort" validate:"omitempty,min=0"` // 排序(可选,默认0) } type CreateCourseTeacherResp struct { @@ -42,10 +42,9 @@ type GetCourseTeacherResp struct { } type ListCourseTeacherReq struct { - 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) + CourseId int `json:"course_id" validate:"omitempty"` // 可选筛选:按课程ID查询 + Page int `json:"page" validate:"required,min=1"` // 页码(必填,从1开始) + PageSize int `json:"page_size" validate:"required,min=1,max=100"` // 每页条数(1-100) } type ListCourseTeacherResp struct { @@ -56,14 +55,14 @@ type ListCourseTeacherResp struct { } type UpdateCourseTeacherReq struct { - 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"` // 可选更新:排序 + Id int `json:"id" validate:"required"` // 关联ID(必填) + CourseId int `json:"course_id" validate:"omitempty"` // 可选更新:课程ID + TeacherId int `json:"teacher_id" validate:"omitempty"` // 可选更新:教师ID + Name string `json:"name" validate:"omitempty,max=100"` // 可选更新:教师姓名 + Title string `json:"title" validate:"omitempty,max=200"` // 可选更新:教师头衔 + Avatar string `json:"avatar" validate:"omitempty,max=512"` // 可选更新:头像URL + Intro string `json:"intro"` // 可选更新:教师简介 + Sort int `json:"sort"" validate:"omitempty,min=0"` // 可选更新:排序 } type UpdateCourseTeacherResp struct {