diff --git a/apis/public/subscribe.api b/apis/public/subscribe.api index 25234ad..f810600 100644 --- a/apis/public/subscribe.api +++ b/apis/public/subscribe.api @@ -41,6 +41,7 @@ type ( Name string `json:"name"` Uuid string `json:"uuid"` Protocol string `json:"protocol"` + Protocols string `json:"protocols"` Port uint16 `json:"port"` Address string `json:"address"` Tags []string `json:"tags"` diff --git a/internal/handler/routes.go b/internal/handler/routes.go index e684fb4..5f8d80d 100644 --- a/internal/handler/routes.go +++ b/internal/handler/routes.go @@ -867,10 +867,10 @@ func RegisterHandlers(router *gin.Engine, serverCtx *svc.ServiceContext) { serverGroupRouter.GET("/user", server.GetServerUserListHandler(serverCtx)) } - serverGroupRouterV2 := router.Group("/v2/server") + serverGroupRouter = router.Group("/v2/server") { // Get Server Protocol Config - serverGroupRouterV2.GET("/:server_id", server.QueryServerProtocolConfigHandler(serverCtx)) + serverGroupRouter.GET("/:server_id", server.QueryServerProtocolConfigHandler(serverCtx)) } } diff --git a/internal/logic/public/subscribe/querySubscribeListLogic.go b/internal/logic/public/subscribe/querySubscribeListLogic.go index 16d538e..7cf40b0 100644 --- a/internal/logic/public/subscribe/querySubscribeListLogic.go +++ b/internal/logic/public/subscribe/querySubscribeListLogic.go @@ -55,16 +55,16 @@ func (l *QuerySubscribeListLogic) QuerySubscribeList(req *types.QuerySubscribeLi _ = json.Unmarshal([]byte(item.Discount), &discount) sub.Discount = discount } - + // 计算节点数量 var nodeIds []int64 var tags []string - + // 解析节点ID if item.Nodes != "" { nodeIds = tool.StringToInt64Slice(item.Nodes) } - + // 解析标签 if item.NodeTags != "" { tagStrs := strings.Split(item.NodeTags, ",") @@ -74,7 +74,7 @@ func (l *QuerySubscribeListLogic) QuerySubscribeList(req *types.QuerySubscribeLi } } } - + // 获取节点数量 nodeCount, err := l.svcCtx.NodeModel.CountNodesByIdsAndTags(l.ctx, nodeIds, tags) if err != nil { @@ -82,7 +82,7 @@ func (l *QuerySubscribeListLogic) QuerySubscribeList(req *types.QuerySubscribeLi nodeCount = 0 // 出错时设置为0 } sub.NodeCount = nodeCount - + list[i] = sub } resp.List = list diff --git a/internal/logic/public/subscribe/queryUserSubscribeNodeListLogic.go b/internal/logic/public/subscribe/queryUserSubscribeNodeListLogic.go index 2ad05b8..1d9769d 100644 --- a/internal/logic/public/subscribe/queryUserSubscribeNodeListLogic.go +++ b/internal/logic/public/subscribe/queryUserSubscribeNodeListLogic.go @@ -141,6 +141,7 @@ func (l *QueryUserSubscribeNodeListLogic) getServers(userSub *user.Subscribe) (u Name: n.Name, Uuid: userSub.UUID, Protocol: n.Protocol, + Protocols: server.Protocols, Port: n.Port, Address: n.Address, Tags: strings.Split(n.Tags, ","), diff --git a/internal/types/types.go b/internal/types/types.go index 998adf6..3a44525 100644 --- a/internal/types/types.go +++ b/internal/types/types.go @@ -2021,6 +2021,7 @@ type Subscribe struct { UnitPrice int64 `json:"unit_price"` UnitTime string `json:"unit_time"` Discount []SubscribeDiscount `json:"discount"` + NodeCount int64 `json:"node_count"` Replacement int64 `json:"replacement"` Inventory int64 `json:"inventory"` Traffic int64 `json:"traffic"` @@ -2029,7 +2030,6 @@ type Subscribe struct { Quota int64 `json:"quota"` Nodes []int64 `json:"nodes"` NodeTags []string `json:"node_tags"` - NodeCount int64 `json:"node_count"` Show bool `json:"show"` Sell bool `json:"sell"` Sort int64 `json:"sort"` @@ -2645,6 +2645,7 @@ type UserSubscribeNodeInfo struct { Name string `json:"name"` Uuid string `json:"uuid"` Protocol string `json:"protocol"` + Protocols string `json:"protocols"` Port uint16 `json:"port"` Address string `json:"address"` Tags []string `json:"tags"`