Пример #1
0
        /// <summary>
        /// 报告地理位置
        /// </summary>
        /// <param name="wxuserInfo"></param>
        /// <returns></returns>
        public bool ReportPosition(Sys.Models.WxUserInfo userInfo)
        {
            //检查输入项
            string apiUrl = System.Configuration.ConfigurationManager.AppSettings["ApiUrl"];
            string url    = string.Format("{0}/WxUserInfo/SetPosition", apiUrl);

            RequestHelper.Create(url);
            RequestHelper.WebRequest.ContentType = "application/json;charset=UTF-8";
            RequestHelper.WebRequest.Headers.Add("Accept-Encoding: gzip, deflate");
            RequestHelper.WebRequest.AutomaticDecompression = System.Net.DecompressionMethods.Deflate;

            string jsonStr = JsonHelper.ToJsonStringByNewtonsoft(userInfo);

            string result = RequestHelper.PostString(jsonStr);

            logs.Error(result);

            JObject jo = JObject.Parse(result);

            if (Convert.ToBoolean(jo["Error"].ToString()))
            {
                throw new Comm.YYException.YYException(jo["Msg"].ToString());
            }

            return(true);
        }
Пример #2
0
        public IHttpActionResult SetPosition(Sys.Models.WxUserInfo wxUserInfo)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            try
            {
                var sql = "UPDATE [WxUserInfo] SET [Latitude] = @Latitude,[Longitude] =@Longitude WHERE [OpenId]= @OpenId";

                var flag = Comm.Helper.DapperHelper.Instance.Execute(sql, new
                {
                    Latitude  = wxUserInfo.Latitude,
                    Longitude = wxUserInfo.Longitude,
                    OpenId    = wxUserInfo.OpenId
                });
                return(flag > 0 ? Ok(Comm.ResponseModel.ResponseModelBase.Success()) : Ok(Comm.ResponseModel.ResponseModelBase.SysError()));
            }
            catch (Exception ex)
            {
                logs.Error("设置位置失败", ex);
                return(BadRequest());
            }
        }
Пример #3
0
        public IHttpActionResult Edit(Sys.Models.WxUserInfo wxUserInfo)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            try
            {
                var sql    = "select count(WxInfoID) from WxUserInfo where OpenId=@openId";
                var result = Comm.Helper.DapperHelper.Instance.QueryFirst <int>(sql, new
                {
                    openId = wxUserInfo.OpenId
                });

                if (result == 0)
                {
                    //wxUserInfo.AddTime = DateTime.Now;
                    //wxUserInfo.LastLoginTime = DateTime.Now;
                    //wxUserInfo.UnFollowTime = DateTime.Now;
                    //var flag = Comm.Helper.DapperHelper.Instance.Insert(wxUserInfo);
                    return(Ok(Comm.ResponseModel.ResponseModelBase.Success()));
                }
                else
                {
                    sql = "select * from WxUserInfo where OpenId=@openId";
                    var info = Comm.Helper.DapperHelper.Instance.QueryFirst <Sys.Models.WxUserInfo>(sql, new
                    {
                        openId = wxUserInfo.OpenId
                    });

                    info.LastLoginTime = DateTime.Now;
                    info.Latitude      = wxUserInfo.Latitude;
                    info.Longitude     = wxUserInfo.Longitude;
                    info.Speed         = wxUserInfo.Speed;
                    info.Accuracy      = wxUserInfo.Accuracy;
                    var flag = Comm.Helper.DapperHelper.Instance.Update(info);
                    return(flag ? Ok(Comm.ResponseModel.ResponseModelBase.Success()) : Ok(Comm.ResponseModel.ResponseModelBase.SysError()));
                }
            }
            catch (Exception ex)
            {
                logs.Error("添加关注用户信息失败", ex);
                return(BadRequest());
            }
        }
Пример #4
0
        /// <summary>
        /// 关注用户回写数据库
        /// </summary>
        /// <param name="userInfo"></param>
        /// <returns></returns>
        public bool FollowMP(OAuthUserInfo userInfo)
        {
            //todo 用户取关检测
            //检查输入项
            string apiUrl = System.Configuration.ConfigurationManager.AppSettings["ApiUrl"];
            string url    = string.Format("{0}/WxUserInfo/Create", apiUrl);

            RequestHelper.Create(url);
            RequestHelper.WebRequest.ContentType = "application/json;charset=UTF-8";
            RequestHelper.WebRequest.Headers.Add("Accept-Encoding: gzip, deflate");
            RequestHelper.WebRequest.AutomaticDecompression = System.Net.DecompressionMethods.Deflate;

            var tmp = new Sys.Models.WxUserInfo()
            {
                City          = userInfo.city,
                Country       = userInfo.country,
                HeadImgUrl    = userInfo.headimgurl,
                LastLoginTime = DateTime.Now,
                NickName      = userInfo.nickname,
                OpenId        = userInfo.openid,
                Province      = userInfo.province,
                Sex           = userInfo.sex == 1,
                State         = 1,
            };

            string jsonStr = JsonHelper.ToJsonStringByNewtonsoft(tmp);

            string  result = RequestHelper.PostString(jsonStr);
            JObject jo     = JObject.Parse(result);

            if (Convert.ToBoolean(jo["Error"].ToString()))
            {
                throw new Comm.YYException.YYException(jo["Msg"].ToString());
            }

            return(true);
        }