namespace Yw.Application
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public class BindingHealthMultiEvaluationModelInput : IValidatableObject
|
{
|
|
/// <summary>
|
/// 模型 id
|
/// </summary>
|
[Required, Range(1, long.MaxValue, ErrorMessage = "ModelID 必须大于0")]
|
public long ModelID { get; set; }
|
|
/// <summary>
|
/// 设备id
|
/// </summary>
|
[Required, Range(1, long.MaxValue, ErrorMessage = "EquipmentID 必须大于0")]
|
public long EquipmentID { get; set; }
|
|
/// <summary>
|
/// 计划类型
|
/// </summary>
|
[Required]
|
public eCronType CronType { get; set; }
|
|
/// <summary>
|
/// 计划参数
|
/// </summary>
|
[Required]
|
public string CronParas { get; set; }
|
|
/// <summary>
|
/// 验证
|
/// </summary>
|
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
|
{
|
switch (this.CronType)
|
{
|
case eCronType.Real:
|
{
|
if (!int.TryParse(this.CronParas, out int intCronParas))
|
{
|
yield return new ValidationResult(
|
"CronParas 参数错误"
|
, new[] { nameof(CronParas) }
|
);
|
}
|
}
|
break;
|
case eCronType.Fixed:
|
{
|
if (!Quartz.CronExpression.IsValidExpression(this.CronParas))
|
{
|
yield return new ValidationResult(
|
"CronParas 参数错误"
|
, new[] { nameof(CronParas) }
|
);
|
}
|
}
|
break;
|
default: break;
|
}
|
|
|
|
}
|
|
|
}
|
}
|