package permission import ( "github.com/gin-gonic/gin" "go-micro.dev/v4/client" "sghgogs.com/micro/auth-client/api/admin/permission" "sghgogs.com/micro/auth-client/utils" "sghgogs.com/micro/auth-client/utils/baseservice" pb "sghgogs.com/micro/auth-service/proto" ) type AdminPermission struct { *baseservice.BaseService } func NewAdminPermissionRouter(namespace string, client client.Client) *AdminPermission { return &AdminPermission{ BaseService: &baseservice.BaseService{ Namespace: namespace, Client: client, }, } } func (svc *AdminPermission) RegisterRoutes(r *gin.Engine) { api := permission.AdminPermission{} commonService := pb.NewAdminPermissionService(svc.Namespace, svc.Client) api.Service = commonService svc.registerAdminPermissionRoutes(r, "/v1/api", &api) } func (svc *AdminPermission) registerAdminPermissionRoutes(r *gin.Engine, path string, api *permission.AdminPermission) { v1 := r.Group(path) { v1.GET("/admin/permissions", utils.TokenAuthMiddleware(), api.GetAdminPermissionList) v1.GET("/admin/permission/:permissionID", utils.TokenAuthMiddleware(), api.GetAdminPermission) v1.POST("/admin/permission", utils.TokenAuthMiddleware(), api.CreateAdminPermission) v1.PUT("/admin/permission/:permissionID", utils.TokenAuthMiddleware(), api.UpdateAdminPermission) v1.DELETE("/admin/permission/:permissionID", utils.TokenAuthMiddleware(), api.DeleteAdminPermission) v1.PUT("/admin/permission/:permissionID/toggle", utils.TokenAuthMiddleware(), api.ToggleAdminPermission) } }