Files
irc-netcore-api/IRaCIS.Core.Domain/Common/EmailNoticeConfig.cs
T
hang ed8f24a3ad
continuous-integration/drone/push Build is passing
修改系统邮件配置
2024-11-14 13:27:09 +08:00

153 lines
3.6 KiB
C#

using IRaCIS.Core.Domain.Share;
namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - 邮件配置表表(需要同步)")]
[Table("EmailNoticeConfig")]
public class EmailNoticeConfig : BaseFullDeleteAuditEntity
{
#region 导航属性
[JsonIgnore]
public List<TrialEmailNoticeConfig> TrialEmailNoticeConfigList { get; set; }
[JsonIgnore]
public List<EmailNoticeUserType> EmailNoticeUserTypeList { get; set; } = new List<EmailNoticeUserType>();
#endregion
public string AttachCNPath { get; set; } = null!;
public string AttachName { get; set; } = null!;
public string AttachNameCN { get; set; } = null!;
public string AttachPath { get; set; } = null!;
[Comment("业务级别")]
public BusinessLevel BusinessLevelEnum { get; set; }
[Comment("业务模块")]
public BusinessModule BusinessModuleEnum { get; set; }
[Comment("业务场景")]
public EmailBusinessScenario BusinessScenarioEnum { get; set; }
public string Code { get; set; } = null!;
[Comment("标准枚举")]
public CriterionType? CriterionTypeEnum { get; set; }
public string Description { get; set; } = null!;
[Comment("发送周期")]
public string EmailCron { get; set; } = null!;
[Comment("邮件延时秒数,比如一个事件触发,延迟多少s后才发邮件")]
public int? EmailDelaySeconds { get; set; } = null!;
[MaxLength]
public string EmailHtmlContent { get; set; } = null!;
[MaxLength]
public string EmailHtmlContentCN { get; set; } = null!;
public string EmailTopic { get; set; } = null!;
public string EmailTopicCN { get; set; } = null!;
[Comment("加急枚举")]
public int EmailUrgentEnum { get; set; }
[Comment("是否自动发送")]
public bool IsAutoSend { get; set; }
[Comment("是否区分标准")]
public bool IsDistinguishCriteria { get; set; }
public bool IsEnable { get; set; }
[Comment("是否需要回执")]
public bool IsReturnRequired { get; set; }
public SysEmailLevel SystemLevel { get; set; }
}
[Comment("后台 - 邮件配置用户类型表(需要同步)")]
[Table("EmailNoticeUserType")]
public class EmailNoticeUserType : Entity
{
[JsonIgnore]
public EmailNoticeConfig EmailNoticeConfig { get; set; }
public Guid EmailNoticeConfigId { get; set; }
public UserTypeEnum UserType { get; set; }
public EmailUserType EmailUserType { get; set; }
}
public enum BusinessLevel
{
Default=0,
System=1,
//需要手动添加到项目的邮件
Trial=2,
//项目默认发送的邮件,不需要手动添加到项目
TrialDefault=3
}
public enum BusinessModule
{
/// <summary>
/// 影像质控
/// </summary>
ImageQualityControl = 1,
/// <summary>
/// 影像阅片
/// </summary>
ImageReading = 2,
/// <summary>
/// 系统登录
/// </summary>
Login = 4,
/// <summary>
/// 后台邮件
/// </summary>
BackstageEmail = 5,
/// <summary>
/// 账号信息
/// </summary>
UserAccount = 6,
/// <summary>
/// 中心调研
/// </summary>
SiteSurvey = 7,
/// <summary>
/// 阅片人管理
/// </summary>
ReviewerManagement = 8,
/// <summary>
/// 问题反馈
/// </summary>
UsersSuggestions = 9,
/// <summary>
/// 入组确认
/// </summary>
EligibilityVerification = 10,
/// <summary>
/// PD确认
/// </summary>
PDVerification = 11,
/// <summary>
/// 医学反馈
/// </summary>
MedicalQC = 13,
/// <summary>
/// 入组/PD确认
/// </summary>
Eligibility_PDVerification = 12,
}