Files
jinko.yikatong/Src/Dlhis.Canteen/Order/Request/BookingMealRequest.cs

63 lines
1.5 KiB
C#

using System.ComponentModel.DataAnnotations;
using Dlhis.Entity.Canteen.Enums;
namespace Dlhis.Canteen.Dishes.Request;
/// <summary>
/// 订餐请求
/// </summary>
public class BookingMealRequest : IValidatableObject
{
/// <summary>
/// 订餐的日期
/// </summary>
public DateTime BookingDate { get; set; }
/// <summary>
/// 营业点/消费地点
/// </summary>
public Guid BusinessPlaceCode { get; set; }
/// <summary>
/// 餐次
/// </summary>
[EnumDataType(typeof(ShiftEnumType))]
public ShiftEnumType ShiftType { get; set; }
/// <summary>
/// 菜品编码
/// </summary>
[Required(ErrorMessage = "选菜不能为空")]
public string DishesCode { get; set; }
/// <summary>
/// 购买数量
/// </summary>
[Range(0, 100)]
public int Number { get; set; }
/// <summary>
/// 消费来源
/// </summary>
[EnumDataType(typeof(BalanceRecordSourceEnumType))]
public BalanceRecordSourceEnumType Source { get; set; }
/// <summary>
/// 配送地址
/// </summary>
[Required]
public string DeliveryAddress { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
BookingDate = BookingDate.Date;
if (DateTime.Now.Date >= BookingDate)
{
yield return new ValidationResult("订餐日期小于当天", new[] { nameof(BookingDate) });
}
yield break;
}
}