using SqlSugar;
using System.ComponentModel;
using XF.Domain.Repository;

namespace Hotline.File
{
	[Description("附件")]
	public class File : FullStateEntity
	{
		/// <summary>
		/// 附件全称
		/// </summary>
		[SugarColumn(ColumnDescription = "附件全称")]
		public string? FileName { get; set; }

		/// <summary>
		/// 附件名称
		/// </summary>
		[SugarColumn(ColumnDescription = "附件名称")]
		public string? Name { get; set; }

		/// <summary>
		/// 附件KEY
		/// 业务数据关联Id
		/// </summary>
		[SugarColumn(ColumnDescription = "附件Key")]
		public string Key { get; set; }

		/// <summary>
		/// 附件流程KEY
		/// </summary>
		[SugarColumn(ColumnDescription = "附件流程KEY")]
		public string? FlowKey { get; set; }

		/// <summary>
		/// 附件类型
		/// </summary>
		[SugarColumn(ColumnDescription = "附件类型")]
		public string? Type { get; set; }

		/// <summary>
		/// 部门ID
		/// </summary>
		[SugarColumn(ColumnDescription = "部门ID")]
		public string? OrgId { get; set; }

		/// <summary>
		/// 部门名称
		/// </summary>
		[SugarColumn(ColumnDescription = "部门名称")]
		public string? OrgName { get; set; }

		/// <summary>
		/// 上传人Id
		/// </summary>
		[SugarColumn(ColumnDescription = "上传人Id")]
		public string? UserId { get; set; }

		/// <summary>
		/// 上传人名称
		/// </summary>
		[SugarColumn(ColumnDescription = "上传人名称")]
		public string? UserName { get; set; }

		/// <summary>
		/// 是否公开
		/// </summary>
		[SugarColumn(ColumnDescription = "是否公开   0 公开  1 不公开")]
		public int? Publicity { get; set; }

		/// <summary>
		/// 附件分类
		/// </summary>
		[SugarColumn(ColumnDescription = "附件分类")]
		public string? Classify { get; set; }

		/// <summary>
		/// 附件
		/// </summary>
		[SugarColumn(ColumnDescription = "附件")]
		public string? Additions { get; set; }

		/// <summary>
		/// 附件路径
		/// </summary>
		[SugarColumn(ColumnDescription = "附件路径")]
		public string? Path { get; set; }

		/// <summary>
		/// 完整附件路径
		/// </summary>
		[SugarColumn(ColumnDescription = "完整附件路径", ColumnDataType = "varchar(500)")]
		public string? AllPath { get; set; }

		/// <summary>
		/// 时长(秒)
		/// </summary>
		[SugarColumn(ColumnDescription ="文件时长(秒)")]
		public long? Duration { get; set; }
	}
}
