Beispiel #1
0
        /// <summary>
        /// read yonghu info
        /// </summary>
        /// <param name="cmd"></param>
        /// <returns></returns>
        Eyousoft_yhq.Model.MWeiXinYongHuInfo ReadYongHuInfo(DbCommand cmd)
        {
            Eyousoft_yhq.Model.MWeiXinYongHuInfo info = null;
            using (var rdr = DbHelper.ExecuteReader(cmd, _db))
            {
                if (rdr.Read())
                {
                    info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();

                    info.city           = rdr["city"].ToString();
                    info.country        = rdr["country"].ToString();
                    info.createtime     = rdr.GetDateTime(rdr.GetOrdinal("createtime"));
                    info.headimgurl     = rdr["headimgurl"].ToString();
                    info.language       = rdr["language"].ToString();
                    info.latesttime     = rdr.GetDateTime(rdr.GetOrdinal("latesttime"));
                    info.nickname       = rdr["nickname"].ToString();
                    info.openid         = rdr["openid"].ToString();
                    info.province       = rdr["province"].ToString();
                    info.sex            = rdr["sex"].ToString();
                    info.subscribe      = rdr["subscribe"].ToString();
                    info.subscribe_time = rdr["subscribe_time"].ToString();
                    info.unionid        = rdr["unionid"].ToString();
                    info.YongHuId       = rdr["YongHuId"].ToString();
                    info.LeiXing        = rdr.GetInt32(rdr.GetOrdinal("LeiXing"));
                    info.HuiYuanId      = rdr["HuiYuanId"].ToString().Trim();
                    info.BangDingTime   = rdr.GetDateTime(rdr.GetOrdinal("BangDingTime"));
                }
            }

            return(info);
        }
Beispiel #2
0
        /// <summary>
        /// 关注,取消关注,返回1成功,其它失败
        /// </summary>
        /// <param name="openid">openid</param>
        /// <param name="subscribe">1关注 0取消关注</param>
        /// <returns></returns>
        public int GuanZhu(string openid, string subscribe)
        {
            if (string.IsNullOrEmpty(openid) || string.IsNullOrEmpty(subscribe))
            {
                return(0);
            }
            if (subscribe != "0" && subscribe != "1")
            {
                return(0);
            }

            var info = GetInfo2(openid);

            if (info == null)
            {
                info          = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();
                info.YongHuId = Guid.NewGuid().ToString();
                info.openid   = openid;
            }

            info.subscribe  = subscribe;
            info.createtime = info.latesttime = DateTime.Now;

            var dalRetCode = dal.YongHu_CU(info);

            return(dalRetCode);
        }
Beispiel #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string weixin_appid = "";
            string weixin_secret = "";
            weixin_appid = Utils.GetConfigString("", "YHQAppId").Trim();
            weixin_secret = Utils.GetConfigString("", "YHQAppSecret").Trim();

            if (Utils.GetQueryStringValue("sync") != "1") Utils.RCWE("");

            IMpClient mpClient = new MpClient();
            AccessTokenGetRequest request = new AccessTokenGetRequest()
            {
                AppIdInfo = new AppIdInfo() { AppID = weixin_appid, AppSecret = weixin_secret }
            };

            AccessTokenGetResponse response = mpClient.Execute(request);
            if (response.IsError)
            {
                Utils.RCWE("获取令牌环失败..");
            }

            GetAttentionsRequest request2 = new GetAttentionsRequest()
            {
                AccessToken = response.AccessToken.AccessToken
            };

            var response2 = mpClient.Execute(request2);
            if (response2.IsError)
            {
                Utils.RCWE("获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg);
            }

            foreach (var item in response2.Attentions.data.openid)
            {
                var info1 = Eyousoft_yhq.Web.BsendMsg.WeiXin.GetUserInfo(item);

                var info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();
                info.city = info1.City;
                info.country = info1.Country;
                info.createtime = DateTime.Now;
                info.headimgurl = info1.HeadImgUrl;
                info.language = info1.Language;
                info.latesttime = DateTime.Now;
                info.nickname = info1.NickName;
                info.openid = info1.OpenId;
                info.province = info1.Province;
                info.sex = info1.Sex;
                info.subscribe = info1.SubScribe;
                info.subscribe_time = info1.SubscribeTime;
                info.unionid = string.Empty;
                info.YongHuId = Guid.NewGuid().ToString();

                new Eyousoft_yhq.BLL.BWeiXin().YongHu_C(info);
            }

            Utils.RCWE("获取关注者列表成功");
        }
Beispiel #4
0
        void YongHu_U()
        {
            var info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();

            info.YongHuId  = "3fd570da-e677-4287-8b51-0b81db3916ae";
            info.openid    = "A";
            info.subscribe = "1";

            int bllRetCode = new Eyousoft_yhq.BLL.BWeiXin().YongHu_U(info);

            Utils.RCWE(bllRetCode.ToString());
        }
Beispiel #5
0
        void YongHu_U()
        {
            var info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();

            info.YongHuId = "3fd570da-e677-4287-8b51-0b81db3916ae";
            info.openid = "A";
            info.subscribe = "1";

            int bllRetCode=new Eyousoft_yhq.BLL.BWeiXin().YongHu_U(info);

            Utils.RCWE(bllRetCode.ToString());
        }
Beispiel #6
0
        /// <summary>
        /// 微信用户修改,返回1成功,其它失败
        /// </summary>
        /// <param name="info">实体</param>
        /// <returns></returns>
        public int YongHu_U(Eyousoft_yhq.Model.MWeiXinYongHuInfo info)
        {
            if (info == null || string.IsNullOrEmpty(info.openid) || string.IsNullOrEmpty(info.YongHuId))
            {
                return(0);
            }

            info.latesttime = DateTime.Now;

            int dalRetCode = dal.YongHu_CU(info);

            return(dalRetCode);
        }
Beispiel #7
0
        /// <summary>
        /// 微信用户新增,返回1成功,其它失败
        /// </summary>
        /// <param name="info">实体</param>
        /// <returns></returns>
        public int YongHu_C(Eyousoft_yhq.Model.MWeiXinYongHuInfo info)
        {
            if (info == null || string.IsNullOrEmpty(info.openid))
            {
                return(0);
            }

            info.YongHuId   = Guid.NewGuid().ToString();
            info.createtime = info.latesttime = DateTime.Now;

            int dalRetCode = dal.YongHu_CU(info);

            return(dalRetCode);
        }
Beispiel #8
0
        /// <summary>
        /// 微信用户新增修改,返回1成功,其它失败
        /// </summary>
        /// <param name="info">实体</param>
        /// <returns></returns>
        public int YongHu_CU(Eyousoft_yhq.Model.MWeiXinYongHuInfo info)
        {
            var cmd = _db.GetStoredProcCommand("proc_WeiXin_YongHu_CU");

            _db.AddInParameter(cmd, "@YongHuId", DbType.AnsiStringFixedLength, info.YongHuId);
            _db.AddInParameter(cmd, "@subscribe", DbType.String, info.subscribe);
            _db.AddInParameter(cmd, "@openid", DbType.String, info.openid);
            _db.AddInParameter(cmd, "@nickname", DbType.String, info.nickname);
            _db.AddInParameter(cmd, "@sex", DbType.String, info.sex);
            _db.AddInParameter(cmd, "@city", DbType.String, info.city);
            _db.AddInParameter(cmd, "@country", DbType.String, info.country);
            _db.AddInParameter(cmd, "@province", DbType.String, info.province);
            _db.AddInParameter(cmd, "@language", DbType.String, info.language);
            _db.AddInParameter(cmd, "@headimgurl", DbType.String, info.headimgurl);
            _db.AddInParameter(cmd, "@subscribe_time", DbType.String, info.subscribe_time);
            _db.AddInParameter(cmd, "@unionid", DbType.String, info.unionid);
            _db.AddInParameter(cmd, "@createtime", DbType.DateTime, info.createtime);
            _db.AddInParameter(cmd, "@latesttime", DbType.DateTime, info.latesttime);
            _db.AddOutParameter(cmd, "@RetCode", DbType.Int32, 4);
            _db.AddInParameter(cmd, "@LeiXing", DbType.Int32, info.LeiXing);

            int sqlExceptionCode = 0;

            try
            {
                DbHelper.RunProcedure(cmd, _db);
            }
            catch (System.Data.SqlClient.SqlException e)
            {
                sqlExceptionCode = 0 - e.Number;
            }

            if (sqlExceptionCode < 0)
            {
                return(sqlExceptionCode);
            }

            return(Convert.ToInt32(_db.GetParameterValue(cmd, "RetCode")));
        }
Beispiel #9
0
        /// <summary>
        /// handler oauth2 snsapi_userinfo
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        Eyousoft_yhq.Model.MWeiXinYongHuInfo handler_oauth2_snsapi_userinfo(weixin_oauth2_snsapi_userinfo info)
        {
            var info1 = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();

            info1.city           = info.city;
            info1.country        = info.country;
            info1.createtime     = DateTime.Now;
            info1.headimgurl     = info.headimgurl;
            info1.language       = "zh_CN";
            info1.latesttime     = DateTime.Now;
            info1.nickname       = info.nickname;
            info1.openid         = info.openid;
            info1.province       = info.province;
            info1.sex            = info.sex;
            info1.subscribe      = "0";
            info1.subscribe_time = "";
            info1.unionid        = string.Empty;
            info1.YongHuId       = Guid.NewGuid().ToString();
            info1.LeiXing        = 1;

            new Eyousoft_yhq.BLL.BWeiXin().YongHu_C(info1);

            return(info1);
        }
Beispiel #10
0
        /// <summary>
        /// 关注,取消关注,返回1成功,其它失败
        /// </summary>
        /// <param name="openid">openid</param>
        /// <param name="subscribe">1关注 0取消关注</param>
        /// <returns></returns>
        public int GuanZhu(string openid, string subscribe)
        {
            if (string.IsNullOrEmpty(openid) || string.IsNullOrEmpty(subscribe)) return 0;
            if (subscribe != "0" && subscribe != "1") return 0;

            var info = GetInfo2(openid);

            if (info == null)
            {
                info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();
                info.YongHuId = Guid.NewGuid().ToString();
                info.openid = openid;
            }

            info.subscribe = subscribe;
            info.createtime = info.latesttime = DateTime.Now;

            var dalRetCode = dal.YongHu_CU(info);

            return dalRetCode;
        }
Beispiel #11
0
        /// <summary>
        /// handler oauth2 snsapi_userinfo
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        Eyousoft_yhq.Model.MWeiXinYongHuInfo handler_oauth2_snsapi_userinfo(weixin_oauth2_snsapi_userinfo info)
        {
            var info1 = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();

            info1.city = info.city;
            info1.country = info.country;
            info1.createtime = DateTime.Now;
            info1.headimgurl = info.headimgurl;
            info1.language = "zh_CN";
            info1.latesttime = DateTime.Now;
            info1.nickname = info.nickname;
            info1.openid = info.openid;
            info1.province = info.province;
            info1.sex = info.sex;
            info1.subscribe = "0";
            info1.subscribe_time = "";
            info1.unionid = string.Empty;
            info1.YongHuId = Guid.NewGuid().ToString();
            info1.LeiXing = 1;

            new Eyousoft_yhq.BLL.BWeiXin().YongHu_C(info1);

            return info1;
        }
Beispiel #12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string weixin_appid  = "";
            string weixin_secret = "";

            weixin_appid  = Utils.GetConfigString("", "YHQAppId").Trim();
            weixin_secret = Utils.GetConfigString("", "YHQAppSecret").Trim();

            if (Utils.GetQueryStringValue("sync") != "1")
            {
                Utils.RCWE("");
            }

            IMpClient             mpClient = new MpClient();
            AccessTokenGetRequest request  = new AccessTokenGetRequest()
            {
                AppIdInfo = new AppIdInfo()
                {
                    AppID = weixin_appid, AppSecret = weixin_secret
                }
            };

            AccessTokenGetResponse response = mpClient.Execute(request);

            if (response.IsError)
            {
                Utils.RCWE("获取令牌环失败..");
            }

            GetAttentionsRequest request2 = new GetAttentionsRequest()
            {
                AccessToken = response.AccessToken.AccessToken
            };

            var response2 = mpClient.Execute(request2);

            if (response2.IsError)
            {
                Utils.RCWE("获取关注者列表失败,错误信息为:" + response2.ErrInfo.ErrCode + "-" + response2.ErrInfo.ErrMsg);
            }

            foreach (var item in response2.Attentions.data.openid)
            {
                var info1 = Eyousoft_yhq.Web.BsendMsg.WeiXin.GetUserInfo(item);

                var info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();
                info.city           = info1.City;
                info.country        = info1.Country;
                info.createtime     = DateTime.Now;
                info.headimgurl     = info1.HeadImgUrl;
                info.language       = info1.Language;
                info.latesttime     = DateTime.Now;
                info.nickname       = info1.NickName;
                info.openid         = info1.OpenId;
                info.province       = info1.Province;
                info.sex            = info1.Sex;
                info.subscribe      = info1.SubScribe;
                info.subscribe_time = info1.SubscribeTime;
                info.unionid        = string.Empty;
                info.YongHuId       = Guid.NewGuid().ToString();

                new Eyousoft_yhq.BLL.BWeiXin().YongHu_C(info);
            }

            Utils.RCWE("获取关注者列表成功");
        }
Beispiel #13
0
        /// <summary>
        /// read yonghu info
        /// </summary>
        /// <param name="cmd"></param>
        /// <returns></returns>
        Eyousoft_yhq.Model.MWeiXinYongHuInfo ReadYongHuInfo(DbCommand cmd)
        {
            Eyousoft_yhq.Model.MWeiXinYongHuInfo info = null;
            using (var rdr = DbHelper.ExecuteReader(cmd, _db))
            {
                if (rdr.Read())
                {
                    info = new Eyousoft_yhq.Model.MWeiXinYongHuInfo();

                    info.city = rdr["city"].ToString();
                    info.country = rdr["country"].ToString();
                    info.createtime = rdr.GetDateTime(rdr.GetOrdinal("createtime"));
                    info.headimgurl = rdr["headimgurl"].ToString();
                    info.language = rdr["language"].ToString();
                    info.latesttime = rdr.GetDateTime(rdr.GetOrdinal("latesttime"));
                    info.nickname = rdr["nickname"].ToString();
                    info.openid = rdr["openid"].ToString();
                    info.province = rdr["province"].ToString();
                    info.sex = rdr["sex"].ToString();
                    info.subscribe = rdr["subscribe"].ToString();
                    info.subscribe_time = rdr["subscribe_time"].ToString();
                    info.unionid = rdr["unionid"].ToString();
                    info.YongHuId = rdr["YongHuId"].ToString();
                    info.LeiXing = rdr.GetInt32(rdr.GetOrdinal("LeiXing"));
                    info.HuiYuanId = rdr["HuiYuanId"].ToString().Trim();
                    info.BangDingTime = rdr.GetDateTime(rdr.GetOrdinal("BangDingTime"));
                }
            }

            return info;
        }