78 lines
1.8 KiB
C#
78 lines
1.8 KiB
C#
using System.ComponentModel.DataAnnotations;
|
||
|
||
namespace YD_Event.Application.Certificate.Dtos;
|
||
|
||
public class AddCertificateInput
|
||
{
|
||
/// <summary>
|
||
/// 证书名称
|
||
/// </summary>
|
||
[Required(ErrorMessage = "证书名称不能为空")]
|
||
public string Name { get; set; }
|
||
|
||
/// <summary>
|
||
/// 证书标题
|
||
/// </summary>
|
||
[Required(ErrorMessage = "证书标题不能为空")]
|
||
public string Title { get; set; }
|
||
|
||
/// <summary>
|
||
/// 证书模板内容(图片/PDF URL)
|
||
/// </summary>
|
||
[Required(ErrorMessage = "证书模板不能为空")]
|
||
public string TemplateContent { get; set; }
|
||
|
||
/// <summary>
|
||
/// 模板类型:0-图片,1-PDF
|
||
/// </summary>
|
||
public int TemplateType { get; set; }
|
||
|
||
/// <summary>
|
||
/// 模板宽度 (px)
|
||
/// </summary>
|
||
[Range(1, int.MaxValue, ErrorMessage = "宽度必须大于0")]
|
||
public int Width { get; set; }
|
||
|
||
/// <summary>
|
||
/// 模板高度 (px)
|
||
/// </summary>
|
||
[Range(1, int.MaxValue, ErrorMessage = "高度必须大于0")]
|
||
public int Height { get; set; }
|
||
|
||
/// <summary>
|
||
/// 占位符配置 (JSON)
|
||
/// </summary>
|
||
public string Placeholders { get; set; }
|
||
|
||
/// <summary>
|
||
/// 颁发机构
|
||
/// </summary>
|
||
[Required(ErrorMessage = "颁发机构不能为空")]
|
||
public string Issuer { get; set; }
|
||
|
||
/// <summary>
|
||
/// 发放规则
|
||
/// </summary>
|
||
public string IssueRule { get; set; }
|
||
|
||
/// <summary>
|
||
/// 有效期(天)
|
||
/// </summary>
|
||
public int? ValidityDays { get; set; }
|
||
|
||
/// <summary>
|
||
/// 二维码地址
|
||
/// </summary>
|
||
public string QrCodeUrl { get; set; }
|
||
|
||
/// <summary>
|
||
/// 备注
|
||
/// </summary>
|
||
public string Remark { get; set; }
|
||
|
||
/// <summary>
|
||
/// 排序
|
||
/// </summary>
|
||
public int Sort { get; set; }
|
||
}
|