feat(subscription): enhance subscription cache management and improve error handling
This commit is contained in:
@@ -464,6 +464,19 @@ func (l *ActivateOrderLogic) Renewal(ctx context.Context, orderInfo *order.Order
|
||||
return err
|
||||
}
|
||||
|
||||
// Clear user subscription cache
|
||||
err = l.svc.UserModel.ClearSubscribeCache(ctx, userSub)
|
||||
if err != nil {
|
||||
logger.WithContext(ctx).Error("Clear user subscribe cache failed",
|
||||
logger.Field("error", err.Error()),
|
||||
logger.Field("subscribe_id", userSub.Id),
|
||||
logger.Field("user_id", userInfo.Id),
|
||||
)
|
||||
}
|
||||
|
||||
// Clear cache
|
||||
l.clearServerCache(ctx, sub)
|
||||
|
||||
// Handle commission
|
||||
go l.handleCommission(context.Background(), userInfo, orderInfo, false)
|
||||
|
||||
@@ -547,6 +560,19 @@ func (l *ActivateOrderLogic) ResetTraffic(ctx context.Context, orderInfo *order.
|
||||
return err
|
||||
}
|
||||
|
||||
// Clear user subscription cache
|
||||
err = l.svc.UserModel.ClearSubscribeCache(ctx, userSub)
|
||||
if err != nil {
|
||||
logger.WithContext(ctx).Error("Clear user subscribe cache failed",
|
||||
logger.Field("error", err.Error()),
|
||||
logger.Field("subscribe_id", userSub.Id),
|
||||
logger.Field("user_id", userInfo.Id),
|
||||
)
|
||||
}
|
||||
|
||||
// Clear cache
|
||||
l.clearServerCache(ctx, sub)
|
||||
|
||||
// Send notifications
|
||||
l.sendNotifications(ctx, orderInfo, userInfo, sub, userSub, telegram.ResetTrafficNotify)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user