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