added type middleware
This commit is contained in:
parent
a1ec819de7
commit
c3d9e2a0d3
@ -4,6 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"errors"
|
"errors"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
"hub_admin_backend_service/internal/controller/middleware"
|
||||||
"hub_admin_backend_service/internal/initialize"
|
"hub_admin_backend_service/internal/initialize"
|
||||||
"hub_admin_backend_service/internal/models"
|
"hub_admin_backend_service/internal/models"
|
||||||
"hub_admin_backend_service/internal/server/http"
|
"hub_admin_backend_service/internal/server/http"
|
||||||
@ -30,6 +31,8 @@ func Run(ctx context.Context, cfg initialize.Config, logger *zap.Logger) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mw := middleware.NewMiddleware(logger)
|
||||||
|
|
||||||
repositories := initialize.NewRepository(initialize.RepositoryDeps{
|
repositories := initialize.NewRepository(initialize.RepositoryDeps{
|
||||||
Logger: logger,
|
Logger: logger,
|
||||||
Mdb: mdb,
|
Mdb: mdb,
|
||||||
@ -38,6 +41,7 @@ func Run(ctx context.Context, cfg initialize.Config, logger *zap.Logger) error {
|
|||||||
controllers := initialize.NewControllers(initialize.ControllerDeps{
|
controllers := initialize.NewControllers(initialize.ControllerDeps{
|
||||||
Logger: logger,
|
Logger: logger,
|
||||||
Repos: repositories,
|
Repos: repositories,
|
||||||
|
MW: mw,
|
||||||
})
|
})
|
||||||
|
|
||||||
internalSrv := http.NewServer(http.ServerConfig{
|
internalSrv := http.NewServer(http.ServerConfig{
|
||||||
|
27
internal/controller/middleware/middleware.go
Normal file
27
internal/controller/middleware/middleware.go
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
package middleware
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/gofiber/fiber/v2"
|
||||||
|
"go.uber.org/zap"
|
||||||
|
"hub_admin_backend_service/internal/models"
|
||||||
|
)
|
||||||
|
|
||||||
|
type MiddleWare struct {
|
||||||
|
logger *zap.Logger
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewMiddleware(logger *zap.Logger) *MiddleWare {
|
||||||
|
return &MiddleWare{
|
||||||
|
logger: logger,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (mw *MiddleWare) ExtractUserID(ctx *fiber.Ctx) (string, bool) {
|
||||||
|
id, ok := ctx.Context().UserValue(models.AuthJWTDecodedUserIDKey).(string)
|
||||||
|
return id, ok
|
||||||
|
}
|
||||||
|
|
||||||
|
func (mw *MiddleWare) ExtractToken(ctx *fiber.Ctx) (string, bool) {
|
||||||
|
token, ok := ctx.Context().UserValue(models.AuthJWTDecodedAccessTokenKey).(string)
|
||||||
|
return token, ok
|
||||||
|
}
|
@ -5,24 +5,28 @@ import (
|
|||||||
"github.com/gofiber/fiber/v2"
|
"github.com/gofiber/fiber/v2"
|
||||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
"hub_admin_backend_service/internal/controller/middleware"
|
||||||
our_errors "hub_admin_backend_service/internal/errors"
|
our_errors "hub_admin_backend_service/internal/errors"
|
||||||
"hub_admin_backend_service/internal/repository/tariff"
|
"hub_admin_backend_service/internal/repository/tariff"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Deps struct {
|
type Deps struct {
|
||||||
Repo *tariff.Tariff
|
Repo *tariff.Tariff
|
||||||
Logger *zap.Logger
|
Logger *zap.Logger
|
||||||
|
MiddleWare *middleware.MiddleWare
|
||||||
}
|
}
|
||||||
|
|
||||||
type TariffExternal struct {
|
type TariffExternal struct {
|
||||||
repo *tariff.Tariff
|
repo *tariff.Tariff
|
||||||
logger *zap.Logger
|
logger *zap.Logger
|
||||||
|
middleWare *middleware.MiddleWare
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewTariffExternal(deps Deps) *TariffExternal {
|
func NewTariffExternal(deps Deps) *TariffExternal {
|
||||||
return &TariffExternal{
|
return &TariffExternal{
|
||||||
repo: deps.Repo,
|
repo: deps.Repo,
|
||||||
logger: deps.Logger,
|
logger: deps.Logger,
|
||||||
|
middleWare: deps.MiddleWare,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ import (
|
|||||||
"github.com/gofiber/fiber/v2"
|
"github.com/gofiber/fiber/v2"
|
||||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
"hub_admin_backend_service/internal/controller/middleware"
|
||||||
our_errors "hub_admin_backend_service/internal/errors"
|
our_errors "hub_admin_backend_service/internal/errors"
|
||||||
"hub_admin_backend_service/internal/models"
|
"hub_admin_backend_service/internal/models"
|
||||||
"hub_admin_backend_service/internal/repository/tariff"
|
"hub_admin_backend_service/internal/repository/tariff"
|
||||||
@ -13,19 +14,22 @@ import (
|
|||||||
// todo middleware jwt
|
// todo middleware jwt
|
||||||
|
|
||||||
type Deps struct {
|
type Deps struct {
|
||||||
Repo *tariff.Tariff
|
Repo *tariff.Tariff
|
||||||
Logger *zap.Logger
|
Logger *zap.Logger
|
||||||
|
MiddleWare *middleware.MiddleWare
|
||||||
}
|
}
|
||||||
|
|
||||||
type TariffInternal struct {
|
type TariffInternal struct {
|
||||||
repo *tariff.Tariff
|
repo *tariff.Tariff
|
||||||
logger *zap.Logger
|
logger *zap.Logger
|
||||||
|
middleWare *middleware.MiddleWare
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewTariffInternal(deps Deps) *TariffInternal {
|
func NewTariffInternal(deps Deps) *TariffInternal {
|
||||||
return &TariffInternal{
|
return &TariffInternal{
|
||||||
repo: deps.Repo,
|
repo: deps.Repo,
|
||||||
logger: deps.Logger,
|
logger: deps.Logger,
|
||||||
|
middleWare: deps.MiddleWare,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@ package initialize
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"go.uber.org/zap"
|
"go.uber.org/zap"
|
||||||
|
"hub_admin_backend_service/internal/controller/middleware"
|
||||||
"hub_admin_backend_service/internal/controller/privilege_external"
|
"hub_admin_backend_service/internal/controller/privilege_external"
|
||||||
"hub_admin_backend_service/internal/controller/privilege_internal"
|
"hub_admin_backend_service/internal/controller/privilege_internal"
|
||||||
"hub_admin_backend_service/internal/controller/tariff_external"
|
"hub_admin_backend_service/internal/controller/tariff_external"
|
||||||
@ -11,6 +12,7 @@ import (
|
|||||||
type ControllerDeps struct {
|
type ControllerDeps struct {
|
||||||
Logger *zap.Logger
|
Logger *zap.Logger
|
||||||
Repos *Repository
|
Repos *Repository
|
||||||
|
MW *middleware.MiddleWare
|
||||||
}
|
}
|
||||||
|
|
||||||
type Controller struct {
|
type Controller struct {
|
||||||
@ -31,12 +33,14 @@ func NewControllers(deps ControllerDeps) *Controller {
|
|||||||
Logger: deps.Logger,
|
Logger: deps.Logger,
|
||||||
}),
|
}),
|
||||||
TariffInternal: tariff_internal.NewTariffInternal(tariff_internal.Deps{
|
TariffInternal: tariff_internal.NewTariffInternal(tariff_internal.Deps{
|
||||||
Logger: deps.Logger,
|
Logger: deps.Logger,
|
||||||
Repo: deps.Repos.TariffRepo,
|
Repo: deps.Repos.TariffRepo,
|
||||||
|
MiddleWare: deps.MW,
|
||||||
}),
|
}),
|
||||||
TariffExternal: tariff_external.NewTariffExternal(tariff_external.Deps{
|
TariffExternal: tariff_external.NewTariffExternal(tariff_external.Deps{
|
||||||
Logger: deps.Logger,
|
Logger: deps.Logger,
|
||||||
Repo: deps.Repos.TariffRepo,
|
Repo: deps.Repos.TariffRepo,
|
||||||
|
MiddleWare: deps.MW,
|
||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user