Exemplo n.º 1
0
        /// <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;
            }
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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");
        }
Exemplo n.º 4
0
 /// <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);
                 }
             }
         }
     }
 }
Exemplo n.º 5
0
        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());
        }
Exemplo n.º 6
0
        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();
                }
            }
        }
Exemplo n.º 7
0
        /// <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);
                }
            }
        }
Exemplo n.º 8
0
        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();
            }
        }
Exemplo n.º 9
0
        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);
        }
Exemplo n.º 10
0
        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();
                }
            }
        }
Exemplo n.º 11
0
        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);
        }
Exemplo n.º 12
0
        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);
            }
        }
Exemplo n.º 13
0
        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);
        }
Exemplo n.º 15
0
        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, "请核对信息后再操作!");
            }
        }