fix
This commit is contained in:
@@ -2,14 +2,34 @@ package service
|
||||
|
||||
import (
|
||||
"context"
|
||||
"strings"
|
||||
|
||||
"kra/internal/biz"
|
||||
"kra/internal/conf"
|
||||
"kra/internal/service/dto"
|
||||
)
|
||||
|
||||
type AccessService struct{ uc *biz.AccessUsecase }
|
||||
type AccessService struct {
|
||||
uc *biz.AccessUsecase
|
||||
runtime *conf.Runtime
|
||||
}
|
||||
|
||||
func NewAccessService(uc *biz.AccessUsecase) *AccessService { return &AccessService{uc: uc} }
|
||||
func NewAccessService(uc *biz.AccessUsecase, runtime *conf.Runtime) *AccessService {
|
||||
return &AccessService{uc: uc, runtime: runtime}
|
||||
}
|
||||
|
||||
func (s *AccessService) NormalizeRoutePath(path string) string {
|
||||
config := s.runtime.Admin()
|
||||
if config == nil || config.RouterPrefix == "" {
|
||||
return path
|
||||
}
|
||||
prefix := strings.TrimSuffix(config.RouterPrefix, "/")
|
||||
normalized := strings.TrimPrefix(path, prefix)
|
||||
if normalized == "" {
|
||||
return "/"
|
||||
}
|
||||
return normalized
|
||||
}
|
||||
func (s *AccessService) Authorize(ctx context.Context, aid uint, path, method string) (bool, error) {
|
||||
return s.uc.Authorize(ctx, aid, path, method)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user