/// <summary>
        /// 调用接口返回数据
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="accId"></param>
        /// <param name="start"></param>
        /// <param name="end"></param>
        /// <returns></returns>
        public string GetWeixinFeedBack(int pageIndex, string accId, string start, string end)
        {
            ProxyRequestModel.ProxyRequest request = new ProxyRequestModel.ProxyRequest();
            ProxyRequestModel.UserMessage  usrMsg  = new ProxyRequestModel.UserMessage();

            Dictionary <string, string> dic = new Dictionary <string, string>()
            {
                { "listData", "" },
                { "rowCount", "" },
                { "maxPage", "" }
            };

            usrMsg.pageIndex = pageIndex;
            usrMsg.pageSize  = 15;

            if (!string.IsNullOrEmpty(start))
            {
                usrMsg.startTime = Convert.ToDateTime(start);
            }
            if (!string.IsNullOrEmpty(end))
            {
                usrMsg.endTime = Convert.ToDateTime(end);
            }
            if (int.Parse(accId) != 0)
            {
                usrMsg.accId        = Convert.ToInt32(accId);
                request.RequestName = "getMessageByAccId";
            }
            else
            {
                usrMsg.accId        = 0;
                request.RequestName = "getMessage";
            }

            request.RequestJson = CommonLib.Helper.JsonSerializeObject(usrMsg);
            ProxyRequestModel.WeixinResponseModel response = new ProxyRequestModel.WeixinResponseModel();
            response = AuthMethod.SendRequest(request);

            if (response.Status)
            {
                OpenResponseModel.ResponseMessage responseModel =
                    CommonLib.Helper.JsonDeserializeObject <OpenResponseModel.ResponseMessage>(response.ObjectStr);

                foreach (OpenResponseModel.T_UserMessageModel item in responseModel.userMessage)
                {
                    item.CompanyName = T_AccountBLL.GetSingleCompanyName(item.accId);
                }

                dic["listData"] = CommonLib.Helper.JsonSerializeObject(responseModel.userMessage, "yyyy-MM-dd HH:mm:ss");
                dic["rowCount"] = responseModel.pageInfo.totalCount.ToString();
                dic["maxPage"]  = responseModel.pageInfo.pageCount.ToString();

                return(CommonLib.Helper.JsonSerializeObject(dic, "yyyy-MM-dd HH:mm:ss"));
            }
            else
            {
                return("API接口调用出错!");
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 生成验证信息
        /// </summary>
        /// <returns></returns>
        public static ProxyRequestModel.ProxyRequest CreateAuthCode()
        {
            var requestMd = new ProxyRequestModel.ProxyRequest {
                Timestamp = CommonLib.Helper.GetTimeStamp(), Nonce = CommonLib.Helper.GetRandomNum()
            };

            var strSign = new StringBuilder();

            strSign.Append(AuthCode);
            strSign.Append(requestMd.Timestamp);
            strSign.Append(requestMd.Nonce);
            requestMd.Signature = CommonLib.Helper.SHA1_Encrypt(strSign.ToString());

            return(requestMd);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 发送代理请求(Post)
        /// </summary>
        /// <param name="proxyRequest">请求参数</param>
        /// <param name="requestName">请求名称</param>
        /// <param name="requestJson">请求参数(Json)</param>
        /// <returns></returns>
        public static ProxyRequestModel.WeixinResponseModel SendRequest(ProxyRequestModel.ProxyRequest proxyRequest)
        {
            var requestMd = CreateAuthCode();

            requestMd.AccId       = proxyRequest.AccId;
            requestMd.RequestName = proxyRequest.RequestName;
            requestMd.RequestJson = proxyRequest.RequestJson;

            Dictionary <string, string> parameters = new Dictionary <string, string>();

            parameters.Add("signature", requestMd.Signature);
            parameters.Add("timestamp", requestMd.Timestamp);
            parameters.Add("nonce", requestMd.Nonce);
            parameters.Add("accid", requestMd.AccId.ToString());
            parameters.Add("requestname", requestMd.RequestName);
            parameters.Add("requestjson", requestMd.RequestJson);

            string strResult = string.Empty;

            strResult = CommonLib.Helper.SendHttpPost(ProxyUrl, parameters);
            var objResponse = CommonLib.Helper.JsonDeserializeObject <ProxyRequestModel.WeixinResponseModel>(strResult);

            return(objResponse);
        }