You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.4 KiB
48 lines
1.4 KiB
using FluentValidation;
|
|
using System.Collections.Generic;
|
|
|
|
namespace Kean.Domain.Material.Commands
|
|
{
|
|
/// <summary>
|
|
/// 创建安全库存命令
|
|
/// </summary>
|
|
public class CreateSafetyCommand : CommandValidator<CreateSafetyCommand>, ICommand
|
|
{
|
|
/// <summary>
|
|
/// 物料
|
|
/// </summary>
|
|
public int Material { get; set; }
|
|
|
|
/// <summary>
|
|
/// 库房
|
|
/// </summary>
|
|
public IEnumerable<int> Warehouse { get; set; }
|
|
|
|
/// <summary>
|
|
/// 安全下限
|
|
/// </summary>
|
|
public decimal? LowerLimit { get; set; }
|
|
|
|
/// <summary>
|
|
/// 安全上限
|
|
/// </summary>
|
|
public decimal? UpperLimit { get; set; }
|
|
|
|
/// <summary>
|
|
/// 验证项
|
|
/// </summary>
|
|
protected override void Validation()
|
|
{
|
|
RuleFor(r => r.Material).NotEmpty().WithMessage("物料不允许空");
|
|
//RuleFor(r => r.Warehouse).NotEmpty().WithMessage("库房不允许空");
|
|
RuleFor(r => r.LowerLimit).NotNull().WithMessage("安全限制不允许空").When(r => !r.UpperLimit.HasValue);
|
|
RuleFor(r => r.UpperLimit).GreaterThanOrEqualTo(r => r.LowerLimit).WithMessage("上限必须大于下限").When(r => r.LowerLimit.HasValue && r.UpperLimit.HasValue);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 标识
|
|
/// </summary>
|
|
[Output]
|
|
public int Id { get; private set; }
|
|
}
|
|
}
|