61b7e4f8f2
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
37 lines
1.5 KiB
C#
37 lines
1.5 KiB
C#
using CMSMicroservice.Domain.Common;
|
|
using FluentValidation;
|
|
|
|
namespace CMSMicroservice.Application.ManualPaymentCQ.Commands.CreateManualPayment;
|
|
|
|
public class CreateManualPaymentCommandValidator : AbstractValidator<CreateManualPaymentCommand>
|
|
{
|
|
public CreateManualPaymentCommandValidator()
|
|
{
|
|
RuleFor(x => x.UserId)
|
|
.GreaterThan(0)
|
|
.WithMessage("شناسه کاربر باید بزرگتر از صفر باشد");
|
|
|
|
// حصار ایمنی — مبلغ واقعی از پکیج کاربر خوانده میشود
|
|
RuleFor(x => x.Amount)
|
|
.GreaterThan(0)
|
|
.WithMessage("مبلغ باید بزرگتر از صفر باشد")
|
|
.LessThanOrEqualTo(SystemConstants.WalletMaxSafeAmount)
|
|
.WithMessage("مبلغ وارد شده بیش از حد مجاز است");
|
|
|
|
RuleFor(x => x.Type)
|
|
.IsInEnum()
|
|
.WithMessage("نوع تراکنش نامعتبر است");
|
|
|
|
RuleFor(x => x.Description)
|
|
.NotEmpty()
|
|
.WithMessage("توضیحات الزامی است")
|
|
.MaximumLength(1000)
|
|
.WithMessage("توضیحات نمیتواند بیشتر از 1000 کاراکتر باشد");
|
|
|
|
RuleFor(x => x.ReferenceNumber)
|
|
.MaximumLength(100)
|
|
.WithMessage("شماره مرجع نمیتواند بیشتر از 100 کاراکتر باشد")
|
|
.When(x => !string.IsNullOrEmpty(x.ReferenceNumber));
|
|
}
|
|
}
|