F2-F7: نوتیفیکیشنها+نامپکیج، ستون پکیج در CSV، مقادیر داینامیک کیفپول جادویی، ولیدیتور SystemConstants
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 8m29s
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 8m29s
F2: اضافه شدن packageName به SmsTemplates، IUserNotificationService، UserNotificationService
- DayaLoan، ClubActivated، CommissionDeposited حالا نام پکیج را نشان میدهند
F4: اضافه شدن ستون پکیج به CSV خروجیها
- commission.proto: package_name در WithdrawalRequestModel
- manualpayment.proto: package_name در ManualPaymentModel
- کوئریهندلرها UserPackagePurchases لوکاپ اضافه شد
F6: مقادیر داینامیک کیفپول جادویی از پکیج
- userwallet.proto: magic_multiplier + magic_max_credit
- UserWalletService: پاپیولیت فیلدهای جدید + فالبک به SystemConstants
F7: ولیدیتورها از SystemConstants استفاده میکنند
- WalletMaxSafeAmount (10B ریال) به عنوان حصار ایمنی
- MagicWalletMinCharge، DiscountWalletMinCharge ثابتهای مرکزی
- سقف واقعی per-package در هندلرها اعمال میشود
Proto: v0.0.189
This commit is contained in:
+11
-1
@@ -51,6 +51,15 @@ public class GetWithdrawalRequestsQueryHandler : IRequestHandler<GetWithdrawalRe
|
||||
.PaginatedListAsync(paginationState: request.PaginationState)
|
||||
.ToListAsync(cancellationToken);
|
||||
|
||||
// دریافت PackageName از آخرین خرید پکیج کاربران
|
||||
var userIds = models.Select(x => x.UserId).Distinct().ToList();
|
||||
var userPackageNames = await _context.UserPackagePurchases
|
||||
.Where(p => userIds.Contains(p.UserId))
|
||||
.Include(p => p.Package)
|
||||
.GroupBy(p => p.UserId)
|
||||
.Select(g => new { UserId = g.Key, PackageName = g.OrderByDescending(x => x.PurchasedAt).First().Package.Title })
|
||||
.ToDictionaryAsync(x => x.UserId, x => x.PackageName, cancellationToken);
|
||||
|
||||
var result = models.Select(x => new WithdrawalRequestModel
|
||||
{
|
||||
Id = x.Id,
|
||||
@@ -69,7 +78,8 @@ public class GetWithdrawalRequestsQueryHandler : IRequestHandler<GetWithdrawalRe
|
||||
BankReferenceId = x.BankReferenceId,
|
||||
BankTrackingCode = x.BankTrackingCode,
|
||||
PaymentFailureReason = x.PaymentFailureReason,
|
||||
Created = x.Created
|
||||
Created = x.Created,
|
||||
PackageName = userPackageNames.GetValueOrDefault(x.UserId)
|
||||
}).ToList();
|
||||
|
||||
return new GetWithdrawalRequestsResponseDto
|
||||
|
||||
+1
@@ -25,4 +25,5 @@ public class WithdrawalRequestModel
|
||||
public string? BankTrackingCode { get; set; }
|
||||
public string? PaymentFailureReason { get; set; }
|
||||
public DateTime Created { get; set; }
|
||||
public string? PackageName { get; set; }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user