namespace YBEE.EQM.Application;

/// <summary>
/// 添加附件到数据行
/// </summary>
public class AddAttachmentInput : AddAttachmentInput<int> { }
/// <summary>
/// 添加附件到数据行
/// </summary>
public class AddAttachmentInput<T>
{
    /// <summary>
    /// 主键
    /// </summary>
    [Required]
    public T SourceId { get; set; }
    /// <summary>
    /// 文件ID
    /// </summary>
    [Required]
    public long FileId { get; set; }
    /// <summary>
    /// 文件名称
    /// </summary>
    [Required]
    public string FileName { get; set; }
    /// <summary>
    /// 文件扩展名
    /// </summary>
    [Required]
    public string FileExtName { get; set; }
    /// <summary>
    /// 文件大小
    /// </summary>
    public long FileSize { get; set; } = 0;

    /// <summary>
    /// 缩略图文件ID
    /// </summary>
    public long? ThumbFileId { get; set; } = 0;
}

/// <summary>
/// 从数据行中删除附件
/// </summary>
public class DeleteAttachmentInput : DeleteAttachmentInput<int> { }
/// <summary>
/// 从数据行中删除附件
/// </summary>
public class DeleteAttachmentInput<T>
{
    /// <summary>
    /// 主键
    /// </summary>
    [Required]
    public T SourceId { get; set; }
    /// <summary>
    /// 文件ID
    /// </summary>
    [Required]
    public long FileId { get; set; }
}