无订阅 支付后出现两个订阅
All checks were successful
Build docker and publish / build (20.15.1) (push) Successful in 8m13s
All checks were successful
Build docker and publish / build (20.15.1) (push) Successful in 8m13s
This commit is contained in:
parent
7308aa9191
commit
d575df9529
@ -960,9 +960,9 @@ func RegisterHandlers(router *gin.Engine, serverCtx *svc.ServiceContext) {
|
|||||||
serverGroupRouter.GET("/user", server.GetServerUserListHandler(serverCtx))
|
serverGroupRouter.GET("/user", server.GetServerUserListHandler(serverCtx))
|
||||||
}
|
}
|
||||||
|
|
||||||
serverGroupRouter := router.Group("/v2/server")
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
serverGroupRouter := router.Group("/v2/server")
|
||||||
|
|
||||||
// Get Server Protocol Config
|
// Get Server Protocol Config
|
||||||
serverGroupRouter.GET("/:server_id", server.QueryServerProtocolConfigHandler(serverCtx))
|
serverGroupRouter.GET("/:server_id", server.QueryServerProtocolConfigHandler(serverCtx))
|
||||||
}
|
}
|
||||||
|
|||||||
@ -59,3 +59,145 @@ type EmailLoginRequest struct {
|
|||||||
LoginType string `header:"Login-Type"`
|
LoginType string `header:"Login-Type"`
|
||||||
CfToken string `json:"cf_token,optional" form:"cf_token"`
|
CfToken string `json:"cf_token,optional" form:"cf_token"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Compatibility types for custom endpoints not included in generated types.go.
|
||||||
|
type BindEmailWithVerificationRequest struct {
|
||||||
|
Email string `json:"email" form:"email" validate:"required,email"`
|
||||||
|
Code string `json:"code" form:"code" validate:"required"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type BindEmailWithVerificationResponse struct {
|
||||||
|
Success bool `json:"success"`
|
||||||
|
Message string `json:"message"`
|
||||||
|
Token string `json:"token,omitempty"`
|
||||||
|
UserId int64 `json:"user_id"`
|
||||||
|
FamilyJoined bool `json:"family_joined,omitempty"`
|
||||||
|
FamilyId int64 `json:"family_id,omitempty"`
|
||||||
|
OwnerUserId int64 `json:"owner_user_id,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type BindInviteCodeRequest struct {
|
||||||
|
InviteCode string `json:"invite_code" form:"invite_code" validate:"required"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeleteAccountResponse struct {
|
||||||
|
Success bool `json:"success"`
|
||||||
|
Message string `json:"message"`
|
||||||
|
UserId int64 `json:"user_id"`
|
||||||
|
Code int64 `json:"code"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetAgentDownloadsRequest struct{}
|
||||||
|
|
||||||
|
type PlatformDownloads struct {
|
||||||
|
IOS int64 `json:"ios"`
|
||||||
|
Android int64 `json:"android"`
|
||||||
|
Windows int64 `json:"windows"`
|
||||||
|
Mac int64 `json:"mac"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetAgentDownloadsResponse struct {
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
Platforms *PlatformDownloads `json:"platforms,omitempty"`
|
||||||
|
ComparisonRate *string `json:"comparison_rate,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetAgentRealtimeRequest struct{}
|
||||||
|
|
||||||
|
type GetAgentRealtimeResponse struct {
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
Clicks int64 `json:"clicks"`
|
||||||
|
Views int64 `json:"views"`
|
||||||
|
Installs int64 `json:"installs"`
|
||||||
|
PaidCount int64 `json:"paid_count"`
|
||||||
|
GrowthRate string `json:"growth_rate"`
|
||||||
|
PaidGrowthRate string `json:"paid_growth_rate"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetInviteSalesRequest struct {
|
||||||
|
Page int `form:"page"`
|
||||||
|
Size int `form:"size"`
|
||||||
|
StartTime int64 `form:"start_time"`
|
||||||
|
EndTime int64 `form:"end_time"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type InvitedUserSale struct {
|
||||||
|
Amount float64 `json:"amount"`
|
||||||
|
UpdatedAt int64 `json:"updated_at"`
|
||||||
|
UserHash string `json:"user_hash"`
|
||||||
|
ProductName string `json:"product_name"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetInviteSalesResponse struct {
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
List []InvitedUserSale `json:"list"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSubscribeStatusRequest struct {
|
||||||
|
Email string `form:"email" json:"email" validate:"omitempty,email"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSubscribeStatusResponse struct {
|
||||||
|
DeviceStatus bool `json:"device_status"`
|
||||||
|
EmailStatus bool `json:"email_status"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetUserInviteStatsRequest struct{}
|
||||||
|
|
||||||
|
type GetUserInviteStatsResponse struct {
|
||||||
|
FriendlyCount int64 `json:"friendly_count"`
|
||||||
|
HistoryCount int64 `json:"history_count"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetErrorLogMessageListRequest struct {
|
||||||
|
Page int `form:"page"`
|
||||||
|
Size int `form:"size"`
|
||||||
|
Platform string `form:"platform"`
|
||||||
|
Level uint8 `form:"level"`
|
||||||
|
UserId int64 `form:"user_id"`
|
||||||
|
DeviceId string `form:"device_id"`
|
||||||
|
ErrorCode string `form:"error_code"`
|
||||||
|
Keyword string `form:"keyword"`
|
||||||
|
Start int64 `form:"start"`
|
||||||
|
End int64 `form:"end"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ErrorLogMessage struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
Platform string `json:"platform"`
|
||||||
|
AppVersion string `json:"app_version"`
|
||||||
|
OsName string `json:"os_name"`
|
||||||
|
OsVersion string `json:"os_version"`
|
||||||
|
DeviceId string `json:"device_id"`
|
||||||
|
UserId int64 `json:"user_id"`
|
||||||
|
SessionId string `json:"session_id"`
|
||||||
|
Level uint8 `json:"level"`
|
||||||
|
ErrorCode string `json:"error_code"`
|
||||||
|
Message string `json:"message"`
|
||||||
|
CreatedAt int64 `json:"created_at"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetErrorLogMessageListResponse struct {
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
List []ErrorLogMessage `json:"list"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetErrorLogMessageDetailResponse struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
Platform string `json:"platform"`
|
||||||
|
AppVersion string `json:"app_version"`
|
||||||
|
OsName string `json:"os_name"`
|
||||||
|
OsVersion string `json:"os_version"`
|
||||||
|
DeviceId string `json:"device_id"`
|
||||||
|
UserId int64 `json:"user_id"`
|
||||||
|
SessionId string `json:"session_id"`
|
||||||
|
Level uint8 `json:"level"`
|
||||||
|
ErrorCode string `json:"error_code"`
|
||||||
|
Message string `json:"message"`
|
||||||
|
Stack string `json:"stack"`
|
||||||
|
ClientIP string `json:"client_ip"`
|
||||||
|
UserAgent string `json:"user_agent"`
|
||||||
|
Locale string `json:"locale"`
|
||||||
|
OccurredAt int64 `json:"occurred_at"`
|
||||||
|
CreatedAt int64 `json:"created_at"`
|
||||||
|
}
|
||||||
|
|||||||
@ -1711,8 +1711,10 @@ type QueryOrderDetailRequest struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type QueryOrderListRequest struct {
|
type QueryOrderListRequest struct {
|
||||||
Page int `form:"page" validate:"required"`
|
Page int `form:"page" validate:"required"`
|
||||||
Size int `form:"size" validate:"required"`
|
Size int `form:"size" validate:"required"`
|
||||||
|
Status int `form:"status"`
|
||||||
|
Search string `form:"search"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type QueryOrderListResponse struct {
|
type QueryOrderListResponse struct {
|
||||||
@ -2718,6 +2720,7 @@ type User struct {
|
|||||||
Telegram int64 `json:"telegram"`
|
Telegram int64 `json:"telegram"`
|
||||||
ReferCode string `json:"refer_code"`
|
ReferCode string `json:"refer_code"`
|
||||||
RefererId int64 `json:"referer_id"`
|
RefererId int64 `json:"referer_id"`
|
||||||
|
ShareLink string `json:"share_link,omitempty"`
|
||||||
Enable bool `json:"enable"`
|
Enable bool `json:"enable"`
|
||||||
IsAdmin bool `json:"is_admin,omitempty"`
|
IsAdmin bool `json:"is_admin,omitempty"`
|
||||||
EnableBalanceNotify bool `json:"enable_balance_notify"`
|
EnableBalanceNotify bool `json:"enable_balance_notify"`
|
||||||
@ -2727,6 +2730,8 @@ type User struct {
|
|||||||
AuthMethods []UserAuthMethod `json:"auth_methods"`
|
AuthMethods []UserAuthMethod `json:"auth_methods"`
|
||||||
UserDevices []UserDevice `json:"user_devices"`
|
UserDevices []UserDevice `json:"user_devices"`
|
||||||
Rules []string `json:"rules"`
|
Rules []string `json:"rules"`
|
||||||
|
LastLoginTime int64 `json:"last_login_time,omitempty"`
|
||||||
|
MemberStatus string `json:"member_status,omitempty"`
|
||||||
CreatedAt int64 `json:"created_at"`
|
CreatedAt int64 `json:"created_at"`
|
||||||
UpdatedAt int64 `json:"updated_at"`
|
UpdatedAt int64 `json:"updated_at"`
|
||||||
DeletedAt int64 `json:"deleted_at,omitempty"`
|
DeletedAt int64 `json:"deleted_at,omitempty"`
|
||||||
@ -2830,6 +2835,7 @@ type UserSubscribe struct {
|
|||||||
EntitlementSource string `json:"entitlement_source"`
|
EntitlementSource string `json:"entitlement_source"`
|
||||||
EntitlementOwnerUserId int64 `json:"entitlement_owner_user_id"`
|
EntitlementOwnerUserId int64 `json:"entitlement_owner_user_id"`
|
||||||
ReadOnly bool `json:"read_only"`
|
ReadOnly bool `json:"read_only"`
|
||||||
|
IsGift bool `json:"is_gift"`
|
||||||
Short string `json:"short"`
|
Short string `json:"short"`
|
||||||
CreatedAt int64 `json:"created_at"`
|
CreatedAt int64 `json:"created_at"`
|
||||||
UpdatedAt int64 `json:"updated_at"`
|
UpdatedAt int64 `json:"updated_at"`
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user