44 lines
785 B
Go
Executable File
44 lines
785 B
Go
Executable File
package routes
|
|
|
|
import (
|
|
"atom/contracts"
|
|
"atom/modules/auth/controller"
|
|
"atom/providers/http"
|
|
|
|
"github.com/rogeecn/gen"
|
|
)
|
|
|
|
type Route struct {
|
|
svc *http.Service
|
|
role controller.RoleController
|
|
permission controller.PermissionController
|
|
}
|
|
|
|
func NewRoute(
|
|
svc *http.Service,
|
|
role controller.RoleController,
|
|
permission controller.PermissionController,
|
|
) contracts.Route {
|
|
return &Route{
|
|
svc: svc,
|
|
role: role,
|
|
permission: permission,
|
|
}
|
|
}
|
|
|
|
func (r *Route) Register() {
|
|
group := r.svc.Engine.Group("auth")
|
|
{
|
|
roleGroup := group.Group("role")
|
|
{
|
|
roleGroup.GET("/roles", gen.DataFunc(r.role.GetName))
|
|
}
|
|
|
|
permissionGroup := group.Group("permission")
|
|
{
|
|
permissionGroup.GET("/permissions", gen.DataFunc(r.permission.GetName))
|
|
}
|
|
|
|
}
|
|
}
|