Files
cms-server/api/event/handler.go
Asai Neko 0ab31652dd
All checks were successful
Server Check Build (NixCN CMS) TeamCity build finished
Rename attendance endpoint
Signed-off-by: Asai Neko <sugar@sne.moe>
2026-03-26 22:23:55 +08:00

46 lines
1.2 KiB
Go

package event
import (
"nixcn-cms/middleware"
"nixcn-cms/service/service_event"
"github.com/gin-gonic/gin"
)
type EventHandler struct {
svc service_event.EventService
}
func ApiHandler(r *gin.RouterGroup) {
eventSvc := service_event.NewEventService()
eventHandler := &EventHandler{eventSvc}
// Lv10+ routes
lv10 := r.Group("")
lv10.Use(middleware.JWTAuth(), middleware.Permission(10))
lv10.GET("/info", eventHandler.Info)
lv10.GET("/checkin", eventHandler.Checkin)
lv10.GET("/checkin/query", eventHandler.CheckinQuery)
lv10.POST("/join", eventHandler.Join)
lv10.GET("/guide", eventHandler.Guide)
// Lv20+ routes
lv20 := r.Group("")
lv20.Use(middleware.JWTAuth(), middleware.Permission(20))
lv20.POST("/checkin/submit", eventHandler.CheckinSubmit)
// Lv30+ routes
lv30 := r.Group("")
lv30.Use(middleware.JWTAuth(), middleware.Permission(30))
lv30.GET("/list", eventHandler.List)
lv30.POST("/create", eventHandler.Create)
lv30.PATCH("/update", eventHandler.Update)
lv30.GET("/attendance", eventHandler.Attendance)
lv30.GET("/stats", eventHandler.Stats)
// Lv40+ routes
lv40 := r.Group("")
lv40.Use(middleware.JWTAuth(), middleware.Permission(40))
lv40.DELETE("/delete", eventHandler.Delete)
}