Esempio n. 1
0
        /// <summary>
        /// 获取Bestdori的账号数据(从缓存取)
        /// </summary>
        /// <param name="QQID"></param>
        public BD_User BD_GetUser_FromCache(String QQID)
        {
            BD_User   user = new BD_User();
            string    sql  = "select * from BD_User where bindQQ='" + QQID + "'";
            DataTable dt   = SqlHelper.ExecuteDataTable(sql);

            //检查行数,如果为0直接返回空
            if (dt.Rows.Count == 0)
            {
                return(null);
            }

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                user.Username        = dt.Rows[i]["username"].ToString();
                user.Password        = dt.Rows[i]["password"].ToString();
                user.FollowingCount  = int.Parse(dt.Rows[i]["followingCount"].ToString());
                user.FollowedByCount = int.Parse(dt.Rows[i]["followedByCount"].ToString());
                user.Nickname        = dt.Rows[i]["nickname"].ToString();
                user.SelfIntro       = dt.Rows[i]["selfIntro"].ToString();
                user.SocialMedia     = dt.Rows[i]["socialMedia"].ToString();
                user.FavCharacters   = dt.Rows[i]["favCharacters"].ToString();
                user.FavCards        = dt.Rows[i]["favCards"].ToString();
                user.FavBands        = dt.Rows[i]["favBands"].ToString();
                user.FavSongs        = dt.Rows[i]["favSongs"].ToString();
                user.FavCostumes     = dt.Rows[i]["favCostumes"].ToString();
                user.BindQQ          = QQID;
            }
            return(user);
        }
Esempio n. 2
0
        /// <summary>
        /// 通过绑定的QQ号来获取BD令牌(从缓存获取)
        /// </summary>
        /// <param name="bindQQ"></param>
        /// <returns></returns>
        public BD_Token BD_GetToken_FromCache(string bindQQ)
        {
            string    sql      = "select a.BD_Token,b.username from BD_Token a inner join BD_User b on a.BD_Account=b.username where b.bindQQ='" + bindQQ + "'";
            DataTable dt       = SqlHelper.ExecuteDataTable(sql);
            string    BD_Token = dt.Rows[0]["BD_Token"].ToString();
            BD_User   user     = new BD_User();

            user.BindQQ   = bindQQ;
            user.Username = dt.Rows[0]["username"].ToString();
            return(new BD_Token(BD_Token, user));
        }
Esempio n. 3
0
        /// <summary>
        /// 更新信息
        /// </summary>
        /// <param name="user"></param>
        /// <returns>-1密码错误,0更新成功,1为更新失败</returns>
        public int BD_UpdData(BD_User user)
        {
            IDictionary <string, object> parameters = new Dictionary <string, object>();

            parameters.Add("username", user.Username);
            parameters.Add("password", user.Password);
            // 请求地址
            string url = "https://bestdori.com/api/user/login";
            // 跳转入口
            string          refer    = "https://bestdori.com/profile/account?g=%2F";
            string          result   = "";
            HttpWebResponse response = Tools.HttpPost(url, parameters, refer);
            Stream          stream   = response.GetResponseStream();

            //获取响应内容
            using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
            {
                result = reader.ReadToEnd();
            }
            JObject BD_result = JObject.Parse(result);

            //判断是否登录成功
            if (BD_result["result"].ToString().Equals("True"))
            {
                //BD 登录Cookie
                string BD_Cookie = response.Cookies["token"].Value;
                string sql       = String.Format("update BD_Token set BD_Token='{0}' where BD_Account='{1}'", BD_Cookie, user.Username);
                if (SqlHelper.ExecuteNonQuery(sql) > 0)
                {
                    BD_SaveUser(new BD_Token(BD_Cookie, user));
                    return(0);
                }
                else
                {
                    return(1);
                }
            }
            else
            {
                //账号登录失败
                return(-1);
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 更新BD密码
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool BD_UpdPassword(BD_User user)
        {
            string sql = String.Format("update BD_User set password = '******' where bindQQ='{1}'", user.Password, user.BindQQ);

            return(SqlHelper.ExecuteNonQuery(sql) > 0 ? true : false);
        }