/// <summary> /// 转换为实体 /// </summary> /// <param name="invitationSettings"></param> /// <returns></returns> public NoticeSettings AsMessagesSettings(out InvitationSettings invitationSettings) { NoticeSettings noticeSettings = new NoticeSettings(); noticeSettings.NoticeTypeSettingses = NoticeTypeSettings; invitationSettings = new InvitationSettings(); invitationSettings.InvitationTypeSettingses = InvitationTypeSettings; return noticeSettings; }
/// <summary> /// 构造函数 /// </summary> /// <param name="noticeSettings"></param> /// <param name="invitationSettings"></param> public MessagesSettingEditModel(NoticeSettings noticeSettings, InvitationSettings invitationSettings) { if (noticeSettings != null) { NoticeTypeSettings = noticeSettings.NoticeTypeSettingses; } if (invitationSettings!=null) { InvitationTypeSettings = invitationSettings.InvitationTypeSettingses; } }
/// <summary> /// 用户对某类型是否允许发送请求 /// </summary> /// <param name="userId">用户Id</param> /// <param name="invitationTypeKey">请求类型Key</param> /// <returns></returns> public bool IsAllowedSend(long userId, string invitationTypeKey) { Dictionary <string, bool> userInvitationSettingses = GetUserInvitationSettingses(userId); if (userInvitationSettingses.ContainsKey(invitationTypeKey)) { return(userInvitationSettingses[invitationTypeKey]); } else { ISettingsManager <InvitationSettings> invitationSettingsManager = DIContainer.Resolve <ISettingsManager <InvitationSettings> >(); InvitationSettings settings = invitationSettingsManager.Get(); if (settings.InvitationTypeSettingses.Any(n => n.TypeKey == invitationTypeKey)) { return(settings.InvitationTypeSettingses.Single(n => n.TypeKey == invitationTypeKey).IsAllow); } } return(false); }