2026-08-11 23:41:18 +08:00
|
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
|
using YD_Event.Core.Enum;
|
|
|
|
|
|
|
|
|
|
namespace YD_Event.Application.Referee.Dtos;
|
|
|
|
|
|
|
|
|
|
public class RefereeQueryInput : Pagination
|
|
|
|
|
{
|
|
|
|
|
public string? Name { get; set; }
|
|
|
|
|
public string? RegionCode { get; set; }
|
|
|
|
|
public RefereeLevel? Level { get; set; }
|
|
|
|
|
public string? Mobile { get; set; }
|
|
|
|
|
public RefereeRole? Role { get; set; }
|
|
|
|
|
public AuditStatus? AuditStatus { get; set; }
|
|
|
|
|
public DateTime? StartTime { get; set; }
|
|
|
|
|
public DateTime? EndTime { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class SaveRefereeInput
|
|
|
|
|
{
|
|
|
|
|
[Required(ErrorMessage = "裁判姓名不能为空"), StringLength(64)]
|
|
|
|
|
public string Name { get; set; } = null!;
|
|
|
|
|
[Required(ErrorMessage = "地区不能为空")]
|
|
|
|
|
public string ProvinceCode { get; set; } = null!;
|
|
|
|
|
[Required]
|
|
|
|
|
public string ProvinceName { get; set; } = null!;
|
|
|
|
|
[Required]
|
|
|
|
|
public string CityCode { get; set; } = null!;
|
|
|
|
|
[Required]
|
|
|
|
|
public string CityName { get; set; } = null!;
|
|
|
|
|
[Required]
|
|
|
|
|
public string DistrictCode { get; set; } = null!;
|
|
|
|
|
[Required]
|
|
|
|
|
public string DistrictName { get; set; } = null!;
|
|
|
|
|
[Required(ErrorMessage = "裁判等级不能为空")]
|
|
|
|
|
public RefereeLevel Level { get; set; }
|
|
|
|
|
[Required(ErrorMessage = "裁判证件不能为空")]
|
|
|
|
|
public string CertificateUrl { get; set; } = null!;
|
|
|
|
|
[Required(ErrorMessage = "手机号不能为空"), RegularExpression(@"^1[3-9]\d{9}$", ErrorMessage = "手机号格式不正确")]
|
|
|
|
|
public string Mobile { get; set; } = null!;
|
|
|
|
|
[Required(ErrorMessage = "验证码不能为空")]
|
|
|
|
|
public string VerificationCode { get; set; } = null!;
|
|
|
|
|
[Range(1, int.MaxValue, ErrorMessage = "至少选择一个裁判角色")]
|
|
|
|
|
public RefereeRole Roles { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class UpdateRefereeInput : SaveRefereeInput
|
|
|
|
|
{
|
|
|
|
|
[Required]
|
|
|
|
|
public long Id { get; set; }
|
|
|
|
|
public new string? VerificationCode { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class RefereeOutput
|
|
|
|
|
{
|
|
|
|
|
public long Id { get; set; }
|
2026-08-17 00:14:48 +08:00
|
|
|
public long? AppUserId { get; set; }
|
2026-08-11 23:41:18 +08:00
|
|
|
public string Name { get; set; } = null!;
|
|
|
|
|
public string Mobile { get; set; } = null!;
|
|
|
|
|
public string ProvinceCode { get; set; } = null!;
|
|
|
|
|
public string ProvinceName { get; set; } = null!;
|
|
|
|
|
public string CityCode { get; set; } = null!;
|
|
|
|
|
public string CityName { get; set; } = null!;
|
|
|
|
|
public string DistrictCode { get; set; } = null!;
|
|
|
|
|
public string DistrictName { get; set; } = null!;
|
|
|
|
|
public string RegionName { get; set; } = null!;
|
|
|
|
|
public RefereeLevel Level { get; set; }
|
|
|
|
|
public string LevelName { get; set; } = null!;
|
|
|
|
|
public string CertificateUrl { get; set; } = null!;
|
|
|
|
|
public RefereeRole Roles { get; set; }
|
|
|
|
|
public List<string> RoleNames { get; set; } = new();
|
|
|
|
|
public AuditStatus AuditStatus { get; set; }
|
|
|
|
|
public string? AuditRemark { get; set; }
|
|
|
|
|
public DateTime CreatedTime { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class AuditRefereeInput
|
|
|
|
|
{
|
|
|
|
|
[Required]
|
|
|
|
|
public long Id { get; set; }
|
|
|
|
|
public AuditStatus AuditStatus { get; set; }
|
|
|
|
|
public string? Remark { get; set; }
|
|
|
|
|
}
|