All checks were successful
Server Check Build (NixCN CMS) TeamCity build finished
Signed-off-by: Asai Neko <sugar@sne.moe>
33 lines
884 B
Go
33 lines
884 B
Go
package agenda
|
|
|
|
import (
|
|
"nixcn-cms/middleware"
|
|
"nixcn-cms/service/service_agenda"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
type AgendaHandler struct {
|
|
svc service_agenda.AgendaService
|
|
}
|
|
|
|
func ApiHandler(r *gin.RouterGroup) {
|
|
agendaSvc := service_agenda.NewAgendaService()
|
|
agendaHandler := &AgendaHandler{agendaSvc}
|
|
|
|
// Lv10+ attendee routes
|
|
attendee := r.Group("")
|
|
attendee.Use(middleware.JWTAuth(), middleware.Permission(10))
|
|
attendee.POST("/submit", agendaHandler.Submit)
|
|
attendee.PATCH("/update", agendaHandler.Update)
|
|
attendee.GET("/my-list", agendaHandler.MyList)
|
|
attendee.GET("/schedule", agendaHandler.ScheduleGet)
|
|
|
|
// Manager routes (Lv30+)
|
|
manager := r.Group("")
|
|
manager.Use(middleware.JWTAuth(), middleware.Permission(30))
|
|
manager.PATCH("/review", agendaHandler.Review)
|
|
manager.PATCH("/schedule", agendaHandler.Schedule)
|
|
manager.GET("/list", agendaHandler.List)
|
|
}
|