using Newtonsoft.Json; using ServerCore; using ServerBase; namespace ServerCommon; public class QuestMailLogInfo : ILogInvoker.IInfo { [JsonProperty("quest_id")] public UInt32 m_quest_id { get; private set; } = 0; [JsonProperty("quest_revision")] public UInt32 m_quest_revision { get; private set; } = 0; [JsonProperty("is_read")] public Int32 m_is_read { get; private set; } = 0; [JsonProperty("create_time")] public DateTime m_create_time { get; private set; } = DateTimeHelper.MaxTime; [JsonProperty("expire_time")] public DateTime m_expire_time { get; private set; } = DateTimeHelper.MaxTime; [JsonProperty("log_type")] public QuestMailLogType m_log_type { get; private set; } = QuestMailLogType.None; public QuestMailLogInfo(ILogInvoker parent, QuestMailAttribute attribute, QuestMailLogType type) : base(parent) { m_quest_id = attribute.QuestId; m_quest_revision = attribute.QuestRevision; m_is_read = attribute.IsRead; m_create_time = attribute.CreateTime; m_expire_time = attribute.ExpireTime??DateTimeHelper.MaxTime; m_log_type = type; } } public enum QuestMailLogType { None = 0, Create = 1, Delete = 2, }