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.BrandName).NotEmpty().MaximumLength(128); RuleFor(x => x.BrandAlias).MaximumLength(64); RuleFor(x => x.LogoUrl).MaximumLength(256); RuleFor(x => x.Category).MaximumLength(64); RuleFor(x => x.ContactPhone).NotEmpty().MaximumLength(32); RuleFor(x => x.ContactEmail).EmailAddress().When(x => !string.IsNullOrWhiteSpace(x.ContactEmail)); } }