24 lines
903 B
Go
24 lines
903 B
Go
package article
|
|
|
|
import (
|
|
"rijig/config"
|
|
"rijig/middleware"
|
|
"rijig/utils"
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
func ArticleRouter(api fiber.Router) {
|
|
articleRepo := NewArticleRepository(config.DB)
|
|
articleService := NewArticleService(articleRepo)
|
|
articleHandler := NewArticleHandler(articleService)
|
|
|
|
articleAPI := api.Group("/article")
|
|
|
|
articleAPI.Post("/create", middleware.AuthMiddleware(), middleware.RequireRoles(utils.RoleAdministrator), articleHandler.CreateArticle)
|
|
articleAPI.Get("/view", articleHandler.GetAllArticles)
|
|
articleAPI.Get("/view/:article_id", articleHandler.GetArticleByID)
|
|
articleAPI.Put("/update/:article_id", middleware.AuthMiddleware(), middleware.RequireRoles(utils.RoleAdministrator), articleHandler.UpdateArticle)
|
|
articleAPI.Delete("/delete/:article_id", middleware.AuthMiddleware(), middleware.RequireRoles(utils.RoleAdministrator), articleHandler.DeleteArticle)
|
|
}
|