diff --git a/service/billing_session.go b/service/billing_session.go index 00da526b..1a31316b 100644 --- a/service/billing_session.go +++ b/service/billing_session.go @@ -323,19 +323,19 @@ func NewBillingSession(c *gin.Context, relayInfo *relaycommon.RelayInfo, preCons case "subscription_first": fallthrough default: - hasSub, err := model.HasActiveUserSubscription(relayInfo.UserId) - if err != nil { - return nil, types.NewError(err, types.ErrorCodeQueryDataError, types.ErrOptionWithSkipRetry()) + hasSub, subCheckErr := model.HasActiveUserSubscription(relayInfo.UserId) + if subCheckErr != nil { + return nil, types.NewError(subCheckErr, types.ErrorCodeQueryDataError, types.ErrOptionWithSkipRetry()) } if !hasSub { return tryWallet() } - session, err := trySubscription() - if err != nil { - if err.GetErrorCode() == types.ErrorCodeInsufficientUserQuota { + session, apiErr := trySubscription() + if apiErr != nil { + if apiErr.GetErrorCode() == types.ErrorCodeInsufficientUserQuota { return tryWallet() } - return nil, err + return nil, apiErr } return session, nil }