Exemple #1
0
        public virtual Result Sync(int userId, String connectType, int isSync)
        {
            Result result = new Result();

            AuthConnect connect = AuthConnectFactory.GetConnect(connectType);

            if (connect == null)
            {
                result.Add("此连接类型不存在:" + connectType);
                return(result);
            }

            UserConnect x = GetConnectInfo(userId, connect.GetType().FullName);

            if (x == null)
            {
                result.Add("对不起,您没有绑定过");
                return(result);
            }

            x.NoSync = (isSync == 0 ? 1 : 0);
            x.update();

            return(result);
        }
Exemple #2
0
        public virtual Result UnBind(int userId, String connectType)
        {
            Result result = new Result();

            User user = User.findById(userId);

            if (user == null)
            {
                result.Add("用户不存在,无法取消绑定");
                return(result);
            }

            AuthConnect connect = AuthConnectFactory.GetConnect(connectType);

            if (connect == null)
            {
                result.Add("此连接类型不存在:" + connectType);
                return(result);
            }

            UserConnect x = GetConnectInfo(userId, connect.GetType().FullName);

            if (x == null)
            {
                result.Add("对不起,您没有绑定过");
                return(result);
            }

            // 如果这是最后一个绑定,并且用户没有补充过用户名和密码,那么禁止取消绑定。
            if (strUtil.IsNullOrEmpty(user.Pwd) && isLastBind(user))
            {
                result.Add("这是您的最后一个绑定,取消之后将无法登录。请在“修改密码”页面补充密码之后,再取消绑定。");
                return(result);
            }

            int rowAffected = x.delete();

            result.Info = rowAffected;

            if (rowAffected == 1)
            {
                user.IsBind = 0;
                user.update();
            }

            return(result);
        }