using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace NPP.SmartSchedue.Api.Contracts.Services.Notification.Input;

/// <summary>
/// 批量发送邮件输入
/// </summary>
public class BatchSendEmailInput
{
    /// <summary>
    /// 接收人邮箱列表
    /// </summary>
    [Required(ErrorMessage = "接收人邮箱列表不能为空")]
    [MinLength(1, ErrorMessage = "至少需要一个接收人")]
    public List<string> Recipients { get; set; } = new List<string>();

    /// <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;
}