53 lines
1.4 KiB
C#
53 lines
1.4 KiB
C#
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
namespace NPP.SmartSchedue.Api.Contracts.Services.Notification.Input;
|
|
|
|
/// <summary>
|
|
/// 个性化批量发送邮件输入
|
|
/// </summary>
|
|
public class BatchSendPersonalizedEmailInput
|
|
{
|
|
/// <summary>
|
|
/// 邮件项列表
|
|
/// </summary>
|
|
[Required(ErrorMessage = "邮件项列表不能为空")]
|
|
[MinLength(1, ErrorMessage = "至少需要一个邮件项")]
|
|
public List<EmailItem> EmailItems { get; set; } = new List<EmailItem>();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 邮件项
|
|
/// </summary>
|
|
public class EmailItem
|
|
{
|
|
/// <summary>
|
|
/// 接收人邮箱
|
|
/// </summary>
|
|
[Required(ErrorMessage = "接收人邮箱不能为空")]
|
|
[EmailAddress(ErrorMessage = "邮箱地址格式无效")]
|
|
public string RecipientEmail { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// 邮件主题
|
|
/// </summary>
|
|
[Required(ErrorMessage = "邮件主题不能为空")]
|
|
[MaxLength(500, ErrorMessage = "邮件主题长度不能超过500个字符")]
|
|
public string Subject { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// 邮件内容
|
|
/// </summary>
|
|
[Required(ErrorMessage = "邮件内容不能为空")]
|
|
public string Content { get; set; } = "";
|
|
|
|
/// <summary>
|
|
/// 是否HTML格式
|
|
/// </summary>
|
|
public bool IsHtml { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// 附件文件路径列表
|
|
/// </summary>
|
|
public List<string>? Attachments { get; set; }
|
|
} |