2022-10-06 16:41:32 +08:00
|
|
|
package types
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
|
|
)
|
|
|
|
|
2022-10-06 16:58:09 +08:00
|
|
|
type ControllerInterface interface {
|
|
|
|
GetRouter() fiber.Router
|
|
|
|
}
|
|
|
|
|
2022-10-06 16:41:32 +08:00
|
|
|
type Controller struct {
|
2022-10-06 16:58:09 +08:00
|
|
|
Router fiber.Router
|
2022-10-06 16:41:32 +08:00
|
|
|
}
|
|
|
|
|
2022-10-22 18:18:45 +08:00
|
|
|
func NewController(app *fiber.App, group string, middleware ...interface{}) *Controller {
|
|
|
|
router := app.Group(group)
|
|
|
|
for _, m := range middleware {
|
|
|
|
router.Use(m)
|
|
|
|
}
|
|
|
|
|
2022-10-06 16:41:32 +08:00
|
|
|
return &Controller{
|
2022-10-22 18:18:45 +08:00
|
|
|
Router: router,
|
2022-10-06 16:41:32 +08:00
|
|
|
}
|
|
|
|
}
|