From a2329863116d81c24102a05e9cdb9f7cfe5908c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=9F=E5=B8=85?= <133814250@qq.com> Date: Tue, 13 Jun 2023 15:45:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=BE=AE=E4=BF=A1=E7=99=BB?= =?UTF-8?q?=E5=BD=95ak=E6=9C=AC=E5=9C=B0=E7=BC=93=E5=AD=98=E5=88=B7?= =?UTF-8?q?=E6=96=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/internal/cmd/cron.go | 1 + server/internal/cmd/queue.go | 1 + server/internal/global/global.go | 2 + server/internal/global/init.go | 3 +- server/internal/library/cache/file/file.go | 8 +- server/internal/library/wechat/cache.go | 2 +- .../internal/logic/middleware/admin_auth.go | 12 +- server/internal/logic/middleware/api_auth.go | 11 +- server/internal/logic/middleware/init.go | 29 +- .../logic/middleware/weboscket_auth.go | 11 +- server/internal/service/admin.go | 242 +++++----- server/internal/service/middleware.go | 5 + server/internal/service/sys.go | 454 +++++++++--------- server/internal/service/tcpclient.go | 12 +- server/main.go | 1 - 15 files changed, 406 insertions(+), 388 deletions(-) diff --git a/server/internal/cmd/cron.go b/server/internal/cmd/cron.go index 656fd29..0b2fd49 100644 --- a/server/internal/cmd/cron.go +++ b/server/internal/cmd/cron.go @@ -8,6 +8,7 @@ package cmd import ( "context" "github.com/gogf/gf/v2/os/gcmd" + _ "hotgo/internal/crons" "hotgo/internal/global" "hotgo/internal/library/cron" "hotgo/internal/service" diff --git a/server/internal/cmd/queue.go b/server/internal/cmd/queue.go index c298ce0..a8dbb5d 100644 --- a/server/internal/cmd/queue.go +++ b/server/internal/cmd/queue.go @@ -10,6 +10,7 @@ import ( "github.com/gogf/gf/v2/os/gcmd" "hotgo/internal/global" "hotgo/internal/library/queue" + _ "hotgo/internal/queues" "hotgo/utility/simple" ) diff --git a/server/internal/global/global.go b/server/internal/global/global.go index 657a310..034132d 100644 --- a/server/internal/global/global.go +++ b/server/internal/global/global.go @@ -16,4 +16,6 @@ var ( SysType = runtime.GOOS // Blacklists 黑名单列表 Blacklists map[string]struct{} + // JaegerSwitch 链路追踪开关 + JaegerSwitch bool ) diff --git a/server/internal/global/init.go b/server/internal/global/init.go index d9aa48b..68cc673 100644 --- a/server/internal/global/init.go +++ b/server/internal/global/init.go @@ -120,7 +120,8 @@ func LoggingServeLogHandler(ctx context.Context, in *glog.HandlerInput) { // InitTrace 初始化链路追踪 func InitTrace(ctx context.Context) { - if !g.Cfg().MustGet(ctx, "jaeger.switch").Bool() { + JaegerSwitch = g.Cfg().MustGet(ctx, "jaeger.switch").Bool() + if !JaegerSwitch { return } diff --git a/server/internal/library/cache/file/file.go b/server/internal/library/cache/file/file.go index f81650a..6127c07 100644 --- a/server/internal/library/cache/file/file.go +++ b/server/internal/library/cache/file/file.go @@ -209,8 +209,8 @@ func (c *AdapterFile) read(key string) (*fileContent, error) { // Has checks if the cached key exists into the File storage func (c *AdapterFile) Has(key string) bool { - _, err := c.read(key) - return err == nil + fc, err := c.read(key) + return err == nil && fc != nil } // Delete the cached key from File storage @@ -237,11 +237,11 @@ func (c *AdapterFile) DeleteMulti(keys ...string) (err error) { func (c *AdapterFile) Fetch(key string) (interface{}, error) { content, err := c.read(key) if err != nil { - return "", err + return nil, err } if content == nil { - return "", nil + return nil, nil } return content.Data, nil diff --git a/server/internal/library/wechat/cache.go b/server/internal/library/wechat/cache.go index 3e2330a..84741b7 100644 --- a/server/internal/library/wechat/cache.go +++ b/server/internal/library/wechat/cache.go @@ -34,7 +34,7 @@ func (r *Cache) SetCtx(ctx context.Context) { // Get 获取一个值 func (r *Cache) Get(key string) interface{} { get, err := r.cache.Get(r.ctx, key) - if err != nil { + if err != nil || get.IsNil() || get.IsEmpty() { return nil } return get.Interface() diff --git a/server/internal/logic/middleware/admin_auth.go b/server/internal/logic/middleware/admin_auth.go index ee522b6..6533843 100644 --- a/server/internal/logic/middleware/admin_auth.go +++ b/server/internal/logic/middleware/admin_auth.go @@ -14,30 +14,30 @@ import ( "hotgo/internal/library/contexts" "hotgo/internal/library/response" "hotgo/internal/service" + "hotgo/utility/simple" ) // AdminAuth 后台鉴权中间件 func (s *sMiddleware) AdminAuth(r *ghttp.Request) { var ( - ctx = r.Context() - prefix = g.Cfg().MustGet(ctx, "router.admin.prefix", "/admin").String() - path = gstr.Replace(r.URL.Path, prefix, "", 1) + ctx = r.Context() + path = gstr.Replace(r.URL.Path, simple.RouterPrefix(ctx, consts.AppAdmin), "", 1) ) // 不需要验证登录的路由地址 - if isExceptLogin(ctx, consts.AppAdmin, path) { + if s.IsExceptLogin(ctx, consts.AppAdmin, path) { r.Middleware.Next() return } // 将用户信息传递到上下文中 - if err := deliverUserContext(r); err != nil { + if err := s.DeliverUserContext(r); err != nil { response.JsonExit(r, gcode.CodeNotAuthorized.Code(), err.Error()) return } // 不需要验证权限的路由地址 - if isExceptAuth(ctx, consts.AppAdmin, path) { + if s.IsExceptAuth(ctx, consts.AppAdmin, path) { r.Middleware.Next() return } diff --git a/server/internal/logic/middleware/api_auth.go b/server/internal/logic/middleware/api_auth.go index 0e9655a..e217443 100644 --- a/server/internal/logic/middleware/api_auth.go +++ b/server/internal/logic/middleware/api_auth.go @@ -7,29 +7,28 @@ package middleware import ( "github.com/gogf/gf/v2/errors/gcode" - "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/net/ghttp" "github.com/gogf/gf/v2/text/gstr" "hotgo/internal/consts" "hotgo/internal/library/response" + "hotgo/utility/simple" ) // ApiAuth API鉴权中间件 func (s *sMiddleware) ApiAuth(r *ghttp.Request) { var ( - ctx = r.Context() - prefix = g.Cfg().MustGet(ctx, "router.api.prefix", "/api").String() - path = gstr.Replace(r.URL.Path, prefix, "", 1) + ctx = r.Context() + path = gstr.Replace(r.URL.Path, simple.RouterPrefix(ctx, consts.AppApi), "", 1) ) // 不需要验证登录的路由地址 - if isExceptLogin(ctx, consts.AppApi, path) { + if s.IsExceptLogin(ctx, consts.AppApi, path) { r.Middleware.Next() return } // 将用户信息传递到上下文中 - if err := deliverUserContext(r); err != nil { + if err := s.DeliverUserContext(r); err != nil { response.JsonExit(r, gcode.CodeNotAuthorized.Code(), err.Error()) return } diff --git a/server/internal/logic/middleware/init.go b/server/internal/logic/middleware/init.go index 2e38db4..94f9a24 100644 --- a/server/internal/logic/middleware/init.go +++ b/server/internal/logic/middleware/init.go @@ -12,8 +12,12 @@ import ( "github.com/gogf/gf/v2/errors/gcode" "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/net/ghttp" + "github.com/gogf/gf/v2/net/gtrace" + "github.com/gogf/gf/v2/os/gctx" "github.com/gogf/gf/v2/text/gstr" + "go.opentelemetry.io/otel/attribute" "hotgo/internal/consts" + "hotgo/internal/global" "hotgo/internal/library/addons" "hotgo/internal/library/contexts" "hotgo/internal/library/response" @@ -53,6 +57,16 @@ func NewMiddleware() *sMiddleware { // Ctx 初始化请求上下文 func (s *sMiddleware) Ctx(r *ghttp.Request) { + if global.JaegerSwitch { + ctx, span := gtrace.NewSpan(r.Context(), "middleware.ctx") + span.SetAttributes(attribute.KeyValue{ + Key: "traceID", + Value: attribute.StringValue(gctx.CtxId(ctx)), + }) + span.End() + r.SetCtx(ctx) + } + contexts.Init(r, &model.Context{ Data: make(g.Map), Module: getModule(r.URL.Path), @@ -73,7 +87,6 @@ func getModule(path string) (module string) { module = consts.AppDefault return } - return slice[1] } @@ -124,8 +137,8 @@ func (s *sMiddleware) Addon(r *ghttp.Request) { r.Middleware.Next() } -// deliverUserContext 将用户信息传递到上下文中 -func deliverUserContext(r *ghttp.Request) (err error) { +// DeliverUserContext 将用户信息传递到上下文中 +func (s *sMiddleware) DeliverUserContext(r *ghttp.Request) (err error) { user, err := token.ParseLoginUser(r) if err != nil { return @@ -134,8 +147,8 @@ func deliverUserContext(r *ghttp.Request) (err error) { return } -// isExceptAuth 是否是不需要验证权限的路由地址 -func isExceptAuth(ctx context.Context, appName, path string) bool { +// IsExceptAuth 是否是不需要验证权限的路由地址 +func (s *sMiddleware) IsExceptAuth(ctx context.Context, appName, path string) bool { pathList := g.Cfg().MustGet(ctx, fmt.Sprintf("router.%v.exceptAuth", appName)).Strings() for i := 0; i < len(pathList); i++ { @@ -143,12 +156,11 @@ func isExceptAuth(ctx context.Context, appName, path string) bool { return true } } - return false } -// isExceptLogin 是否是不需要登录的路由地址 -func isExceptLogin(ctx context.Context, appName, path string) bool { +// IsExceptLogin 是否是不需要登录的路由地址 +func (s *sMiddleware) IsExceptLogin(ctx context.Context, appName, path string) bool { pathList := g.Cfg().MustGet(ctx, fmt.Sprintf("router.%v.exceptLogin", appName)).Strings() for i := 0; i < len(pathList); i++ { @@ -156,6 +168,5 @@ func isExceptLogin(ctx context.Context, appName, path string) bool { return true } } - return false } diff --git a/server/internal/logic/middleware/weboscket_auth.go b/server/internal/logic/middleware/weboscket_auth.go index 3c1f3ad..07afa9b 100644 --- a/server/internal/logic/middleware/weboscket_auth.go +++ b/server/internal/logic/middleware/weboscket_auth.go @@ -7,29 +7,28 @@ package middleware import ( "github.com/gogf/gf/v2/errors/gcode" - "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/net/ghttp" "github.com/gogf/gf/v2/text/gstr" "hotgo/internal/consts" "hotgo/internal/library/response" + "hotgo/utility/simple" ) // WebSocketAuth websocket鉴权中间件 func (s *sMiddleware) WebSocketAuth(r *ghttp.Request) { var ( - ctx = r.Context() - prefix = g.Cfg().MustGet(ctx, "router.websocket.prefix", "/websocket").String() - path = gstr.Replace(r.URL.Path, prefix, "", 1) + ctx = r.Context() + path = gstr.Replace(r.URL.Path, simple.RouterPrefix(ctx, consts.AppWebSocket), "", 1) ) // 不需要验证登录的路由地址 - if isExceptLogin(ctx, consts.AppWebSocket, path) { + if s.IsExceptLogin(ctx, consts.AppWebSocket, path) { r.Middleware.Next() return } // 将用户信息传递到上下文中 - if err := deliverUserContext(r); err != nil { + if err := s.DeliverUserContext(r); err != nil { response.JsonExit(r, gcode.CodeNotAuthorized.Code(), err.Error()) return } diff --git a/server/internal/service/admin.go b/server/internal/service/admin.go index 81a67f1..938dbdf 100644 --- a/server/internal/service/admin.go +++ b/server/internal/service/admin.go @@ -19,21 +19,6 @@ import ( ) type ( - IAdminMenu interface { - MaxSort(ctx context.Context, req *menu.MaxSortReq) (res *menu.MaxSortRes, err error) - NameUnique(ctx context.Context, req *menu.NameUniqueReq) (res *menu.NameUniqueRes, err error) - CodeUnique(ctx context.Context, req *menu.CodeUniqueReq) (res *menu.CodeUniqueRes, err error) - Delete(ctx context.Context, req *menu.DeleteReq) (err error) - Edit(ctx context.Context, req *menu.EditReq) (err error) - View(ctx context.Context, req *menu.ViewReq) (res *menu.ViewRes, err error) - List(ctx context.Context, req *menu.ListReq) (lists []map[string]interface{}, err error) - GetMenuList(ctx context.Context, memberId int64) (res *role.DynamicRes, err error) - LoginPermissions(ctx context.Context, memberId int64) (lists adminin.MemberLoginPermissions, err error) - } - IAdminMonitor interface { - StartMonitor(ctx context.Context) - GetMeta(ctx context.Context) *model.MonitorData - } IAdminOrder interface { Model(ctx context.Context, option ...*handler.Option) *gdb.Model AcceptRefund(ctx context.Context, in adminin.OrderAcceptRefundInp) (err error) @@ -47,35 +32,6 @@ type ( View(ctx context.Context, in adminin.OrderViewInp) (res *adminin.OrderViewModel, err error) Status(ctx context.Context, in adminin.OrderStatusInp) (err error) } - IAdminPost interface { - Delete(ctx context.Context, in adminin.PostDeleteInp) (err error) - Edit(ctx context.Context, in adminin.PostEditInp) (err error) - MaxSort(ctx context.Context, in adminin.PostMaxSortInp) (res *adminin.PostMaxSortModel, err error) - NameUnique(ctx context.Context, in adminin.PostNameUniqueInp) (res *adminin.PostNameUniqueModel, err error) - CodeUnique(ctx context.Context, in adminin.PostCodeUniqueInp) (res *adminin.PostCodeUniqueModel, err error) - View(ctx context.Context, in adminin.PostViewInp) (res *adminin.PostViewModel, err error) - List(ctx context.Context, in adminin.PostListInp) (list []*adminin.PostListModel, totalCount int, err error) - GetMemberByStartName(ctx context.Context, memberId int64) (name string, err error) - Status(ctx context.Context, in adminin.PostStatusInp) (err error) - } - IAdminRole interface { - Verify(ctx context.Context, path, method string) bool - List(ctx context.Context, in adminin.RoleListInp) (res *adminin.RoleListModel, totalCount int, err error) - GetName(ctx context.Context, id int64) (name string, err error) - GetMemberList(ctx context.Context, id int64) (list []*adminin.RoleListModel, err error) - GetPermissions(ctx context.Context, in adminin.GetPermissionsInp) (res *adminin.GetPermissionsModel, err error) - UpdatePermissions(ctx context.Context, in adminin.UpdatePermissionsInp) (err error) - Edit(ctx context.Context, in adminin.RoleEditInp) (err error) - Delete(ctx context.Context, in adminin.RoleDeleteInp) (err error) - DataScopeSelect() (res form.Selects) - DataScopeEdit(ctx context.Context, in *adminin.DataScopeEditInp) (err error) - } - IAdminCash interface { - View(ctx context.Context, in adminin.CashViewInp) (res *adminin.CashViewModel, err error) - List(ctx context.Context, in adminin.CashListInp) (list []*adminin.CashListModel, totalCount int, err error) - Apply(ctx context.Context, in adminin.CashApplyInp) (err error) - Payment(ctx context.Context, in adminin.CashPaymentInp) (err error) - } IAdminDept interface { Delete(ctx context.Context, in adminin.DeptDeleteInp) (err error) Edit(ctx context.Context, in adminin.DeptEditInp) (err error) @@ -86,21 +42,6 @@ type ( List(ctx context.Context, in adminin.DeptListInp) (res *adminin.DeptListModel, err error) GetName(ctx context.Context, id int64) (name string, err error) } - IAdminMemberPost interface { - UpdatePostIds(ctx context.Context, memberId int64, postIds []int64) (err error) - } - IAdminSite interface { - Register(ctx context.Context, in adminin.RegisterInp) (err error) - AccountLogin(ctx context.Context, in adminin.AccountLoginInp) (res *adminin.LoginModel, err error) - MobileLogin(ctx context.Context, in adminin.MobileLoginInp) (res *adminin.LoginModel, err error) - } - IAdminCreditsLog interface { - Model(ctx context.Context, option ...*handler.Option) *gdb.Model - SaveBalance(ctx context.Context, in adminin.CreditsLogSaveBalanceInp) (res *adminin.CreditsLogSaveBalanceModel, err error) - SaveIntegral(ctx context.Context, in adminin.CreditsLogSaveIntegralInp) (res *adminin.CreditsLogSaveIntegralModel, err error) - List(ctx context.Context, in adminin.CreditsLogListInp) (list []*adminin.CreditsLogListModel, totalCount int, err error) - Export(ctx context.Context, in adminin.CreditsLogListInp) (err error) - } IAdminMember interface { AddBalance(ctx context.Context, in adminin.MemberAddBalanceInp) (err error) AddIntegral(ctx context.Context, in adminin.MemberAddIntegralInp) (err error) @@ -124,6 +65,65 @@ type ( VerifySuperId(ctx context.Context, verifyId int64) bool FilterAuthModel(ctx context.Context, memberId int64) *gdb.Model } + IAdminMemberPost interface { + UpdatePostIds(ctx context.Context, memberId int64, postIds []int64) (err error) + } + IAdminMonitor interface { + StartMonitor(ctx context.Context) + GetMeta(ctx context.Context) *model.MonitorData + } + IAdminPost interface { + Delete(ctx context.Context, in adminin.PostDeleteInp) (err error) + Edit(ctx context.Context, in adminin.PostEditInp) (err error) + MaxSort(ctx context.Context, in adminin.PostMaxSortInp) (res *adminin.PostMaxSortModel, err error) + NameUnique(ctx context.Context, in adminin.PostNameUniqueInp) (res *adminin.PostNameUniqueModel, err error) + CodeUnique(ctx context.Context, in adminin.PostCodeUniqueInp) (res *adminin.PostCodeUniqueModel, err error) + View(ctx context.Context, in adminin.PostViewInp) (res *adminin.PostViewModel, err error) + List(ctx context.Context, in adminin.PostListInp) (list []*adminin.PostListModel, totalCount int, err error) + GetMemberByStartName(ctx context.Context, memberId int64) (name string, err error) + Status(ctx context.Context, in adminin.PostStatusInp) (err error) + } + IAdminRole interface { + Verify(ctx context.Context, path, method string) bool + List(ctx context.Context, in adminin.RoleListInp) (res *adminin.RoleListModel, totalCount int, err error) + GetName(ctx context.Context, id int64) (name string, err error) + GetMemberList(ctx context.Context, id int64) (list []*adminin.RoleListModel, err error) + GetPermissions(ctx context.Context, in adminin.GetPermissionsInp) (res *adminin.GetPermissionsModel, err error) + UpdatePermissions(ctx context.Context, in adminin.UpdatePermissionsInp) (err error) + Edit(ctx context.Context, in adminin.RoleEditInp) (err error) + Delete(ctx context.Context, in adminin.RoleDeleteInp) (err error) + DataScopeSelect() (res form.Selects) + DataScopeEdit(ctx context.Context, in *adminin.DataScopeEditInp) (err error) + } + IAdminSite interface { + Register(ctx context.Context, in adminin.RegisterInp) (err error) + AccountLogin(ctx context.Context, in adminin.AccountLoginInp) (res *adminin.LoginModel, err error) + MobileLogin(ctx context.Context, in adminin.MobileLoginInp) (res *adminin.LoginModel, err error) + } + IAdminCash interface { + View(ctx context.Context, in adminin.CashViewInp) (res *adminin.CashViewModel, err error) + List(ctx context.Context, in adminin.CashListInp) (list []*adminin.CashListModel, totalCount int, err error) + Apply(ctx context.Context, in adminin.CashApplyInp) (err error) + Payment(ctx context.Context, in adminin.CashPaymentInp) (err error) + } + IAdminCreditsLog interface { + Model(ctx context.Context, option ...*handler.Option) *gdb.Model + SaveBalance(ctx context.Context, in adminin.CreditsLogSaveBalanceInp) (res *adminin.CreditsLogSaveBalanceModel, err error) + SaveIntegral(ctx context.Context, in adminin.CreditsLogSaveIntegralInp) (res *adminin.CreditsLogSaveIntegralModel, err error) + List(ctx context.Context, in adminin.CreditsLogListInp) (list []*adminin.CreditsLogListModel, totalCount int, err error) + Export(ctx context.Context, in adminin.CreditsLogListInp) (err error) + } + IAdminMenu interface { + MaxSort(ctx context.Context, req *menu.MaxSortReq) (res *menu.MaxSortRes, err error) + NameUnique(ctx context.Context, req *menu.NameUniqueReq) (res *menu.NameUniqueRes, err error) + CodeUnique(ctx context.Context, req *menu.CodeUniqueReq) (res *menu.CodeUniqueRes, err error) + Delete(ctx context.Context, req *menu.DeleteReq) (err error) + Edit(ctx context.Context, req *menu.EditReq) (err error) + View(ctx context.Context, req *menu.ViewReq) (res *menu.ViewRes, err error) + List(ctx context.Context, req *menu.ListReq) (lists []map[string]interface{}, err error) + GetMenuList(ctx context.Context, memberId int64) (res *role.DynamicRes, err error) + LoginPermissions(ctx context.Context, memberId int64) (lists adminin.MemberLoginPermissions, err error) + } IAdminNotice interface { Model(ctx context.Context, option ...*handler.Option) *gdb.Model Delete(ctx context.Context, in adminin.NoticeDeleteInp) (err error) @@ -141,18 +141,18 @@ type ( ) var ( - localAdminDept IAdminDept - localAdminMemberPost IAdminMemberPost + localAdminCash IAdminCash + localAdminCreditsLog IAdminCreditsLog localAdminMenu IAdminMenu - localAdminMonitor IAdminMonitor - localAdminOrder IAdminOrder + localAdminNotice IAdminNotice localAdminPost IAdminPost localAdminRole IAdminRole - localAdminCash IAdminCash localAdminSite IAdminSite + localAdminDept IAdminDept localAdminMember IAdminMember - localAdminNotice IAdminNotice - localAdminCreditsLog IAdminCreditsLog + localAdminMemberPost IAdminMemberPost + localAdminMonitor IAdminMonitor + localAdminOrder IAdminOrder ) func AdminDept() IAdminDept { @@ -166,6 +166,17 @@ func RegisterAdminDept(i IAdminDept) { localAdminDept = i } +func AdminMember() IAdminMember { + if localAdminMember == nil { + panic("implement not found for interface IAdminMember, forgot register?") + } + return localAdminMember +} + +func RegisterAdminMember(i IAdminMember) { + localAdminMember = i +} + func AdminMemberPost() IAdminMemberPost { if localAdminMemberPost == nil { panic("implement not found for interface IAdminMemberPost, forgot register?") @@ -177,17 +188,6 @@ func RegisterAdminMemberPost(i IAdminMemberPost) { localAdminMemberPost = i } -func AdminMenu() IAdminMenu { - if localAdminMenu == nil { - panic("implement not found for interface IAdminMenu, forgot register?") - } - return localAdminMenu -} - -func RegisterAdminMenu(i IAdminMenu) { - localAdminMenu = i -} - func AdminMonitor() IAdminMonitor { if localAdminMonitor == nil { panic("implement not found for interface IAdminMonitor, forgot register?") @@ -210,6 +210,50 @@ func RegisterAdminOrder(i IAdminOrder) { localAdminOrder = i } +func AdminCash() IAdminCash { + if localAdminCash == nil { + panic("implement not found for interface IAdminCash, forgot register?") + } + return localAdminCash +} + +func RegisterAdminCash(i IAdminCash) { + localAdminCash = i +} + +func AdminCreditsLog() IAdminCreditsLog { + if localAdminCreditsLog == nil { + panic("implement not found for interface IAdminCreditsLog, forgot register?") + } + return localAdminCreditsLog +} + +func RegisterAdminCreditsLog(i IAdminCreditsLog) { + localAdminCreditsLog = i +} + +func AdminMenu() IAdminMenu { + if localAdminMenu == nil { + panic("implement not found for interface IAdminMenu, forgot register?") + } + return localAdminMenu +} + +func RegisterAdminMenu(i IAdminMenu) { + localAdminMenu = i +} + +func AdminNotice() IAdminNotice { + if localAdminNotice == nil { + panic("implement not found for interface IAdminNotice, forgot register?") + } + return localAdminNotice +} + +func RegisterAdminNotice(i IAdminNotice) { + localAdminNotice = i +} + func AdminPost() IAdminPost { if localAdminPost == nil { panic("implement not found for interface IAdminPost, forgot register?") @@ -232,17 +276,6 @@ func RegisterAdminRole(i IAdminRole) { localAdminRole = i } -func AdminCash() IAdminCash { - if localAdminCash == nil { - panic("implement not found for interface IAdminCash, forgot register?") - } - return localAdminCash -} - -func RegisterAdminCash(i IAdminCash) { - localAdminCash = i -} - func AdminSite() IAdminSite { if localAdminSite == nil { panic("implement not found for interface IAdminSite, forgot register?") @@ -253,36 +286,3 @@ func AdminSite() IAdminSite { func RegisterAdminSite(i IAdminSite) { localAdminSite = i } - -func AdminMember() IAdminMember { - if localAdminMember == nil { - panic("implement not found for interface IAdminMember, forgot register?") - } - return localAdminMember -} - -func RegisterAdminMember(i IAdminMember) { - localAdminMember = i -} - -func AdminNotice() IAdminNotice { - if localAdminNotice == nil { - panic("implement not found for interface IAdminNotice, forgot register?") - } - return localAdminNotice -} - -func RegisterAdminNotice(i IAdminNotice) { - localAdminNotice = i -} - -func AdminCreditsLog() IAdminCreditsLog { - if localAdminCreditsLog == nil { - panic("implement not found for interface IAdminCreditsLog, forgot register?") - } - return localAdminCreditsLog -} - -func RegisterAdminCreditsLog(i IAdminCreditsLog) { - localAdminCreditsLog = i -} diff --git a/server/internal/service/middleware.go b/server/internal/service/middleware.go index 5ae52c9..3665ff1 100644 --- a/server/internal/service/middleware.go +++ b/server/internal/service/middleware.go @@ -6,6 +6,8 @@ package service import ( + "context" + "github.com/gogf/gf/v2/net/ghttp" ) @@ -17,6 +19,9 @@ type ( CORS(r *ghttp.Request) DemoLimit(r *ghttp.Request) Addon(r *ghttp.Request) + DeliverUserContext(r *ghttp.Request) (err error) + IsExceptAuth(ctx context.Context, appName, path string) bool + IsExceptLogin(ctx context.Context, appName, path string) bool Blacklist(r *ghttp.Request) Develop(r *ghttp.Request) ResponseHandler(r *ghttp.Request) diff --git a/server/internal/service/sys.go b/server/internal/service/sys.go index f6a80bc..4bf7f27 100644 --- a/server/internal/service/sys.go +++ b/server/internal/service/sys.go @@ -17,65 +17,17 @@ import ( ) type ( - ISysCronGroup interface { - Delete(ctx context.Context, in sysin.CronGroupDeleteInp) (err error) - Edit(ctx context.Context, in sysin.CronGroupEditInp) (err error) - Status(ctx context.Context, in sysin.CronGroupStatusInp) (err error) - MaxSort(ctx context.Context, in sysin.CronGroupMaxSortInp) (res *sysin.CronGroupMaxSortModel, err error) - View(ctx context.Context, in sysin.CronGroupViewInp) (res *sysin.CronGroupViewModel, err error) - List(ctx context.Context, in sysin.CronGroupListInp) (list []*sysin.CronGroupListModel, totalCount int, err error) - Select(ctx context.Context, in sysin.CronGroupSelectInp) (res *sysin.CronGroupSelectModel, err error) - } - ISysLog interface { - Export(ctx context.Context, in sysin.LogListInp) (err error) - RealWrite(ctx context.Context, log entity.SysLog) (err error) - AutoLog(ctx context.Context) error - AnalysisLog(ctx context.Context) entity.SysLog - View(ctx context.Context, in sysin.LogViewInp) (res *sysin.LogViewModel, err error) - Delete(ctx context.Context, in sysin.LogDeleteInp) (err error) - List(ctx context.Context, in sysin.LogListInp) (list []*sysin.LogListModel, totalCount int, err error) - } - ISysDictData interface { - Delete(ctx context.Context, in sysin.DictDataDeleteInp) error - Edit(ctx context.Context, in sysin.DictDataEditInp) (err error) - List(ctx context.Context, in sysin.DictDataListInp) (list []*sysin.DictDataListModel, totalCount int, err error) - Select(ctx context.Context, in sysin.DataSelectInp) (list sysin.DataSelectModel, err error) - } - ISysGenCodes interface { - Delete(ctx context.Context, in sysin.GenCodesDeleteInp) (err error) - Edit(ctx context.Context, in sysin.GenCodesEditInp) (res *sysin.GenCodesEditModel, err error) - Status(ctx context.Context, in sysin.GenCodesStatusInp) (err error) - MaxSort(ctx context.Context, in sysin.GenCodesMaxSortInp) (res *sysin.GenCodesMaxSortModel, err error) - View(ctx context.Context, in sysin.GenCodesViewInp) (res *sysin.GenCodesViewModel, err error) - List(ctx context.Context, in sysin.GenCodesListInp) (list []*sysin.GenCodesListModel, totalCount int, err error) - Selects(ctx context.Context, in sysin.GenCodesSelectsInp) (res *sysin.GenCodesSelectsModel, err error) - TableSelect(ctx context.Context, in sysin.GenCodesTableSelectInp) (res []*sysin.GenCodesTableSelectModel, err error) - ColumnSelect(ctx context.Context, in sysin.GenCodesColumnSelectInp) (res []*sysin.GenCodesColumnSelectModel, err error) - ColumnList(ctx context.Context, in sysin.GenCodesColumnListInp) (res []*sysin.GenCodesColumnListModel, err error) - Preview(ctx context.Context, in sysin.GenCodesPreviewInp) (res *sysin.GenCodesPreviewModel, err error) - Build(ctx context.Context, in sysin.GenCodesBuildInp) (err error) - } - ISysLoginLog interface { - Model(ctx context.Context) *gdb.Model - List(ctx context.Context, in sysin.LoginLogListInp) (list []*sysin.LoginLogListModel, totalCount int, err error) - Export(ctx context.Context, in sysin.LoginLogListInp) (err error) - Delete(ctx context.Context, in sysin.LoginLogDeleteInp) (err error) - View(ctx context.Context, in sysin.LoginLogViewInp) (res *sysin.LoginLogViewModel, err error) - Push(ctx context.Context, in sysin.LoginLogPushInp) - RealWrite(ctx context.Context, models entity.SysLoginLog) (err error) - } - ISysServeLog interface { - Model(ctx context.Context) *gdb.Model - List(ctx context.Context, in sysin.ServeLogListInp) (list []*sysin.ServeLogListModel, totalCount int, err error) - Export(ctx context.Context, in sysin.ServeLogListInp) (err error) - Delete(ctx context.Context, in sysin.ServeLogDeleteInp) (err error) - View(ctx context.Context, in sysin.ServeLogViewInp) (res *sysin.ServeLogViewModel, err error) - RealWrite(ctx context.Context, models entity.SysServeLog) (err error) - } - ISysAddonsConfig interface { - GetConfigByGroup(ctx context.Context, in sysin.GetAddonsConfigInp) (res *sysin.GetAddonsConfigModel, err error) - ConversionType(ctx context.Context, models *entity.SysAddonsConfig) (value interface{}, err error) - UpdateConfigByGroup(ctx context.Context, in sysin.UpdateAddonsConfigInp) (err error) + ISysProvinces interface { + Tree(ctx context.Context) (list []g.Map, err error) + Delete(ctx context.Context, in sysin.ProvincesDeleteInp) (err error) + Edit(ctx context.Context, in sysin.ProvincesEditInp) (err error) + Status(ctx context.Context, in sysin.ProvincesStatusInp) (err error) + MaxSort(ctx context.Context, in sysin.ProvincesMaxSortInp) (res *sysin.ProvincesMaxSortModel, err error) + View(ctx context.Context, in sysin.ProvincesViewInp) (res *sysin.ProvincesViewModel, err error) + List(ctx context.Context, in sysin.ProvincesListInp) (list []*sysin.ProvincesListModel, totalCount int, err error) + ChildrenList(ctx context.Context, in sysin.ProvincesChildrenListInp) (list []*sysin.ProvincesChildrenListModel, totalCount int, err error) + UniqueId(ctx context.Context, in sysin.ProvincesUniqueIdInp) (res *sysin.ProvincesUniqueIdModel, err error) + Select(ctx context.Context, in sysin.ProvincesSelectInp) (res *sysin.ProvincesSelectModel, err error) } ISysAttachment interface { Model(ctx context.Context, option ...*handler.Option) *gdb.Model @@ -93,12 +45,104 @@ type ( List(ctx context.Context, in sysin.CronListInp) (list []*sysin.CronListModel, totalCount int, err error) OnlineExec(ctx context.Context, in sysin.OnlineExecInp) (err error) } + ISysCronGroup interface { + Delete(ctx context.Context, in sysin.CronGroupDeleteInp) (err error) + Edit(ctx context.Context, in sysin.CronGroupEditInp) (err error) + Status(ctx context.Context, in sysin.CronGroupStatusInp) (err error) + MaxSort(ctx context.Context, in sysin.CronGroupMaxSortInp) (res *sysin.CronGroupMaxSortModel, err error) + View(ctx context.Context, in sysin.CronGroupViewInp) (res *sysin.CronGroupViewModel, err error) + List(ctx context.Context, in sysin.CronGroupListInp) (list []*sysin.CronGroupListModel, totalCount int, err error) + Select(ctx context.Context, in sysin.CronGroupSelectInp) (res *sysin.CronGroupSelectModel, err error) + } + ISysGenCodes interface { + Delete(ctx context.Context, in sysin.GenCodesDeleteInp) (err error) + Edit(ctx context.Context, in sysin.GenCodesEditInp) (res *sysin.GenCodesEditModel, err error) + Status(ctx context.Context, in sysin.GenCodesStatusInp) (err error) + MaxSort(ctx context.Context, in sysin.GenCodesMaxSortInp) (res *sysin.GenCodesMaxSortModel, err error) + View(ctx context.Context, in sysin.GenCodesViewInp) (res *sysin.GenCodesViewModel, err error) + List(ctx context.Context, in sysin.GenCodesListInp) (list []*sysin.GenCodesListModel, totalCount int, err error) + Selects(ctx context.Context, in sysin.GenCodesSelectsInp) (res *sysin.GenCodesSelectsModel, err error) + TableSelect(ctx context.Context, in sysin.GenCodesTableSelectInp) (res []*sysin.GenCodesTableSelectModel, err error) + ColumnSelect(ctx context.Context, in sysin.GenCodesColumnSelectInp) (res []*sysin.GenCodesColumnSelectModel, err error) + ColumnList(ctx context.Context, in sysin.GenCodesColumnListInp) (res []*sysin.GenCodesColumnListModel, err error) + Preview(ctx context.Context, in sysin.GenCodesPreviewInp) (res *sysin.GenCodesPreviewModel, err error) + Build(ctx context.Context, in sysin.GenCodesBuildInp) (err error) + } + ISysAddonsConfig interface { + GetConfigByGroup(ctx context.Context, in sysin.GetAddonsConfigInp) (res *sysin.GetAddonsConfigModel, err error) + ConversionType(ctx context.Context, models *entity.SysAddonsConfig) (value interface{}, err error) + UpdateConfigByGroup(ctx context.Context, in sysin.UpdateAddonsConfigInp) (err error) + } + ISysBlacklist interface { + Delete(ctx context.Context, in sysin.BlacklistDeleteInp) (err error) + Edit(ctx context.Context, in sysin.BlacklistEditInp) (err error) + Status(ctx context.Context, in sysin.BlacklistStatusInp) (err error) + MaxSort(ctx context.Context, in sysin.BlacklistMaxSortInp) (res *sysin.BlacklistMaxSortModel, err error) + View(ctx context.Context, in sysin.BlacklistViewInp) (res *sysin.BlacklistViewModel, err error) + List(ctx context.Context, in sysin.BlacklistListInp) (list []*sysin.BlacklistListModel, totalCount int, err error) + VariableLoad(ctx context.Context, err error) + Load(ctx context.Context) + } + ISysLoginLog interface { + Model(ctx context.Context) *gdb.Model + List(ctx context.Context, in sysin.LoginLogListInp) (list []*sysin.LoginLogListModel, totalCount int, err error) + Export(ctx context.Context, in sysin.LoginLogListInp) (err error) + Delete(ctx context.Context, in sysin.LoginLogDeleteInp) (err error) + View(ctx context.Context, in sysin.LoginLogViewInp) (res *sysin.LoginLogViewModel, err error) + Push(ctx context.Context, in sysin.LoginLogPushInp) + RealWrite(ctx context.Context, models entity.SysLoginLog) (err error) + } + ISysDictData interface { + Delete(ctx context.Context, in sysin.DictDataDeleteInp) error + Edit(ctx context.Context, in sysin.DictDataEditInp) (err error) + List(ctx context.Context, in sysin.DictDataListInp) (list []*sysin.DictDataListModel, totalCount int, err error) + Select(ctx context.Context, in sysin.DataSelectInp) (list sysin.DataSelectModel, err error) + } + ISysEmsLog interface { + Delete(ctx context.Context, in sysin.EmsLogDeleteInp) (err error) + Edit(ctx context.Context, in sysin.EmsLogEditInp) (err error) + Status(ctx context.Context, in sysin.EmsLogStatusInp) (err error) + View(ctx context.Context, in sysin.EmsLogViewInp) (res *sysin.EmsLogViewModel, err error) + List(ctx context.Context, in sysin.EmsLogListInp) (list []*sysin.EmsLogListModel, totalCount int, err error) + Send(ctx context.Context, in sysin.SendEmsInp) (err error) + GetTemplate(ctx context.Context, template string, config *model.EmailConfig) (val string, err error) + AllowSend(ctx context.Context, models *entity.SysEmsLog, config *model.EmailConfig) (err error) + VerifyCode(ctx context.Context, in sysin.VerifyEmsCodeInp) (err error) + } + ISysCurdDemo interface { + Model(ctx context.Context, option ...*handler.Option) *gdb.Model + List(ctx context.Context, in sysin.CurdDemoListInp) (list []*sysin.CurdDemoListModel, totalCount int, err error) + Export(ctx context.Context, in sysin.CurdDemoListInp) (err error) + Edit(ctx context.Context, in sysin.CurdDemoEditInp) (err error) + Delete(ctx context.Context, in sysin.CurdDemoDeleteInp) (err error) + MaxSort(ctx context.Context, in sysin.CurdDemoMaxSortInp) (res *sysin.CurdDemoMaxSortModel, err error) + View(ctx context.Context, in sysin.CurdDemoViewInp) (res *sysin.CurdDemoViewModel, err error) + Status(ctx context.Context, in sysin.CurdDemoStatusInp) (err error) + Switch(ctx context.Context, in sysin.CurdDemoSwitchInp) (err error) + } ISysDictType interface { Tree(ctx context.Context) (list []*sysin.DictTypeTree, err error) Delete(ctx context.Context, in sysin.DictTypeDeleteInp) (err error) Edit(ctx context.Context, in sysin.DictTypeEditInp) (err error) TreeSelect(ctx context.Context, in sysin.DictTreeSelectInp) (list []*sysin.DictTypeTree, err error) } + ISysLog interface { + Export(ctx context.Context, in sysin.LogListInp) (err error) + RealWrite(ctx context.Context, log entity.SysLog) (err error) + AutoLog(ctx context.Context) error + AnalysisLog(ctx context.Context) entity.SysLog + View(ctx context.Context, in sysin.LogViewInp) (res *sysin.LogViewModel, err error) + Delete(ctx context.Context, in sysin.LogDeleteInp) (err error) + List(ctx context.Context, in sysin.LogListInp) (list []*sysin.LogListModel, totalCount int, err error) + } + ISysServeLog interface { + Model(ctx context.Context) *gdb.Model + List(ctx context.Context, in sysin.ServeLogListInp) (list []*sysin.ServeLogListModel, totalCount int, err error) + Export(ctx context.Context, in sysin.ServeLogListInp) (err error) + Delete(ctx context.Context, in sysin.ServeLogDeleteInp) (err error) + View(ctx context.Context, in sysin.ServeLogViewInp) (res *sysin.ServeLogViewModel, err error) + RealWrite(ctx context.Context, models entity.SysServeLog) (err error) + } ISysSmsLog interface { Delete(ctx context.Context, in sysin.SmsLogDeleteInp) (err error) Edit(ctx context.Context, in sysin.SmsLogEditInp) (err error) @@ -119,16 +163,6 @@ type ( Upgrade(ctx context.Context, in sysin.AddonsUpgradeInp) (err error) UnInstall(ctx context.Context, in sysin.AddonsUnInstallInp) (err error) } - ISysBlacklist interface { - Delete(ctx context.Context, in sysin.BlacklistDeleteInp) (err error) - Edit(ctx context.Context, in sysin.BlacklistEditInp) (err error) - Status(ctx context.Context, in sysin.BlacklistStatusInp) (err error) - MaxSort(ctx context.Context, in sysin.BlacklistMaxSortInp) (res *sysin.BlacklistMaxSortModel, err error) - View(ctx context.Context, in sysin.BlacklistViewInp) (res *sysin.BlacklistViewModel, err error) - List(ctx context.Context, in sysin.BlacklistListInp) (list []*sysin.BlacklistListModel, totalCount int, err error) - VariableLoad(ctx context.Context, err error) - Load(ctx context.Context) - } ISysConfig interface { InitConfig(ctx context.Context) GetLogin(ctx context.Context) (conf *model.LoginConfig, err error) @@ -149,62 +183,61 @@ type ( ConversionType(ctx context.Context, models *entity.SysConfig) (value interface{}, err error) UpdateConfigByGroup(ctx context.Context, in sysin.UpdateConfigInp) (err error) } - ISysCurdDemo interface { - Model(ctx context.Context, option ...*handler.Option) *gdb.Model - List(ctx context.Context, in sysin.CurdDemoListInp) (list []*sysin.CurdDemoListModel, totalCount int, err error) - Export(ctx context.Context, in sysin.CurdDemoListInp) (err error) - Edit(ctx context.Context, in sysin.CurdDemoEditInp) (err error) - Delete(ctx context.Context, in sysin.CurdDemoDeleteInp) (err error) - MaxSort(ctx context.Context, in sysin.CurdDemoMaxSortInp) (res *sysin.CurdDemoMaxSortModel, err error) - View(ctx context.Context, in sysin.CurdDemoViewInp) (res *sysin.CurdDemoViewModel, err error) - Status(ctx context.Context, in sysin.CurdDemoStatusInp) (err error) - Switch(ctx context.Context, in sysin.CurdDemoSwitchInp) (err error) - } - ISysEmsLog interface { - Delete(ctx context.Context, in sysin.EmsLogDeleteInp) (err error) - Edit(ctx context.Context, in sysin.EmsLogEditInp) (err error) - Status(ctx context.Context, in sysin.EmsLogStatusInp) (err error) - View(ctx context.Context, in sysin.EmsLogViewInp) (res *sysin.EmsLogViewModel, err error) - List(ctx context.Context, in sysin.EmsLogListInp) (list []*sysin.EmsLogListModel, totalCount int, err error) - Send(ctx context.Context, in sysin.SendEmsInp) (err error) - GetTemplate(ctx context.Context, template string, config *model.EmailConfig) (val string, err error) - AllowSend(ctx context.Context, models *entity.SysEmsLog, config *model.EmailConfig) (err error) - VerifyCode(ctx context.Context, in sysin.VerifyEmsCodeInp) (err error) - } - ISysProvinces interface { - Tree(ctx context.Context) (list []g.Map, err error) - Delete(ctx context.Context, in sysin.ProvincesDeleteInp) (err error) - Edit(ctx context.Context, in sysin.ProvincesEditInp) (err error) - Status(ctx context.Context, in sysin.ProvincesStatusInp) (err error) - MaxSort(ctx context.Context, in sysin.ProvincesMaxSortInp) (res *sysin.ProvincesMaxSortModel, err error) - View(ctx context.Context, in sysin.ProvincesViewInp) (res *sysin.ProvincesViewModel, err error) - List(ctx context.Context, in sysin.ProvincesListInp) (list []*sysin.ProvincesListModel, totalCount int, err error) - ChildrenList(ctx context.Context, in sysin.ProvincesChildrenListInp) (list []*sysin.ProvincesChildrenListModel, totalCount int, err error) - UniqueId(ctx context.Context, in sysin.ProvincesUniqueIdInp) (res *sysin.ProvincesUniqueIdModel, err error) - Select(ctx context.Context, in sysin.ProvincesSelectInp) (res *sysin.ProvincesSelectModel, err error) - } ) var ( - localSysConfig ISysConfig - localSysCurdDemo ISysCurdDemo - localSysEmsLog ISysEmsLog - localSysProvinces ISysProvinces - localSysAddons ISysAddons localSysBlacklist ISysBlacklist localSysCronGroup ISysCronGroup - localSysLog ISysLog - localSysLoginLog ISysLoginLog - localSysServeLog ISysServeLog - localSysDictData ISysDictData localSysGenCodes ISysGenCodes - localSysCron ISysCron - localSysDictType ISysDictType - localSysSmsLog ISysSmsLog localSysAddonsConfig ISysAddonsConfig + localSysEmsLog ISysEmsLog + localSysLoginLog ISysLoginLog + localSysDictData ISysDictData + localSysConfig ISysConfig + localSysCurdDemo ISysCurdDemo + localSysDictType ISysDictType + localSysLog ISysLog + localSysServeLog ISysServeLog + localSysSmsLog ISysSmsLog + localSysAddons ISysAddons + localSysCron ISysCron + localSysProvinces ISysProvinces localSysAttachment ISysAttachment ) +func SysBlacklist() ISysBlacklist { + if localSysBlacklist == nil { + panic("implement not found for interface ISysBlacklist, forgot register?") + } + return localSysBlacklist +} + +func RegisterSysBlacklist(i ISysBlacklist) { + localSysBlacklist = i +} + +func SysCronGroup() ISysCronGroup { + if localSysCronGroup == nil { + panic("implement not found for interface ISysCronGroup, forgot register?") + } + return localSysCronGroup +} + +func RegisterSysCronGroup(i ISysCronGroup) { + localSysCronGroup = i +} + +func SysGenCodes() ISysGenCodes { + if localSysGenCodes == nil { + panic("implement not found for interface ISysGenCodes, forgot register?") + } + return localSysGenCodes +} + +func RegisterSysGenCodes(i ISysGenCodes) { + localSysGenCodes = i +} + func SysAddonsConfig() ISysAddonsConfig { if localSysAddonsConfig == nil { panic("implement not found for interface ISysAddonsConfig, forgot register?") @@ -216,70 +249,37 @@ func RegisterSysAddonsConfig(i ISysAddonsConfig) { localSysAddonsConfig = i } -func SysAttachment() ISysAttachment { - if localSysAttachment == nil { - panic("implement not found for interface ISysAttachment, forgot register?") +func SysEmsLog() ISysEmsLog { + if localSysEmsLog == nil { + panic("implement not found for interface ISysEmsLog, forgot register?") } - return localSysAttachment + return localSysEmsLog } -func RegisterSysAttachment(i ISysAttachment) { - localSysAttachment = i +func RegisterSysEmsLog(i ISysEmsLog) { + localSysEmsLog = i } -func SysCron() ISysCron { - if localSysCron == nil { - panic("implement not found for interface ISysCron, forgot register?") +func SysLoginLog() ISysLoginLog { + if localSysLoginLog == nil { + panic("implement not found for interface ISysLoginLog, forgot register?") } - return localSysCron + return localSysLoginLog } -func RegisterSysCron(i ISysCron) { - localSysCron = i +func RegisterSysLoginLog(i ISysLoginLog) { + localSysLoginLog = i } -func SysDictType() ISysDictType { - if localSysDictType == nil { - panic("implement not found for interface ISysDictType, forgot register?") +func SysDictData() ISysDictData { + if localSysDictData == nil { + panic("implement not found for interface ISysDictData, forgot register?") } - return localSysDictType + return localSysDictData } -func RegisterSysDictType(i ISysDictType) { - localSysDictType = i -} - -func SysSmsLog() ISysSmsLog { - if localSysSmsLog == nil { - panic("implement not found for interface ISysSmsLog, forgot register?") - } - return localSysSmsLog -} - -func RegisterSysSmsLog(i ISysSmsLog) { - localSysSmsLog = i -} - -func SysAddons() ISysAddons { - if localSysAddons == nil { - panic("implement not found for interface ISysAddons, forgot register?") - } - return localSysAddons -} - -func RegisterSysAddons(i ISysAddons) { - localSysAddons = i -} - -func SysBlacklist() ISysBlacklist { - if localSysBlacklist == nil { - panic("implement not found for interface ISysBlacklist, forgot register?") - } - return localSysBlacklist -} - -func RegisterSysBlacklist(i ISysBlacklist) { - localSysBlacklist = i +func RegisterSysDictData(i ISysDictData) { + localSysDictData = i } func SysConfig() ISysConfig { @@ -304,37 +304,15 @@ func RegisterSysCurdDemo(i ISysCurdDemo) { localSysCurdDemo = i } -func SysEmsLog() ISysEmsLog { - if localSysEmsLog == nil { - panic("implement not found for interface ISysEmsLog, forgot register?") +func SysDictType() ISysDictType { + if localSysDictType == nil { + panic("implement not found for interface ISysDictType, forgot register?") } - return localSysEmsLog + return localSysDictType } -func RegisterSysEmsLog(i ISysEmsLog) { - localSysEmsLog = i -} - -func SysProvinces() ISysProvinces { - if localSysProvinces == nil { - panic("implement not found for interface ISysProvinces, forgot register?") - } - return localSysProvinces -} - -func RegisterSysProvinces(i ISysProvinces) { - localSysProvinces = i -} - -func SysCronGroup() ISysCronGroup { - if localSysCronGroup == nil { - panic("implement not found for interface ISysCronGroup, forgot register?") - } - return localSysCronGroup -} - -func RegisterSysCronGroup(i ISysCronGroup) { - localSysCronGroup = i +func RegisterSysDictType(i ISysDictType) { + localSysDictType = i } func SysLog() ISysLog { @@ -348,39 +326,6 @@ func RegisterSysLog(i ISysLog) { localSysLog = i } -func SysDictData() ISysDictData { - if localSysDictData == nil { - panic("implement not found for interface ISysDictData, forgot register?") - } - return localSysDictData -} - -func RegisterSysDictData(i ISysDictData) { - localSysDictData = i -} - -func SysGenCodes() ISysGenCodes { - if localSysGenCodes == nil { - panic("implement not found for interface ISysGenCodes, forgot register?") - } - return localSysGenCodes -} - -func RegisterSysGenCodes(i ISysGenCodes) { - localSysGenCodes = i -} - -func SysLoginLog() ISysLoginLog { - if localSysLoginLog == nil { - panic("implement not found for interface ISysLoginLog, forgot register?") - } - return localSysLoginLog -} - -func RegisterSysLoginLog(i ISysLoginLog) { - localSysLoginLog = i -} - func SysServeLog() ISysServeLog { if localSysServeLog == nil { panic("implement not found for interface ISysServeLog, forgot register?") @@ -391,3 +336,58 @@ func SysServeLog() ISysServeLog { func RegisterSysServeLog(i ISysServeLog) { localSysServeLog = i } + +func SysSmsLog() ISysSmsLog { + if localSysSmsLog == nil { + panic("implement not found for interface ISysSmsLog, forgot register?") + } + return localSysSmsLog +} + +func RegisterSysSmsLog(i ISysSmsLog) { + localSysSmsLog = i +} + +func SysAddons() ISysAddons { + if localSysAddons == nil { + panic("implement not found for interface ISysAddons, forgot register?") + } + return localSysAddons +} + +func RegisterSysAddons(i ISysAddons) { + localSysAddons = i +} + +func SysCron() ISysCron { + if localSysCron == nil { + panic("implement not found for interface ISysCron, forgot register?") + } + return localSysCron +} + +func RegisterSysCron(i ISysCron) { + localSysCron = i +} + +func SysProvinces() ISysProvinces { + if localSysProvinces == nil { + panic("implement not found for interface ISysProvinces, forgot register?") + } + return localSysProvinces +} + +func RegisterSysProvinces(i ISysProvinces) { + localSysProvinces = i +} + +func SysAttachment() ISysAttachment { + if localSysAttachment == nil { + panic("implement not found for interface ISysAttachment, forgot register?") + } + return localSysAttachment +} + +func RegisterSysAttachment(i ISysAttachment) { + localSysAttachment = i +} diff --git a/server/internal/service/tcpclient.go b/server/internal/service/tcpclient.go index f9bb607..895b521 100644 --- a/server/internal/service/tcpclient.go +++ b/server/internal/service/tcpclient.go @@ -10,12 +10,6 @@ import ( ) type ( - IAuthClient interface { - Start(ctx context.Context) - Stop(ctx context.Context) - IsLogin() bool - OnResponseAuthSummary(ctx context.Context, args ...interface{}) - } ICronClient interface { Start(ctx context.Context) Stop(ctx context.Context) @@ -25,6 +19,12 @@ type ( OnCronStatus(ctx context.Context, args ...interface{}) OnCronOnlineExec(ctx context.Context, args ...interface{}) } + IAuthClient interface { + Start(ctx context.Context) + Stop(ctx context.Context) + IsLogin() bool + OnResponseAuthSummary(ctx context.Context, args ...interface{}) + } ) var ( diff --git a/server/main.go b/server/main.go index ba62143..2873a2e 100644 --- a/server/main.go +++ b/server/main.go @@ -15,7 +15,6 @@ import ( "hotgo/internal/cmd" "hotgo/internal/global" _ "hotgo/internal/logic" - _ "hotgo/internal/queues" ) func main() {