2026-04-28 00:25:09 +08:00

298 lines
6.5 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System.ComponentModel.DataAnnotations;
using YD_Event.Core.Enum;
namespace YD_Event.Application.Event.Dtos;
/// <summary>
/// 报名队员DTO
/// </summary>
public class RegistrationPersonDto
{
/// <summary>
/// ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 用户ID(AppUser表的ID,用于验证)
/// </summary>
public long UserId { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 性别
/// </summary>
public Gender Gender { get; set; }
/// <summary>
/// 身份证号
/// </summary>
public string IdCardNumber { get; set; }
/// <summary>
/// 出生日期
/// </summary>
public DateTime BirthDate { get; set; }
/// <summary>
/// 手机号
/// </summary>
public string Mobile { get; set; }
}
/// <summary>
/// 报名查询输入
/// </summary>
public class RegistrationQueryInput : Pagination
{
/// <summary>
/// 赛事ID
/// </summary>
public long? EventId { get; set; }
/// <summary>
/// 报名模式
/// </summary>
public int? RegistrationMode { get; set; }
/// <summary>
/// 单位名称
/// </summary>
public string? UnitName { get; set; }
/// <summary>
/// 用户名称
/// </summary>
public string? UserName { get; set; }
/// <summary>
/// 联系电话
/// </summary>
public string? ContactPhone { get; set; }
/// <summary>
/// 是否上传素材
/// </summary>
public bool? IsUploadMaterial { get; set; }
/// <summary>
/// 支付方式
/// </summary>
public int? PaymentMethod { get; set; }
/// <summary>
/// 支付状态
/// </summary>
public int? PaymentStatus { get; set; }
/// <summary>
/// 报名时间范围开始
/// </summary>
public DateTime? RegistrationTimeStart { get; set; }
/// <summary>
/// 报名时间范围结束
/// </summary>
public DateTime? RegistrationTimeEnd { get; set; }
}
/// <summary>
/// 报名列表输出
/// </summary>
public class RegistrationListOutput
{
/// <summary>
/// 报名ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 报名模式
/// </summary>
public int RegistrationMode { get; set; }
/// <summary>
/// 创建用户ID(用于获取单位名称)
/// </summary>
public long CreatedUserId { get; set; }
/// <summary>
/// 单位认证 ID(用于获取单位名称)
/// </summary>
public long? MerchantCertificationId { get; set; }
/// <summary>
/// 单位名称
/// </summary>
public string? UnitName { get; set; }
/// <summary>
/// 联系人姓名
/// </summary>
public string ContactName { get; set; }
/// <summary>
/// 联系人电话
/// </summary>
public string ContactPhone { get; set; }
/// <summary>
/// 总人数
/// </summary>
public int TotalPersonCount { get; set; }
/// <summary>
/// 是否上传素材
/// </summary>
public bool IsUploadMaterial { get; set; }
/// <summary>
/// 领队信息
/// </summary>
public string? TeamLeaderInfo { get; set; }
/// <summary>
/// 教练信息
/// </summary>
public string? CoachInfo { get; set; }
/// <summary>
/// 支付方式(线上/线下)
/// </summary>
public int PaymentMethod { get; set; }
/// <summary>
/// 具体支付方式类型
/// </summary>
public PaymentMethodType PaymentMethodType { get; set; }
/// <summary>
/// 订单号
/// </summary>
public string? OrderNo { get; set; }
/// <summary>
/// 总金额
/// </summary>
public decimal TotalAmount { get; set; }
/// <summary>
/// 支付状态
/// </summary>
public int PaymentStatus { get; set; }
/// <summary>
/// 支付凭证URL
/// </summary>
public string? PaymentProofUrl { get; set; }
/// <summary>
/// 报名时间
/// </summary>
public DateTime RegistrationTime { get; set; }
/// <summary>
/// 报名项目详情列表
/// </summary>
public List<RegistrationItemDetailDto>? Items { get; set; }
}
/// <summary>
/// 报名项目详情
/// </summary>
public class RegistrationItemDetailDto
{
/// <summary>
/// 报名项目ID(EventRegistrationItem的ID 或 EventRegistrationPerson的ID,根据项目类型决定)
/// </summary>
public long Id { get; set; }
/// <summary>
/// 参与者信息
/// </summary>
public string ParticipantInfo { get; set; }
/// <summary>
/// 项目名称
/// </summary>
public string ProjectName { get; set; }
/// <summary>
/// 组别名称
/// </summary>
public string GroupName { get; set; }
}
/// <summary>
/// 批量审核输入
/// </summary>
public class BatchAuditInput
{
/// <summary>
/// 报名ID列表
/// </summary>
public List<long> Ids { get; set; }
/// <summary>
/// 审核状态 (1-通过, 2-拒绝)
/// </summary>
public int PaymentStatus { get; set; }
/// <summary>
/// 审核备注
/// </summary>
public string? ReviewRemark { get; set; }
}
/// <summary>
/// 支付审核输入(单条)
/// </summary>
public class PaymentAuditInput
{
/// <summary>
/// 报名ID
/// </summary>
[Required(ErrorMessage = "报名ID不能为空")]
public long RegistrationId { get; set; }
/// <summary>
/// 支付状态 (1-已支付/审核通过, 2-支付失败/审核拒绝)
/// </summary>
[Required(ErrorMessage = "支付状态不能为空")]
[Range(1, 2, ErrorMessage = "支付状态只能是1(审核通过)或2(审核拒绝)")]
public int PaymentStatus { get; set; }
/// <summary>
/// 审核备注
/// </summary>
public string? ReviewRemark { get; set; }
}
/// <summary>
/// 批量支付审核输入
/// </summary>
public class BatchPaymentAuditInput
{
/// <summary>
/// 报名ID列表
/// </summary>
[Required(ErrorMessage = "报名ID列表不能为空")]
public List<long> Ids { get; set; }
/// <summary>
/// 支付状态 (1-已支付/审核通过, 2-支付失败/审核拒绝)
/// </summary>
[Required(ErrorMessage = "支付状态不能为空")]
[Range(1, 2, ErrorMessage = "支付状态只能是1(审核通过)或2(审核拒绝)")]
public int PaymentStatus { get; set; }
/// <summary>
/// 审核备注
/// </summary>
public string? ReviewRemark { get; set; }
}