using IRaCIS.Core.Domain.Share; namespace IRaCIS.Core.Domain.Models; [Comment("后台 - 系统签署文档")] [Table("SystemDocument")] public class SystemDocument : BaseFullDeleteAuditEntity { #region 导航属性 [JsonIgnore] public List SystemDocConfirmedUserList { get; set; } [JsonIgnore] public List SystemDocumentAttachmentList { get; set; } [JsonIgnore] public List NeedConfirmedUserTypeList { get; set; } [JsonIgnore] [ForeignKey("FileTypeId")] public Dictionary FileType { get; set; } #endregion public Guid FileTypeId { get; set; } public string Name { get; set; } = string.Empty; public int SignViewMinimumMinutes { get; set; } [StringLength(1000)] public string Path { get; set; } = string.Empty; public DocUserSignType DocUserSignType { get; set; } /// /// 现有员工培训天数 /// public int? CurrentStaffTrainDays { get; set; } /// /// 新员工培训天数 /// public int? NewStaffTrainDays { get; set; } /// /// 是否发布 /// public bool IsPublish { get; set; } = true; } [Comment("后台 - 系统签署文档附件")] [Table("SystemDocumentAttachment")] public class SystemDocumentAttachment : BaseFullAuditEntity { [JsonIgnore] [ForeignKey("SystemDocumentId")] public SystemDocument SystemDocument { get; set; } /// /// 系统文档Id /// public Guid SystemDocumentId { get; set; } public string Name { get; set; } = string.Empty; /// /// 文件名称 /// public string FileName { get; set; } = string.Empty; /// /// 是否下线 /// public bool OffLine { get; set; } /// /// 文件路径 /// [StringLength(1000)] public string FilePath { get; set; } = string.Empty; /// /// 文件大小 /// public decimal? FileSize { get; set; } /// /// 文件类型 /// public string FileFormat { get; set; } = string.Empty; } public enum DocUserSignType { //默认 内部 外部都需要签署 InnerAndOuter=0, //仅仅内部需要签署 OnlyInner=1, }