refundpush.cs 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. using BizCom;
  2. using System;
  3. using System.Text;
  4. using System.Web;
  5. using System.Web.SessionState;
  6. namespace SiteCore.Handler
  7. {
  8. public class refundpush : BaseHandler, IHttpHandler, IRequiresSessionState
  9. {
  10. //淘宝文档: https://open.taobao.com/tmc.htm?docId=101&docType=9
  11. HttpContext con = null;
  12. public static object pushObj = new object();
  13. public void ProcessRequest(HttpContext context)
  14. {
  15. con = context;
  16. //string fstr = con.Request.Form.ToString();
  17. string fstr = "";
  18. string fstr2 = "";
  19. try
  20. {
  21. if (con.Request.TotalBytes > 0)
  22. {
  23. byte[] input = con.Request.BinaryRead(con.Request.TotalBytes);
  24. fstr = Encoding.UTF8.GetString(input);
  25. fstr2 = con.Request.QueryString.ToString();
  26. string queryTag = Convert.ToString(con.Request.QueryString["tag"]);
  27. //if (queryTag == "create")
  28. //{
  29. // try
  30. // {
  31. // tmcHelper.Api_TmcTradeMsg_Create(fstr);
  32. // string sql = string.Format("insert into s_taobaotmc3(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;",
  33. // con.Request.QueryString["tag"], fstr2, fstr, "");
  34. // XLog.ExecuteNonQuery(sql);
  35. // }
  36. // catch(Exception ex)
  37. // {
  38. // string sql = string.Format("insert into s_taobaotmc2(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;",
  39. // con.Request.QueryString["tag"], fstr2, fstr, "");
  40. // XLog.ExecuteNonQuery(sql);
  41. // }
  42. //}
  43. //else
  44. //{
  45. string sql = string.Format("insert into S_RefundTmc(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;" +
  46. "insert into s_taobaotmc3(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;",
  47. queryTag, fstr2, fstr, "");
  48. XLog.ExecuteNonQuery(sql);
  49. refundTmcHelper.Api_TmcRefundMsg(fstr);
  50. //}
  51. //lock (pushObj)
  52. //{
  53. // tmcHelper.Api_TmcTradeMsg(fstr);
  54. //}
  55. StringBuilder str = new StringBuilder();
  56. str.Append("{");
  57. str.Append("\"success\":true,");
  58. str.AppendFormat("\"timestamp\":{0},", taobaoHelper.DateTimeToUnixTime(DateTime.Now));
  59. str.AppendFormat("\"code\":200,");
  60. str.AppendFormat("\"msg\":\"\"");
  61. str.Append("}");
  62. con.Response.Write(str.ToString());
  63. }
  64. else
  65. {
  66. //string sql = string.Format("insert into s_taobaotmc2(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;",
  67. // con.Request.QueryString["tag"], fstr2, fstr, "");
  68. //XLog.ExecuteNonQuery(sql);
  69. StringBuilder str = new StringBuilder();
  70. str.Append("{");
  71. str.Append("\"success\":false,");
  72. str.AppendFormat("\"timestamp\":{0},", taobaoHelper.DateTimeToUnixTime(DateTime.Now));
  73. str.AppendFormat("\"code\":200,");
  74. str.AppendFormat("\"msg\":\"接收空数据\"");
  75. str.Append("}");
  76. con.Response.Write(str.ToString());
  77. }
  78. }
  79. catch (Exception ex)
  80. {
  81. //string sql = string.Format("insert into s_taobaotmc2(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;",
  82. // con.Request.QueryString["tag"], fstr2, fstr, "");
  83. //XLog.ExecuteNonQuery(sql);
  84. XLog.SaveLog(0, "refundpush:" + ex.Message);
  85. StringBuilder str = new StringBuilder();
  86. str.Append("{");
  87. str.Append("\"success\":false,");
  88. str.AppendFormat("\"timestamp\":{0},", taobaoHelper.DateTimeToUnixTime(DateTime.Now));
  89. str.AppendFormat("\"code\":200,");
  90. str.AppendFormat("\"msg\":\"程序发生异常\"");
  91. str.Append("}");
  92. con.Response.Write(str.ToString());
  93. }
  94. }
  95. }
  96. }