fix(order): cover invite gifts and inactive renewals
Build docker and publish / build (20.15.1) (push) Successful in 5m36s
Build docker and publish / build (20.15.1) (push) Successful in 5m36s
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/perfect-panel/server/internal/config"
|
||||
commonLogic "github.com/perfect-panel/server/internal/logic/common"
|
||||
"github.com/perfect-panel/server/internal/model/log"
|
||||
"github.com/perfect-panel/server/internal/model/user"
|
||||
"github.com/perfect-panel/server/internal/svc"
|
||||
@@ -319,6 +320,25 @@ func (l *DeviceLoginLogic) tryGrantTrialForDeviceLogin(userInfo *user.User, iden
|
||||
return
|
||||
}
|
||||
|
||||
entitlement, err := commonLogic.ResolveEntitlementUser(l.ctx, l.svcCtx.DB, userInfo.Id)
|
||||
if err != nil {
|
||||
l.Errorw("failed to resolve family entitlement before device trial grant",
|
||||
logger.Field("user_id", userInfo.Id),
|
||||
logger.Field("identifier", identifier),
|
||||
logger.Field("error", err.Error()),
|
||||
)
|
||||
return
|
||||
}
|
||||
if entitlement != nil && entitlement.EffectiveUserID != userInfo.Id {
|
||||
l.Debugw("skip device trial grant because device user is a family member",
|
||||
logger.Field("user_id", userInfo.Id),
|
||||
logger.Field("identifier", identifier),
|
||||
logger.Field("effective_user_id", entitlement.EffectiveUserID),
|
||||
logger.Field("entitlement_source", entitlement.Source),
|
||||
)
|
||||
return
|
||||
}
|
||||
|
||||
var count int64
|
||||
if err := l.svcCtx.DB.WithContext(l.ctx).
|
||||
Model(&user.Subscribe{}).
|
||||
|
||||
Reference in New Issue
Block a user