Browse Source

添加日志

master
[zhengchao] 9 years ago
parent
commit
133405966a
3 changed files with 27 additions and 7 deletions
  1. +4
    -1
      B3WeChat.Web/Pages/WeChatReceive.cs
  2. +8
    -1
      B3WeChat/Rpcs/ClientRpc.cs
  3. +15
    -5
      B3WeChat/Utils/InOutMessageUtil.cs

+ 4
- 1
B3WeChat.Web/Pages/WeChatReceive.cs View File

@ -12,6 +12,7 @@ namespace BWP.Web.Pages
{ {
class WeChatReceive : IHttpHandler class WeChatReceive : IHttpHandler
{ {
static Forks.Utils.Logger logger = new Forks.Utils.Logger("InOutMessageUtil");
string echoStr string echoStr
{ {
get get
@ -64,9 +65,11 @@ namespace BWP.Web.Pages
} }
} }
else if (result is QRCodeMessage) else if (result is QRCodeMessage)
{
{
QRCodeMessage msg = result as QRCodeMessage; QRCodeMessage msg = result as QRCodeMessage;
logger.Info("EventKey:" + msg.EventKey + ",FromUserName:" + msg.FromUserName);
UpdateQRCode(msg.EventKey, msg.FromUserName); UpdateQRCode(msg.EventKey, msg.FromUserName);
logger.Info("关联成功");
} }
} }
static void UpdateQRCode(string sceneId, string OppenId) static void UpdateQRCode(string sceneId, string OppenId)


+ 8
- 1
B3WeChat/Rpcs/ClientRpc.cs View File

@ -18,6 +18,9 @@ namespace BWP.B3WeChat.Rpcs
[Rpc] [Rpc]
public static class ClientRpc public static class ClientRpc
{ {
static Logger logger = new Logger("ClientRpc");
static string GetDeviceNumber() static string GetDeviceNumber()
{ {
var user = BLContext.User; var user = BLContext.User;
@ -62,12 +65,14 @@ namespace BWP.B3WeChat.Rpcs
{ {
string url = string.Empty; string url = string.Empty;
string customer = GetDeviceNumber(); string customer = GetDeviceNumber();
logger.Info("customer:" + customer + ",username:" + username);
int sceneId = GetSceneId(customer, username); int sceneId = GetSceneId(customer, username);
string ticket = InOutMessageUtil.GenerateEQCode(30, sceneId); string ticket = InOutMessageUtil.GenerateEQCode(30, sceneId);
url = string.Format("https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket={0}", ticket); url = string.Format("https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket={0}", ticket);
logger.Info("ticket:" + ticket + ",url:" + url);
return url; return url;
} }
static int GetSceneId(string customer, string username) static int GetSceneId(string customer, string username)
{ {
var query = new DQueryDom(new JoinAlias(typeof(QRCodeScene))); var query = new DQueryDom(new JoinAlias(typeof(QRCodeScene)));
@ -76,6 +81,7 @@ namespace BWP.B3WeChat.Rpcs
query.Where.Conditions.Add(DQCondition.EQ("UserId", username)); query.Where.Conditions.Add(DQCondition.EQ("UserId", username));
query.Range = SelectRange.Top(1); query.Range = SelectRange.Top(1);
var sceneId = query.EExecuteScalar<int?>(); var sceneId = query.EExecuteScalar<int?>();
logger.Info("sceneId:" + sceneId);
if (!sceneId.HasValue) if (!sceneId.HasValue)
{ {
using (var session = Dmo.NewSession()) using (var session = Dmo.NewSession())
@ -88,6 +94,7 @@ namespace BWP.B3WeChat.Rpcs
session.Insert(newSence); session.Insert(newSence);
session.Commit(); session.Commit();
sceneId = newSence.ID; sceneId = newSence.ID;
logger.Info("newSenceID:" + sceneId);
} }
} }
return sceneId.Value; return sceneId.Value;


+ 15
- 5
B3WeChat/Utils/InOutMessageUtil.cs View File

@ -1,5 +1,6 @@
using BWP.B3WeChat; using BWP.B3WeChat;
using BWP.B3WeChat.Entities; using BWP.B3WeChat.Entities;
using Forks.Utils;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
@ -14,6 +15,9 @@ namespace BWP.B3WeChat.Utils
{ {
public static class InOutMessageUtil public static class InOutMessageUtil
{ {
static Logger logger = new Logger("InOutMessageUtil");
static string token; static string token;
static string TOKEN static string TOKEN
@ -36,12 +40,13 @@ namespace BWP.B3WeChat.Utils
string uriStr = string.Format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}", config.AppID, config.AppSecret); string uriStr = string.Format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}", config.AppID, config.AppSecret);
WebClient client = new WebClient(); WebClient client = new WebClient();
string responseBody = string.Empty;
logger.Info("GetToken_uriStr:" + uriStr);
try try
{ {
byte[] bytes = client.DownloadData(uriStr); byte[] bytes = client.DownloadData(uriStr);
string responseBody = Encoding.UTF8.GetString(bytes);
JavaScriptSerializer jsonHelper = new JavaScriptSerializer();
responseBody = Encoding.UTF8.GetString(bytes);
JavaScriptSerializer jsonHelper = new JavaScriptSerializer(); logger.Info("GetToken_responseBody:" + responseBody);
TokenObject obj = jsonHelper.Deserialize<TokenObject>(responseBody); TokenObject obj = jsonHelper.Deserialize<TokenObject>(responseBody);
if (obj != null) if (obj != null)
{ {
@ -50,6 +55,7 @@ namespace BWP.B3WeChat.Utils
} }
catch (Exception e) catch (Exception e)
{ {
logger.Info("GetToken_ERROR:" + responseBody);
throw e; throw e;
} }
return token; return token;
@ -167,6 +173,7 @@ namespace BWP.B3WeChat.Utils
{ {
StreamReader reader = new StreamReader(request.InputStream); StreamReader reader = new StreamReader(request.InputStream);
String xmlData = reader.ReadToEnd(); String xmlData = reader.ReadToEnd();
logger.Info("GetMessage_xmlData:" + xmlData);
object obj = null; object obj = null;
MessageType type = XmlUtil.Deserialize<MessageType>(xmlData); MessageType type = XmlUtil.Deserialize<MessageType>(xmlData);
if (type.MsgType == MsgType.) if (type.MsgType == MsgType.)
@ -239,9 +246,11 @@ namespace BWP.B3WeChat.Utils
} }
}; };
string postData = jsonHelper.Serialize(body); string postData = jsonHelper.Serialize(body);
logger.Info("GenerateEQCode_body:" + body);
string data = string.Empty; string data = string.Empty;
try try
{ {
logger.Info("GenerateEQCode_uriStr:" + uriStr);
byte[] byteArray = Encoding.UTF8.GetBytes(postData); byte[] byteArray = Encoding.UTF8.GetBytes(postData);
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(new Uri(uriStr)); HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(new Uri(uriStr));
webRequest.Method = "post"; webRequest.Method = "post";
@ -251,11 +260,12 @@ namespace BWP.B3WeChat.Utils
newStream.Write(byteArray, 0, byteArray.Length); newStream.Write(byteArray, 0, byteArray.Length);
newStream.Close(); newStream.Close();
HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse(); HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
data = new System.IO.StreamReader(response.GetResponseStream(), Encoding.GetEncoding("utf-8")).ReadToEnd();
result = jsonHelper.Deserialize<QRCodeResult>(data);
data = new System.IO.StreamReader(response.GetResponseStream(), Encoding.GetEncoding("utf-8")).ReadToEnd();logger.Info("GenerateEQCode_data:" + data);
result = jsonHelper.Deserialize<QRCodeResult>(data);
} }
catch (Exception e) catch (Exception e)
{ {
logger.Info("GenerateEQCode_ERROR:" + data);
throw e; throw e;
} }
if (result != null && !string.IsNullOrEmpty(result.ticket)) if (result != null && !string.IsNullOrEmpty(result.ticket))


Loading…
Cancel
Save