using System.ComponentModel.DataAnnotations; namespace QYZH.InteractiveMagazine.Models.Dto.Points; /// /// 手动增加积分输入 /// public class ManualAddPointsInput { /// /// 增加数量(必须大于0) /// [Range(1, int.MaxValue, ErrorMessage = "增加积分数量必须大于0")] public int Amount { get; set; } /// /// 操作原因(必填) /// [Required(ErrorMessage = "操作原因不能为空")] public string Reason { get; set; } = string.Empty; } /// /// 手动扣除积分输入 /// public class ManualDeductPointsInput { /// /// 扣除数量(必须大于0) /// [Range(1, int.MaxValue, ErrorMessage = "扣除积分数量必须大于0")] public int Amount { get; set; } /// /// 操作原因(必填) /// [Required(ErrorMessage = "操作原因不能为空")] public string Reason { get; set; } = string.Empty; } /// /// 手动积分操作输出 /// public class ManualPointsOutput { /// /// 积分流水记录Id /// public long RecordId { get; set; } /// /// 操作前积分余额 /// public int PreviousBalance { get; set; } /// /// 操作后积分余额 /// public int NewBalance { get; set; } /// /// 变动数量(正数为增加,负数为扣除) /// public int ChangeAmount { get; set; } /// /// 操作人 /// public string OperatorName { get; set; } = string.Empty; /// /// 操作时间 /// public DateTime OperatedAt { get; set; } }