2026-05-14 00:25:02 +08:00

37 lines
1.1 KiB
Go

package managerapi
import (
"hyapp/services/gateway-service/internal/client"
"hyapp/services/gateway-service/internal/transport/http/httproutes"
)
// Handler owns manager-center HTTP endpoints that are still part of the app gateway.
// Capability checks stay in user-service, and resource grants stay in wallet-service.
type Handler struct {
walletClient client.WalletClient
userHostClient client.UserHostClient
userProfileClient client.UserProfileClient
}
type Config struct {
WalletClient client.WalletClient
UserHostClient client.UserHostClient
UserProfileClient client.UserProfileClient
}
func New(config Config) *Handler {
return &Handler{
walletClient: config.WalletClient,
userHostClient: config.UserHostClient,
userProfileClient: config.UserProfileClient,
}
}
func (h *Handler) ManagerHandlers() httproutes.ManagerHandlers {
return httproutes.ManagerHandlers{
ListManagerGrantResources: h.listManagerGrantResources,
GrantManagerResource: h.grantManagerResource,
LookupBusinessUsers: h.lookupBusinessUsers,
}
}