61 lines
1.9 KiB
Go
61 lines
1.9 KiB
Go
package application
|
|
|
|
import (
|
|
"context"
|
|
|
|
appModel "busniess-user-center/internal/models/application"
|
|
applicationService "busniess-user-center/internal/service/application"
|
|
ginUtil "busniess-user-center/pkg/utils/gin"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/samber/do"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
func init() {
|
|
do.Provide(nil, NewApplicationServer)
|
|
}
|
|
|
|
type ApplicationServer struct {
|
|
applicationService applicationService.ApplicationService
|
|
logger *zap.SugaredLogger
|
|
}
|
|
|
|
func NewApplicationServer(i *do.Injector) (*ApplicationServer, error) {
|
|
return &ApplicationServer{
|
|
applicationService: do.MustInvoke[applicationService.ApplicationService](i),
|
|
logger: do.MustInvoke[*zap.SugaredLogger](i),
|
|
}, nil
|
|
}
|
|
|
|
func RegisterRoute(api *gin.RouterGroup) {
|
|
server := do.MustInvoke[*ApplicationServer](nil)
|
|
api.POST("/create", ginUtil.WrapNoRsp(server.Create))
|
|
api.POST("/reset", ginUtil.WrapNoRsp(server.ResetSecret))
|
|
api.POST("/delete", ginUtil.WrapNoRsp(server.DelApp))
|
|
api.GET("/search", ginUtil.Wrap(server.Search))
|
|
api.GET("/menus", ginUtil.WrapNoRsp(server.ResetSecret))
|
|
}
|
|
|
|
func (u *ApplicationServer) Create(ctx context.Context, req *appModel.CreateReq) (err error) {
|
|
// 转换dto
|
|
return u.applicationService.Create(ctx, req)
|
|
}
|
|
|
|
func (u *ApplicationServer) Get(ctx context.Context, req *appModel.GetAppReq) (app appModel.ApplicationInfo, err error) {
|
|
return u.applicationService.GetApp(ctx, req)
|
|
}
|
|
|
|
func (u *ApplicationServer) Search(ctx context.Context, query *appModel.Query) (appModel.List, error) {
|
|
query.Default()
|
|
return u.applicationService.Search(ctx, query)
|
|
}
|
|
|
|
func (u *ApplicationServer) ResetSecret(ctx context.Context, req *appModel.ResetSecretReq) error {
|
|
return u.applicationService.ResetSecret(ctx, req)
|
|
}
|
|
|
|
func (u *ApplicationServer) DelApp(ctx context.Context, req *appModel.DeleteAppReq) error {
|
|
return u.applicationService.Delete(ctx, req)
|
|
}
|