/// <summary> /// 获取用户OpenID /// </summary> void GetUserOpenID() { if (null == Request.QueryString["state"]) { //return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } else { strOpenID = code; } } if (strOpenID == null || strOpenID == "") { if (Session["customerID"] != null && Session["customerID"].ToString() != "") { MSCustomersDAL CustomerDal = new MSCustomersDAL(); try { strOpenID = CustomerDal.GetCustomerValueByID("OpenID", Session["customerID"].ToString()).ToString(); } catch (Exception) { } } } if (strOpenID != null && strOpenID != "") { Session["OpenID"] = strOpenID; } }
protected void Page_Load(object sender, EventArgs e) { string strSiteCode = string.Empty; string strOpenID = string.Empty; //if (null == Request["state"] || Request["state"] == "") if (null == Request.QueryString["state"]) { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } else { strOpenID = code; } } Session["OpenID"] = strOpenID; string text = System.IO.File.ReadAllText(Server.MapPath("../ShopPage/ChargeFee.html")); JinianNet.JNTemplate.TemplateContext context = new JinianNet.JNTemplate.TemplateContext(); context.TempData["OpenID"] = strOpenID; JinianNet.JNTemplate.Template t = new JinianNet.JNTemplate.Template(context, text); t.Render(Response.Output); }
public void ProcessRequest(HttpContext context) { siteCode = context.Request.QueryString["id"]; if (!string.IsNullOrEmpty(siteCode)) { WXConfigDAL dal = new WXConfigDAL(); wxConfig = dal.GetWXConfigBySiteCode(siteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; weixin = new WeiXinCore.WeiXin(weixinConfig); weixin.OnMsgReceiving = MsgReceiving; weixin.OnTextMsgReceived = TextMsgReceive; weixin.OnImageMsgReceived = ImageMsgReceive; weixin.OnSubscribeEvent = SubscribeProcess; weixin.OnMenuClick = MenuClickProcess; //MenuDAL.CreateWeiXinMenu(wxConfig.ID); //string json=WeiXinHelper.GetCustomMenu(weixin.GetAccessToken().Access_Token); //string fileDir = HttpContext.Current.Server.MapPath("/HP_PHOTO/"); //if (!Directory.Exists(fileDir)) //{ // Directory.CreateDirectory(fileDir); //} //string fileName = weixin.SaveAsMedia("WVNXJOLqpySbvX1T7zGCKYjboBbcv2x4YOgz9e0Avbq_xks5mGujx10avfPQ3ZlW", fileDir); //string file = HttpContext.Current.Server.MapPath("/HP_PHOTO/"); //if (!Directory.Exists(file)) //{ // Directory.CreateDirectory(file); //} //string tt=weixin.SaveAsMedia("d3VvIIQU7kaxd-NPw8a5qmDPkxLLY1NlBPLmCGNA_40K9DmDN4bbBEBJywfx2JFx", // file); //List<UserInfo> list= weixin.GetUserInfos(); context.Response.ContentType = "text/plain"; context.Response.Write(weixin.AcceptMsg()); return; } } context.Response.ContentType = "text/plain"; context.Response.Write("ERROR"); }
/// <summary> /// 同步微信用户信息 /// </summary> public static void SyncWXUserBySiteCode(string siteCode) { if (!string.IsNullOrEmpty(siteCode)) { WXConfigDAL dal = new WXConfigDAL(); WXConfig wxConfig = dal.GetWXConfigBySiteCode(siteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); List <UserInfo> users = weixin.GetUserInfos(); if (users != null) { UserDAL dal2 = CreateInstance(); dal2.ClearUser(wxConfig.ID); foreach (UserInfo user in users) { User info = new User() { WXConfigID = wxConfig.ID, OpenID = user.OpenId, Subscribe = user.Subscribe, NickName = user.NickName, Sex = user.Sex, Language = user.Language, City = user.City, Province = user.Province, Country = user.Country, HeadImgUrl = user.Headimgurl, SubscribeTime = user.Subscribe_Time, }; dal2.Insert(info); } } } } }
protected override bool BeforeLoad() { if (null == Request["state"] || Request["state"] == "") { return(false); } else { SiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(SiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { OpenID = oauth2AccessToken.OpenID; } } } Session["OpenID"] = OpenID; return(base.BeforeLoad()); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //--菜单功能 if (null == Request["state"] || Request["state"] == "") { return; } else { strSiteCode = Common.Common.NoHtml(Request["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } } //-- if (Request["actid"] == null || Request["actid"] == "") { return; } //strSiteCode = Common.Common.NoHtml(Request["sitecode"]); strActID = Common.Common.NoHtml(Request["actid"]); //GetOpenID(); if (Request["action"] != null && Request["action"] != "") { strAction = Common.Common.NoHtml(Request["action"]); switch (strAction.ToLower().Trim()) { case "saveuser": //Response.Write("{\"success\":true}"); saveUserinfo(); break; case "setphone": setPhone(); break; } Response.End(); } else { GetAwardList(); } } }
/// <summary> /// 创建微信菜单 /// </summary> /// <param name="siteCode"></param> public static void CreateWeiXinMenu(string wxConfigID) { if (!string.IsNullOrEmpty(wxConfigID)) { WXConfigDAL dal = new WXConfigDAL(); WXConfig wxConfig = dal.GetWXConfigByID(wxConfigID); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); MenuDAL dal2 = CreateInstance(); List <Menu> menus = dal2.GetWeiXinMenu(wxConfig.ID); MenuInfo menuInfo = new MenuInfo(); var buttons = from x in menus where x.MenuType.ToLower() == "button" orderby x.OrderNum ascending select x; foreach (Menu button in buttons) { if (!string.IsNullOrEmpty(button.ButtonType)) { switch (button.ButtonType.ToLower()) { case "view": string url = button.AccessLink; if (!string.IsNullOrEmpty(button.RedirectScope)) { url = WeiXinHelper.GenerateAuthorizeUrl(weixinConfig.AppId, HttpUtility.UrlEncode(url), button.RedirectScope, button.RedirectState); } menuInfo.Buttons.Add(new MenuViewBtton() { Name = button.ButtonName, Type = button.ButtonType, Url = url }); break; case "click": menuInfo.Buttons.Add(new MenuClickButton() { Name = button.ButtonName, Type = button.ButtonType, Key = button.ButtonKey }); break; default: menuInfo.Buttons.Add(new MenuEventButton() { Name = button.ButtonName, Type = button.ButtonType, Key = button.ButtonKey }); break; } } else { MenuSubButton subButton = new MenuSubButton() { Name = button.ButtonName }; var subButtons = from x in menus where x.MenuType.ToLower() == "sub_button" && x.ParentMenuID == button.ID orderby x.OrderNum ascending select x; foreach (Menu subButton1 in subButtons) { switch (subButton1.ButtonType.ToLower()) { case "view": string url = subButton1.AccessLink; if (!string.IsNullOrEmpty(subButton1.RedirectScope)) { url = WeiXinHelper.GenerateAuthorizeUrl(weixinConfig.AppId, HttpUtility.UrlEncode(url), subButton1.RedirectScope, subButton1.RedirectState); } subButton.SubButtons.Add(new MenuViewBtton() { Name = subButton1.ButtonName, Type = subButton1.ButtonType, Url = url }); break; case "click": subButton.SubButtons.Add(new MenuClickButton() { Name = subButton1.ButtonName, Type = subButton1.ButtonType, Key = subButton1.ButtonKey }); break; default: subButton.SubButtons.Add(new MenuEventButton() { Name = subButton1.ButtonName, Type = subButton1.ButtonType, Key = subButton1.ButtonKey }); break; } } menuInfo.Buttons.Add(subButton); } } string strJosn = menuInfo.ToJson(); weixin.CreateCustomMenu(menuInfo); } } }
protected void Page_Load(object sender, EventArgs e) { //if (null == Request.QueryString["sitecode"]) //{ // return; //} //else //{ // strSiteCode = Common.Common.NoHtml(Request.QueryString["sitecode"].ToString()); //} //Session["strSiteCode"] = strSiteID; if (Request["subid"] != null && Request["subid"] != "") { strSubjectID = Common.Common.NoHtml(Request["subid"]); } else { //strSubjectID = "2D883507972847CBAE20C692093F9394"; return; } if (null == Request["state"] || Request["state"] == "") { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } } if (Request["action"] != null && Request["action"] != "" && Request["action"] == "save") { votesave(); } else { getvoteDetail(); } }
protected void Page_Load(object sender, EventArgs e) { string strSiteCode = string.Empty; string strOpenID = string.Empty; if (null == Request.QueryString["state"]) { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } else { strOpenID = code; } } strOpenID = code; List <Model.MiniShop.MSVProduct> liProduct = new List <Model.MiniShop.MSVProduct>(); DAL.MiniShop.MSProductDAL dalProduct = new DAL.MiniShop.MSProductDAL(); DataSet ds = dalProduct.GetProductListBySiteCode(strSiteCode); foreach (DataRow row in ds.Tables[0].Rows) { Model.MiniShop.MSVProduct model = DataConvert.DataRowToModel <Model.MiniShop.MSVProduct>(row); liProduct.Add(model); } //读取模板内容 string text = System.IO.File.ReadAllText(Server.MapPath("Themes/Default/VProductList.html")); JinianNet.JNTemplate.TemplateContext context = new JinianNet.JNTemplate.TemplateContext(); context.TempData["sitecode"] = strSiteCode; context.TempData["openid"] = strOpenID; context.TempData["product_list"] = liProduct; context.TempData["footer"] = "奥琦微商易"; JinianNet.JNTemplate.Template t = new JinianNet.JNTemplate.Template(context, text); t.Render(Response.Output); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (null == Request["state"] || Request["state"] == "") { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } } //if (string.IsNullOrEmpty(strOpenID)) //{ // return; //} if (Request["action"] != null && Request["action"] != "") { if (Request["openid"] != null && Request["openid"] != "") { strOpenID = Request.QueryString["openid"].ToString(); Session["openid"] = strOpenID; } } else { if (null != Session["openid"]) { strOpenID = Session["openid"].ToString(); } } if (Request["openid"] != null && Request["openid"] != "") { strOpenID = Request.QueryString["openid"].ToString(); Session["openid"] = strOpenID; } //取有效竞猜ID DataSet dsQuiz = dalQuiz.GetJCQuizDataList(" DATEDIFF(MI,GETDATE(),StartTime) > 15 "); if (Request["id"] != null && Request["id"] != "") { strQuizID = Common.Common.NoHtml(Request["id"].ToString()); } else if (null != dsQuiz && dsQuiz.Tables.Count > 0 && dsQuiz.Tables[0].Rows.Count > 0) { strQuizID = dalQuiz.GetJCQuizDataList(" DATEDIFF(MI,GETDATE(),StartTime) > 15 ").Tables[0].Rows[0]["ID"].ToString(); } else { #region 消费完成发生消息 string strAppID = string.Empty; string strSecret = string.Empty; Model.WeiXin.WXConfig wc = new Model.WeiXin.WXConfig(); WXConfigDAL wcdal = new WXConfigDAL(); wc = wcdal.GetWXConfigBySiteCode(strSiteCode); if (null != wc) { strAppID = wc.WXAppID; strSecret = wc.WXAppSecret; } string strToken = WeiXinHelper.GetAccessToken(strAppID, strSecret); var KeyToken = new { access_token = "" }; var b = JsonConvert.DeserializeAnonymousType(strToken, KeyToken); string strRToken = b.access_token; WeiXinHelper.SendCustomTextMessage(strRToken, strOpenID, "当前没有竞猜场次!<a href='http://114.215.108.27/MicroSite/MyQuiz.aspx?sitecode=" + strSiteCode + "&openid=" + strOpenID + "'>查看所有参加的竞猜</a>"); #endregion Response.Write("<script>document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { WeixinJSBridge.call('closeWindow');});</script>"); return; } if (Request["action"] != null && Request["action"] != "") { strAction = Common.Common.NoHtml(Request.QueryString["action"].ToString()); } if (strAction.Trim() != null && strAction.Trim() != "" && strAction.Trim().ToLower() == "save") { SaveJCGScore(); } else { GetDetailList(); } } }
protected void Page_Load(object sender, EventArgs e) { string strSiteID = string.Empty; string strSiteCode = string.Empty; string strTitle = string.Empty; string strTheme = string.Empty; string strAlbumTypeID = string.Empty; string strOpenID = string.Empty; //if (null == Request.QueryString["ID"]) //{ // return; //} //if (null == Request.QueryString["OpenID"]) //{ // return; //} //strSiteCode = Common.Common.NoHtml(Request.QueryString["ID"].ToString()); //if (Request.QueryString["openid"].ToString().Length > 29 || Request.QueryString["openid"].ToString().Length < 25) //{ // strOpenID = Common.Common.NoHtml(Request.QueryString["openid"].ToString()); //} //else //{ // strOpenID = Request.QueryString["openid"].ToString(); //} if (null == Request["state"] || Request["state"] == "") { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } } Session["OpenID"] = strOpenID; //取站点信息 DAL.SYS.AccountDAL dalAccount = new DAL.SYS.AccountDAL(); DAL.Album.PhotoList dalPhotoList = new DAL.Album.PhotoList(); DataSet dsAccount = dalAccount.GetAExtDataBySiteCode(strSiteCode); if (null != dsAccount && dsAccount.Tables.Count > 0 && dsAccount.Tables[0].Rows.Count > 0) { strTheme = dsAccount.Tables[0].Rows[0]["Themes"].ToString(); strTitle = dsAccount.Tables[0].Rows[0]["Name"].ToString(); strSiteCode = dsAccount.Tables[0].Rows[0]["SiteCode"].ToString(); strSiteID = dsAccount.Tables[0].Rows[0]["ID"].ToString(); Session["strSiteCode"] = dsAccount.Tables[0].Rows[0]["SiteCode"].ToString(); } //取站点相册列表 DataSet dsPhotoList = dalPhotoList.GetPhotoList(strSiteCode); List <Model.Album.PhotoList> liPhotoList = new List <Model.Album.PhotoList>(); if (null != dsPhotoList && dsPhotoList.Tables.Count > 0 && dsPhotoList.Tables[0].Rows.Count > 0) { foreach (DataRow row in dsPhotoList.Tables[0].Rows) { Model.Album.PhotoList model = DataConvert.DataRowToModel <Model.Album.PhotoList>(row); liPhotoList.Add(model); } } //读取模板内容 string text = string.Empty; if (!File.Exists(Server.MapPath("Themes/" + strTheme + "/PhotoWall.html"))) { text = System.IO.File.ReadAllText(Server.MapPath("Themes/PhotoWall/PhotoWall.html")); } else { text = System.IO.File.ReadAllText(Server.MapPath("Themes/" + strTheme + "/PhotoWall.html")); } JinianNet.JNTemplate.TemplateContext context = new JinianNet.JNTemplate.TemplateContext(); context.TempData["title"] = strTitle; context.TempData["siteid"] = strSiteID; context.TempData["footer"] = "奥琦微商易"; context.TempData["sitecode"] = strSiteCode; context.TempData["AlbumTypelist"] = liPhotoList; JinianNet.JNTemplate.Template t = new JinianNet.JNTemplate.Template(context, text); t.Render(Response.Output); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string strSiteCode = string.Empty; string strOpenID = string.Empty; //if (null == Request["state"] || Request["state"] == "") if (null == Request.QueryString["state"]) { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } else { strOpenID = code; } } Session["OpenID"] = strOpenID; //取所有参加的活动列表 List <MyCouponInfo> liCoupon = new List <MyCouponInfo>(); CouponDAL dalCoup = new CouponDAL(); DataSet ds = dalCoup.GetCouponInfoList(strSiteCode, strOpenID); if (null != ds && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { foreach (DataRow row in ds.Tables[0].Rows) { MyCouponInfo model = DataConvert.DataRowToModel <MyCouponInfo>(row); liCoupon.Add(model); } } string text = System.IO.File.ReadAllText(Server.MapPath("../ShopPage/ActiveList.html")); JinianNet.JNTemplate.TemplateContext context = new JinianNet.JNTemplate.TemplateContext(); context.TempData["coupon_list"] = liCoupon; context.TempData["OpenID"] = strOpenID; JinianNet.JNTemplate.Template t = new JinianNet.JNTemplate.Template(context, text); t.Render(Response.Output); } }
void GetHtmlpage() { #region --------------------------判断是否为手机端浏览-------------------------- //判断是否为手机端浏览 //string u = Request.ServerVariables["HTTP_USER_AGENT"]; //Regex b = new Regex(@"(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino", RegexOptions.IgnoreCase | RegexOptions.Multiline); //Regex v = new Regex(@"1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-", RegexOptions.IgnoreCase | RegexOptions.Multiline); //if (!(b.IsMatch(u) || v.IsMatch(u.Substring(0, 4)))) //{ // return; //} #endregion string strSiteCode = string.Empty; string strOpenID = string.Empty; #region -------------------获取用户OpenID--------------- if (Request["state"] != null && Request["state"] != "") { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } else { strOpenID = code; } } #endregion List <MSShop> shoplist = new List <MSShop>(); #region -------------获取最新店铺列表----------------- MSShopDAL shopDal = new MSShopDAL(); DataSet shopds = shopDal.GetShopList(20, ""); if (shopds != null && shopds.Tables.Count > 0 && shopds.Tables[0].Rows.Count > 0) { foreach (DataRow row in shopds.Tables[0].Rows) { MSShop shopModel = DataConvert.DataRowToModel <MSShop>(row); shoplist.Add(shopModel); } } #endregion if (strOpenID != null && strOpenID != "") { Session["OpenID"] = strOpenID; } string text = System.IO.File.ReadAllText(Server.MapPath("../ShopPage/index.html")); JinianNet.JNTemplate.TemplateContext context = new JinianNet.JNTemplate.TemplateContext(); context.TempData["shoplist"] = shoplist; context.TempData["uid"] = uid; context.TempData["OpenID"] = strOpenID; context.TempData["errormsg"] = errowmsg; context.TempData["title"] = "最新店铺"; JinianNet.JNTemplate.Template t = new JinianNet.JNTemplate.Template(context, text); t.Render(Response.Output); }
protected void Page_Load(object sender, EventArgs e) { string strSiteID = string.Empty; string strSiteCode = string.Empty; string strTitle = string.Empty; string strTheme = string.Empty; string strOpenID = string.Empty; //订阅号 //if (null == Request.QueryString["openid"]) //{ // return; //} //if (Request.QueryString["openid"].ToString().Length > 29 || Request.QueryString["openid"].ToString().Length < 25) //{ // strOpenID = Common.Common.NoHtml(Request.QueryString["openid"].ToString()); //} //else //{ // strOpenID = Request.QueryString["openid"].ToString(); //} //if (null == Request.QueryString["sitecode"]) //{ // return; //} //strSiteCode = Common.Common.NoHtml(Request.QueryString["sitecode"].ToString()); if (null == Request["state"] || Request["state"] == "") { return; } else { strSiteCode = Common.Common.NoHtml(Request.QueryString["state"].ToString()); Session["strSiteCode"] = strSiteCode; } string code = Request.QueryString["code"] as string; if (!string.IsNullOrEmpty(code)) { WXConfigDAL dal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); Oauth2AccessToken oauth2AccessToken = weixin.GetOauth2AccessToken(code); if (oauth2AccessToken != null) { strOpenID = oauth2AccessToken.OpenID; } } } Session["OpenID"] = strOpenID; //取站点相册列表 DAL.Album.UserPhotoDAL dalUserPhoto = new DAL.Album.UserPhotoDAL(); DataSet dsThumbList = dalUserPhoto.GetMyPhoto(strSiteCode, strOpenID); List <Model.Album.UserPhoto> lstThumb = new List <Model.Album.UserPhoto>(); foreach (DataRow row in dsThumbList.Tables[0].Rows) { Model.Album.UserPhoto model = DataConvert.DataRowToModel <Model.Album.UserPhoto>(row); lstThumb.Add(model); } //读取模板内容 string text = System.IO.File.ReadAllText(Server.MapPath("Themes/PhotoWall/MyThumbList.html")); JinianNet.JNTemplate.TemplateContext context = new JinianNet.JNTemplate.TemplateContext(); context.TempData["sitecode"] = strSiteCode; context.TempData["title"] = "我的照片"; context.TempData["lstThumb"] = lstThumb; context.TempData["footer"] = "奥琦微商易"; JinianNet.JNTemplate.Template t = new JinianNet.JNTemplate.Template(context, text); t.Render(Response.Output); }
protected void btnSave_Click(object sender, EventArgs e) { if (null == Session["strSiteName"] || null == Session["strSiteCode"] || null == Session["strLoginName"]) { Response.Write("<script language=JavaScript>;parent.location.href='../Index.aspx';</script>"); Response.End(); } if (!string.IsNullOrEmpty(keyword.Text.Trim()) && fudVoice.HasFile && fudVoice.PostedFile.ContentLength <= 1024 * 1024 * 2 && (fudVoice.PostedFile.FileName.ToLower().Contains(".mp3") || fudVoice.PostedFile.FileName.ToLower().Contains(".amr"))) {//语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式 try { //先上传并插入微信媒体表 string fileDir = string.Format("/Uploads/{0}/", DateTime.Now.ToString("yyyyMM")); if (!System.IO.Directory.Exists(HttpContext.Current.Server.MapPath(fileDir))) { System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath(fileDir)); } string ext = System.IO.Path.GetExtension(fudVoice.FileName); string fileName = string.Format("{0}{1}", Guid.NewGuid().ToString("N"), ext); string filePath = fileDir + fileName; fudVoice.SaveAs(HttpContext.Current.Server.MapPath(filePath)); Media media = new Media() { MediaName = fudVoice.FileName, MediaFile = filePath, MediaType = MediaUploadType.Voice.ToString().ToLower() }; //选中自动同步时,将语音文件自动同步至微信服务器 if (cboIsSyn.Checked) { WXConfigDAL cdal = new WXConfigDAL(); Model.WeiXin.WXConfig wxConfig = cdal.GetWXConfigBySiteCode(Session["strSiteCode"].ToString()); if (wxConfig != null) { WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig() { ID = wxConfig.WXID, Name = wxConfig.WXName, Token = wxConfig.WXToken, AppId = wxConfig.WXAppID, AppSecret = wxConfig.WXAppSecret }; WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig); MediaUploadResult obj = weixin.PostMedia(HttpContext.Current.Server.MapPath(filePath), MediaUploadType.Voice); media.MediaID = obj.MediaID; media.LastSynTime = DateTime.Now; } } MediaDAL.CreateInstance().InsertInfo(media); //插入自动回复匹配表 WXConfigDAL configdal = new WXConfigDAL(); DataSet wxconfigds = configdal.GetWXConfigDataList(Session["strSiteCode"].ToString()); MsgAutoRule model = new MsgAutoRule(); MsgAutoRuleDAL dal = new MsgAutoRuleDAL(); model.MatchPattern = keyword.Text; model.Order = Convert.ToInt32(sort.Text); model.MsgValue = media.ID;//对应微信媒体文件ID,因微信上传文件有效期为两天,所以需要调度程序定期自动上传 model.ID = Guid.NewGuid().ToString("N").ToUpper(); model.Enabled = 1; model.LastModTime = DateTime.Now; model.MatchType = "keywords"; model.MsgType = "voice"; if (wxconfigds != null && wxconfigds.Tables.Count > 0 && wxconfigds.Tables[0].Rows.Count > 0) { model.WXConfigID = wxconfigds.Tables[0].Rows[0]["ID"].ToString(); } if (dal.AddMsgAutoRule(model)) { MessageBox.Show(this, "操作成功!"); } else { MessageBox.Show(this, "操作失败!"); } } catch (Exception ex) { MessageBox.Show(this, ex.Message); } } else { MessageBox.Show(this, "请核对信息后再操作!"); } }