33 lines
688 B
Go
33 lines
688 B
Go
package middleware
|
|
|
|
import (
|
|
"context"
|
|
"net/http"
|
|
|
|
"management/internal/db/model/dto"
|
|
systemv1 "management/internal/erpserver/biz/v1/system"
|
|
"management/internal/pkg/session"
|
|
)
|
|
|
|
type IMiddleware interface {
|
|
Audit(next http.Handler) http.Handler
|
|
NoSurf(next http.Handler) http.Handler
|
|
LoadSession(next http.Handler) http.Handler
|
|
Authorize(next http.Handler) http.Handler
|
|
AuthUser(ctx context.Context) dto.AuthorizeUser
|
|
}
|
|
|
|
type middleware struct {
|
|
biz systemv1.SystemBiz
|
|
session session.ISession
|
|
}
|
|
|
|
var _ IMiddleware = (*middleware)(nil)
|
|
|
|
func New(biz systemv1.SystemBiz, session session.ISession) IMiddleware {
|
|
return &middleware{
|
|
biz: biz,
|
|
session: session,
|
|
}
|
|
}
|