using FluentValidation; using TakeoutSaaS.Application.App.Merchants.Commands; namespace TakeoutSaaS.Application.App.Merchants.Validators; /// /// 更新商户命令验证器。 /// public sealed class UpdateMerchantCommandValidator : AbstractValidator { /// /// 初始化验证规则。 /// public UpdateMerchantCommandValidator() { RuleFor(x => x.MerchantId).GreaterThan(0); RuleFor(x => x.Name).NotEmpty().MaximumLength(128); RuleFor(x => x.LicenseNumber).MaximumLength(64); RuleFor(x => x.LegalRepresentative).MaximumLength(64); RuleFor(x => x.RegisteredAddress).MaximumLength(256); RuleFor(x => x.ContactPhone).NotEmpty().MaximumLength(32); RuleFor(x => x.ContactEmail).EmailAddress().MaximumLength(128) .When(x => !string.IsNullOrWhiteSpace(x.ContactEmail)); RuleFor(x => x.RowVersion).NotEmpty(); } }