/// <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接口调用出错!"); } }
/// <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); }
/// <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); }