Study/server/router/learning/exam.go

37 lines
1.6 KiB
Go

package learning
import (
"github.com/flipped-aurora/gin-vue-admin/server/api/v1"
"github.com/flipped-aurora/gin-vue-admin/server/middleware"
"github.com/gin-gonic/gin"
)
type ExamRouter struct{}
// InitExamRouter 初始化 考试 路由信息
func (s *ExamRouter) InitExamRouter(Router *gin.RouterGroup, PublicRouter *gin.RouterGroup) {
examRouter := Router.Group("exam").Use(middleware.OperationRecord())
examRouterWithoutRecord := Router.Group("exam")
examRouterWithoutAuth := PublicRouter.Group("exam")
var examApi = v1.ApiGroupApp.LearningApiGroup.ExamApi
{
examRouter.POST("createExam", examApi.CreateExam) // 新建考试
examRouter.DELETE("deleteExam", examApi.DeleteExam) // 删除考试
examRouter.DELETE("deleteExamByIds", examApi.DeleteExamByIds) // 批量删除考试
examRouter.PUT("updateExam", examApi.UpdateExam) // 更新考试
examRouter.PUT("publishExam", examApi.PublishExam) // 发布考试
}
{
examRouterWithoutRecord.GET("findExam", examApi.FindExam) // 根据ID获取考试
examRouterWithoutRecord.GET("getExamList", examApi.GetExamList) // 获取考试列表
examRouterWithoutRecord.GET("getActiveExams", examApi.GetActiveExams) // 获取进行中的考试列表
examRouterWithoutRecord.GET("getExamsByCourse", examApi.GetExamsByCourse) // 根据课程获取考试列表
examRouterWithoutRecord.GET("getExamStatistics", examApi.GetExamStatistics) // 获取考试统计
}
{
// 公开接口,不需要认证
examRouterWithoutAuth.GET("getPublishedExams", examApi.GetActiveExams) // 获取已发布的考试列表
}
}