public int Editwxbasic(WeiXinBasic basic) { using (var helper = new SqlHelper()) { var id = new InternalWeiXinBasic(helper).Editwxbasic(basic); return(id); } }
internal WeiXinBasic GetWxBasicByComId(int comid) { string sql = @"SELECT [id] ,[comid] ,[domain] ,[url] ,[token] ,[AppId] ,[AppSecret] ,[attentionautoreply] ,[leavemsgautoreply] ,weixinno ,whethervertify ,weixintype FROM [EtownDB].[dbo].[WeiXinBasic] where comid=@comid"; var cmd = sqlHelper.PrepareTextSqlCommand(sql); cmd.AddParam("@comid", comid); using (var reader = cmd.ExecuteReader()) { if (reader.Read()) { WeiXinBasic basic = new WeiXinBasic(); basic.Id = reader.GetValue <int>("id"); basic.Comid = reader.GetValue <int>("comid"); basic.Domain = reader.GetValue <string>("domain"); basic.Url = reader.GetValue <string>("url"); basic.Token = reader.GetValue <string>("token"); basic.AppId = reader.GetValue <string>("AppId"); basic.AppSecret = reader.GetValue <string>("AppSecret"); basic.Attentionautoreply = reader.GetValue <string>("attentionautoreply"); basic.Leavemsgautoreply = reader.GetValue <string>("leavemsgautoreply"); basic.Weixinno = reader.GetValue <string>("weixinno"); basic.Whethervertify = reader.GetValue <bool>("whethervertify").ToString().ConvertTo <bool>(false); basic.Weixintype = reader.GetValue <int>("weixintype"); reader.Close(); return(basic); } else { return(null); } } }
public void Handle(string postStr, WeiXinBasic basic) { try { //封装请求类 XmlDocument doc = new XmlDocument(); doc.LoadXml(postStr); XmlElement rootElement = doc.DocumentElement; XmlNode MsgType = rootElement.SelectSingleNode("MsgType"); RequestXML requestXML = new RequestXML(); requestXML.PostStr = postStr; requestXML.ToUserName = rootElement.SelectSingleNode("ToUserName").InnerText; requestXML.FromUserName = rootElement.SelectSingleNode("FromUserName").InnerText; requestXML.CreateTime = rootElement.SelectSingleNode("CreateTime").InnerText; requestXML.MsgType = MsgType.InnerText; if (requestXML.MsgType == "event" || requestXML.MsgType == "text") { if (requestXML.MsgType == "event") { requestXML.Eevent = rootElement.SelectSingleNode("Event").InnerText; requestXML.EventKey = rootElement.SelectSingleNode("EventKey") == null ? "" : rootElement.SelectSingleNode("EventKey").InnerText; } ResponseMsg(requestXML, basic); } } catch (Exception ex) { string emptystr = ""; System.Web.HttpContext.Current.Response.Write(emptystr); //加txt文档记录 TxtHelper.WriteFile("D:\\site\\b2betown\\ETS2.WebApp\\weixinerrLog.txt", ex.Message); } }
internal WeiXinBasic GetWeiXinBasicByDomain(string RequestDomin) { string sql = @"SELECT [id] ,[comid] ,[domain] ,[url] ,[token] ,[AppId] ,[AppSecret] ,[attentionautoreply] ,[leavemsgautoreply] ,weixinno ,Weixintype FROM [WeiXinBasic] where domain=@domain"; var cmd = sqlHelper.PrepareTextSqlCommand(sql); cmd.AddParam("@domain", RequestDomin); using (var reader = cmd.ExecuteReader()) { if (reader.Read()) { WeiXinBasic basic = new WeiXinBasic(); basic.Id = reader.GetValue <int>("id"); basic.Comid = reader.GetValue <int>("comid"); basic.Domain = reader.GetValue <string>("domain"); basic.Url = reader.GetValue <string>("url"); basic.Token = reader.GetValue <string>("token"); basic.AppId = reader.GetValue <string>("AppId"); basic.AppSecret = reader.GetValue <string>("AppSecret"); basic.Attentionautoreply = reader.GetValue <string>("attentionautoreply"); basic.Leavemsgautoreply = reader.GetValue <string>("leavemsgautoreply"); basic.Weixinno = reader.GetValue <string>("weixinno"); basic.Weixintype = reader.GetValue <int>("Weixintype"); reader.Close(); return(basic); } else { return(null); } } }
internal int Editwxbasic(WeiXinBasic model) { var cmd = sqlHelper.PrepareStoredSqlCommand(SQLInsertOrUpdate); cmd.AddParam("@Id", model.Id); cmd.AddParam("@Comid", model.Comid); cmd.AddParam("@Domain", model.Domain); cmd.AddParam("@Url", model.Url); cmd.AddParam("@Token", model.Token); cmd.AddParam("@AppId", model.AppId); cmd.AddParam("@AppSecret", model.AppSecret); cmd.AddParam("@Attentionautoreply", model.Attentionautoreply); cmd.AddParam("@Leavemsgautoreply", model.Leavemsgautoreply); cmd.AddParam("@whethervertify", model.Whethervertify); var parm = cmd.AddReturnValueParameter("ReturnValue"); cmd.ExecuteNonQuery(); return((int)parm.Value); }
private void ResponseMsg(RequestXML requestXML, WeiXinBasic basic) { try { string resxml = ""; #region 接收事件推送 if (requestXML.MsgType == "event") { #region 关注事件 或者 已关注微信用户 扫描带参数二维码事件 if (requestXML.Eevent == "SCAN" || requestXML.Eevent == "subscribe") { lock (lockobj) { //判断是否是并发请求 string cretime = requestXML.CreateTime; //获得请求发送的次数 int reqnum = new WxSubscribeDetailData().GetReqnum(requestXML.FromUserName, cretime, requestXML.Eevent); if (reqnum == 1) { //如果用户二次扫描的合作单位信息,则显示 当前扫描的合作单位信息 int wxsourceid = requestXML.EventKey.Substring(requestXML.EventKey.IndexOf("_") + 1).ConvertTo <int>(0); if (wxsourceid > 0) { WxSubscribeSource sourcer = new WxSubscribeSourceData().GetWXSourceById(wxsourceid); if (sourcer != null) { if (sourcer.Productid > 0)//扫描产品二维码 { //根据产品id得到产品信息 B2b_com_pro pro = new B2bComProData().GetProById(sourcer.Productid.ToString()); if (pro != null) { //如果是优惠劵产品,生成优惠劵订单 if (pro.Server_type == 3) { var orderdata = OrderJsonData.insertyuohuiquan(sourcer.Productid, requestXML.FromUserName); } } } } } } } } #endregion #region 接收事件推送 if (requestXML.MsgType == "text") { //判断是否是顾问,1是;0不是 int isguwen = new MemberChannelData().IsGuwen(requestXML.FromUserName, basic.Comid); if (isguwen == 1) { if (requestXML.Content != "") { if (requestXML.Content.ToLower().Substring(0, 2) == "qx" || requestXML.Content.ToLower().Substring(0, 2) == "qr") { string str = ""; //截取前两个字qx,进入确认流程 if (requestXML.Content.ToLower().Substring(2, requestXML.Content.Length - 2) != "") { try { int orderid = int.Parse(requestXML.Content.ToLower().Substring(2, requestXML.Content.Length - 2)); var snsback = OrderJsonData.UporderPaystate(orderid, requestXML.Content.ToLower().Substring(0, 2), requestXML.Content);//处理订单 } catch { } if (requestXML.Content.ToLower().Substring(0, 2) == "qr") { str = "订单已确认"; } if (requestXML.Content.ToLower().Substring(0, 2) == "qx") { str = "订单已取消"; } } resxml = "<xml><ToUserName><![CDATA[" + requestXML.FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + requestXML.ToUserName + "]]></FromUserName><CreateTime>" + CommonFunc.ConvertDateTimeInt(DateTime.Now) + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + str + "]]></Content><FuncFlag>1</FuncFlag></xml>"; System.Web.HttpContext.Current.Response.Write(resxml); } } } } #endregion } #endregion } catch (Exception ex) { ////WriteTxt("异常" + ex.Message + "Struck:" + ex.StackTrace.ToString()); //wx_logs.MyInsert("异常" + ex.Message + "Struck:" + ex.StackTrace.ToString()); //string emptystr = "<xml><ToUserName><![CDATA[" + requestXML.FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + requestXML.ToUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now) + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[]]></Content></xml>"; string emptystr = ""; System.Web.HttpContext.Current.Response.Write(emptystr); } }