Files
hldrCenter/server/api/course/course_resourse/course_resourse.api

82 lines
2.5 KiB
Plaintext

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)
}