/// <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;
     }
 }
Example #3
0
        /// <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);
        }