using System.ComponentModel.DataAnnotations;
using YD_Event.Core.Enum;
namespace YD_Event.Application.Points.Dtos;
///
/// 积分记录查询输入
///
public class PointsRecordQueryInput : Pagination
{
///
/// 用户类型(0-普通用户 1-单位用户)
///
public int UserType { get; set; }
///
/// 关键字(用户名/手机号/商户名称)
///
public string? Keyword { get; set; }
///
/// 开始时间
///
public DateTime? StartTime { get; set; }
///
/// 结束时间
///
public DateTime? EndTime { get; set; }
///
/// 积分排序(asc/desc)
///
public string? SortPoints { get; set; }
}
///
/// 积分明细查询输入
///
public class PointsDetailQueryInput : Pagination
{
///
/// 用户ID
///
[Required]
public long UserId { get; set; }
///
/// 用户类型(0-普通用户 1-单位用户)
///
public int UserType { get; set; }
///
/// 变动类型(1-获取 2-消耗)
///
public PointsOperationType? Type { get; set; }
}
///
/// 积分记录列表输出
///
public class PointsRecordListOutput
{
///
/// 用户ID(普通用户ID或商户ID)
///
public long UserId { get; set; }
///
/// 用户类型(0-普通用户 1-单位用户)
///
public int UserType { get; set; }
///
/// 姓名/商户名称
///
public string Name { get; set; }
///
/// 联系电话
///
public string Phone { get; set; }
///
/// 身份证图片/统一社会信用代码
///
public string IdentityInfo { get; set; }
///
/// 积分额度
///
public decimal TotalPoints { get; set; }
///
/// 最后更新时间
///
public DateTime? LastUpdateTime { get; set; }
}
///
/// 积分明细输出
///
public class PointsDetailOutput
{
///
/// 生成时间
///
public DateTime CreatedTime { get; set; }
///
/// 变动类型
///
public PointsOperationType Type { get; set; }
///
/// 动作/来源
///
public string Action { get; set; }
///
/// 项目
///
public string? Item { get; set; }
///
/// 组别
///
public string? Group { get; set; }
///
/// 变动积分
///
public decimal Points { get; set; }
///
/// 备注
///
public string? Remark { get; set; }
///
/// 参赛人姓名(单位用户特有)
///
public string? ParticipantName { get; set; }
///
/// 参赛人ID(单位用户特有)
///
public long? ParticipantId { get; set; }
}