using FluentValidation; using FluentValidation.Results; using Kean.Infrastructure.Configuration; namespace Kean.Domain.Material.Commands { /// /// 修改物料命令 /// public class ModifyMaterialCommand : MaterialProperty, ICommand { /// /// 标识 /// public int Id { get; set; } /// /// 品类 /// public int? Category { get; set; } /// /// 物料组 /// public string Group { get; set; } /// /// 料号 /// public string Code { get; set; } /// /// 名称 /// public string Name { get; set; } /// /// 验证器 /// 由于命令需要继承 MaterialProperty,所以无法直接实现 CommandValidator /// internal class Validator : AbstractValidator { /// /// 初始化 Kean.Domain.Material.Commands.ModifyMaterialCommand.Validator 类的新实例 /// internal Validator() { RuleFor(r => r.Id).NotEmpty().WithMessage("标识不允许空"); RuleFor(r => r.Code).NotEmpty().WithMessage("料号不允许空"); RuleFor(r => r.Name).NotEmpty().WithMessage("名称不允许空"); } } /// /// 验证结果 /// public ValidationResult ValidationResult => new Validator().Validate(this); } }