feat: improve package retrieval logic in AcceptClubMembershipContract and ActivateClubMembership handlers
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 9m0s

This commit is contained in:
masoodafar-web
2026-05-03 22:03:47 +03:30
parent eeb837f32e
commit c5dd1a2ef5
3 changed files with 92 additions and 8 deletions
@@ -235,8 +235,9 @@ public class ActivateClubMembershipCommandHandler : IRequestHandler<ActivateClub
var hasCurrentCycle = await _context.ClubMembershipCycles
.AnyAsync(c => c.UserId == user.Id && c.IsCurrentCycle, cancellationToken);
// اگر چرخه فعال دارد — یعنی Activate قبلاً برای این خرید اجرا شده؛ جلوگیری از ثبت Cycle تکراری
if (hasCurrentCycle)
// اگر چرخه فعال دارد و درخواست Force نیست — احتمال اجرای تکراری همان خرید
// در حالت ForceActivation (مثل پرداخت دستی)، باید چرخه جدید ساخته شود تا پکیج جدید ثبت شود.
if (hasCurrentCycle && !request.ForceActivation)
{
_logger.LogInformation(
"User {UserId} already has a running cycle — skipping duplicate activation",