feat: refactor http
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
package users
|
||||
|
||||
import (
|
||||
"backend/providers/http"
|
||||
"database/sql"
|
||||
|
||||
"git.ipao.vip/rogeecn/atom"
|
||||
@@ -24,11 +23,12 @@ func Provide(opts ...opt.Option) error {
|
||||
|
||||
if err := container.Container.Provide(func(
|
||||
controller *Controller,
|
||||
http *http.Service,
|
||||
) (contracts.HttpRoute, error) {
|
||||
obj := &Router{
|
||||
controller: controller,
|
||||
http: http,
|
||||
}
|
||||
if err := obj.Prepare(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return obj, nil
|
||||
}, atom.GroupRoutes); err != nil {
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package users
|
||||
|
||||
import (
|
||||
"backend/providers/http"
|
||||
|
||||
_ "git.ipao.vip/rogeecn/atom"
|
||||
_ "git.ipao.vip/rogeecn/atom/contracts"
|
||||
"github.com/gofiber/fiber/v3"
|
||||
@@ -11,15 +9,27 @@ import (
|
||||
|
||||
// @provider:except contracts.HttpRoute atom.GroupRoutes
|
||||
type Router struct {
|
||||
http *http.Service
|
||||
app *fiber.App `inject:"false"`
|
||||
group fiber.Router `inject:"false"`
|
||||
log *log.Entry `inject:"false"`
|
||||
|
||||
controller *Controller
|
||||
}
|
||||
|
||||
func (r *Router) Register() error {
|
||||
group := r.http.Engine.Group("users")
|
||||
log.Infof("register route group: %s", group.(*fiber.Group).Prefix)
|
||||
group.Get("", r.controller.List)
|
||||
func (r *Router) Prepare() error {
|
||||
r.log = log.WithField("http.group", r.Name())
|
||||
r.app = fiber.New()
|
||||
r.group = r.app.Group(r.Name())
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *Router) Name() string {
|
||||
return "users"
|
||||
}
|
||||
|
||||
func (r *Router) Register() any {
|
||||
r.group.Get("", r.controller.List)
|
||||
|
||||
return r.app
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user