using BizCom; using System; using System.Text; using System.Web; using System.Web.SessionState; namespace SiteCore.Handler { public class refundpush : BaseHandler, IHttpHandler, IRequiresSessionState { //淘宝文档: https://open.taobao.com/tmc.htm?docId=101&docType=9 HttpContext con = null; public static object pushObj = new object(); public void ProcessRequest(HttpContext context) { con = context; //string fstr = con.Request.Form.ToString(); string fstr = ""; string fstr2 = ""; try { if (con.Request.TotalBytes > 0) { byte[] input = con.Request.BinaryRead(con.Request.TotalBytes); fstr = Encoding.UTF8.GetString(input); fstr2 = con.Request.QueryString.ToString(); string queryTag = Convert.ToString(con.Request.QueryString["tag"]); //if (queryTag == "create") //{ // try // { // tmcHelper.Api_TmcTradeMsg_Create(fstr); // string sql = string.Format("insert into s_taobaotmc3(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;", // con.Request.QueryString["tag"], fstr2, fstr, ""); // XLog.ExecuteNonQuery(sql); // } // catch(Exception ex) // { // string sql = string.Format("insert into s_taobaotmc2(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;", // con.Request.QueryString["tag"], fstr2, fstr, ""); // XLog.ExecuteNonQuery(sql); // } //} //else //{ string sql = string.Format("insert into S_RefundTmc(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;" + "insert into s_taobaotmc3(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;", queryTag, fstr2, fstr, ""); XLog.ExecuteNonQuery(sql); refundTmcHelper.Api_TmcRefundMsg(fstr); //} //lock (pushObj) //{ // tmcHelper.Api_TmcTradeMsg(fstr); //} StringBuilder str = new StringBuilder(); str.Append("{"); str.Append("\"success\":true,"); str.AppendFormat("\"timestamp\":{0},", taobaoHelper.DateTimeToUnixTime(DateTime.Now)); str.AppendFormat("\"code\":200,"); str.AppendFormat("\"msg\":\"\""); str.Append("}"); con.Response.Write(str.ToString()); } else { //string sql = string.Format("insert into s_taobaotmc2(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;", // con.Request.QueryString["tag"], fstr2, fstr, ""); //XLog.ExecuteNonQuery(sql); StringBuilder str = new StringBuilder(); str.Append("{"); str.Append("\"success\":false,"); str.AppendFormat("\"timestamp\":{0},", taobaoHelper.DateTimeToUnixTime(DateTime.Now)); str.AppendFormat("\"code\":200,"); str.AppendFormat("\"msg\":\"接收空数据\""); str.Append("}"); con.Response.Write(str.ToString()); } } catch (Exception ex) { //string sql = string.Format("insert into s_taobaotmc2(topic,urlparm,message,con,addtime) values('{0}','{1}','{2}','{3}',getdate()) ;", // con.Request.QueryString["tag"], fstr2, fstr, ""); //XLog.ExecuteNonQuery(sql); XLog.SaveLog(0, "refundpush:" + ex.Message); StringBuilder str = new StringBuilder(); str.Append("{"); str.Append("\"success\":false,"); str.AppendFormat("\"timestamp\":{0},", taobaoHelper.DateTimeToUnixTime(DateTime.Now)); str.AppendFormat("\"code\":200,"); str.AppendFormat("\"msg\":\"程序发生异常\""); str.Append("}"); con.Response.Write(str.ToString()); } } } }