/// <summary>
        /// 对用户发送应用邀请
        /// </summary>
        /// <param name="userAppInviteInfo"></param>
        /// <returns></returns>
        public static int SendApplicationInvite(UserApplicationInviteInfo userAppInviteInfo)
        {
            int inviteId = Data.ManyouApplications.SendApplicationInvite(userAppInviteInfo);

            if (inviteId > 0)
            {
                int olId = OnlineUsers.GetOlidByUid(userAppInviteInfo.ToUid);
                if (olId > 0) //更新在线表信息
                {
                    OnlineUsers.UpdateNewApplicationRequest(olId, ManyouApplications.GetApplicationInviteCount(userAppInviteInfo.ToUid));
                }
            }
            return(inviteId);
        }
示例#2
0
文件: Notices.cs 项目: xiongeee/BBX
        public static int CreateNoticeInfo(NoticeInfo noticeinfo)
        {
            if (noticeinfo.Posterid == noticeinfo.Uid)
            {
                return(0);
            }
            int num = Discuz.Data.Notices.CreateNoticeInfo(noticeinfo);

            if (num > 0)
            {
                int olidByUid = OnlineUsers.GetOlidByUid(noticeinfo.Uid);
                if (olidByUid > 0)
                {
                    OnlineUsers.UpdateNewNotices(olidByUid);
                }
            }
            return(num);
        }
示例#3
0
        /// <summary>
        /// 添加指定的通知信息
        /// </summary>
        /// <param name="noticeinfo">要添加的通知信息</param>
        /// <returns></returns>
        public static int CreateNoticeInfo(NoticeInfo noticeinfo)
        {
#if !DEBUG
            if (noticeinfo.Posterid == noticeinfo.Uid)
            {
                return(0);
            }
#endif
            int noticeId = Discuz.Data.Notices.CreateNoticeInfo(noticeinfo);
            if (noticeId > 0)
            {
                int olid = OnlineUsers.GetOlidByUid(noticeinfo.Uid);
                if (olid > 0)
                {
                    OnlineUsers.UpdateNewNotices(olid);
                }
            }
            return(noticeId);
        }
        /// <summary>
        /// 用户增加新应用
        /// </summary>
        /// <param name="userAppInfo"></param>
        /// <returns></returns>
        public static int AddUserApplication(UserApplicationInfo userAppInfo)
        {
            if (userAppInfo == null || userAppInfo.Uid < 1 || userAppInfo.AppId < 1)
            {
                return(-1);
            }

            int result = Data.ManyouApplications.AddUserApplication(userAppInfo);

            DeleteApplicationInviteByAppId(userAppInfo.Uid, userAppInfo.AppId);

            int olId = OnlineUsers.GetOlidByUid(userAppInfo.Uid);

            if (olId > 0) //更新在线表信息
            {
                OnlineUsers.UpdateNewApplicationRequest(olId, ManyouApplications.GetApplicationInviteCount(userAppInfo.Uid));
            }

            return(result);
        }
示例#5
0
        /// <summary>
        /// 创建好友请求信息
        /// </summary>
        /// <param name="friendshipRequestInfo">好友请求信息</param>
        /// <param name="userGroupInfo">当前用户用户组信息</param>
        /// <returns></returns>
        public static CreateNewFriendshipRequestEnum CreateNewFriendshipRequest(FriendshipRequestInfo friendshipRequestInfo, UserGroupInfo userGroupInfo)
        {
            if (friendshipRequestInfo.FromUid <= 0 || friendshipRequestInfo.ToUid <= 0 || friendshipRequestInfo.FromUid == friendshipRequestInfo.ToUid)
            {
                return(CreateNewFriendshipRequestEnum.MessageError);
            }
            //如果用户之间已经是好友或者用户之间已经有一方请求的
            IsFriendshipExistEnum existResult = IsFriendshipExist(friendshipRequestInfo.FromUid, friendshipRequestInfo.ToUid);

            if (existResult == IsFriendshipExistEnum.Exist)
            {
                return(CreateNewFriendshipRequestEnum.FriendshipAlreadyExists);
            }

            if (existResult == IsFriendshipExistEnum.RequestExist)
            {
                return(CreateNewFriendshipRequestEnum.RequestAlreadyExists);
            }

            if (GetUserFriendsCount(friendshipRequestInfo.FromUid) >= userGroupInfo.MaxFriendsCount)
            {
                return(CreateNewFriendshipRequestEnum.UserFriendshipOverflow);
            }

            if (Data.Friendship.CreateNewFriendshipRequest(friendshipRequestInfo) == (int)CreateNewFriendshipRequestEnum.Success)
            {
                int olId = OnlineUsers.GetOlidByUid(friendshipRequestInfo.ToUid);

                if (olId > 0)//如果被请求用户在线,则更新其在线状态
                {
                    OnlineUsers.UpdateNewFriendsRequest(olId, 1);
                }

                return(CreateNewFriendshipRequestEnum.Success);
            }

            return(CreateNewFriendshipRequestEnum.MessageError);
        }