コード例 #1
0
ファイル: ManyService.cs プロジェクト: sriramsoftware/wxshop
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(wid);

            if (!base.IsPostBack && (this.action == "setenable"))
            {
                base.Response.Clear();
                base.Response.ContentType = "application/json";
                string s = "{\"type\":\"1\",\"tips\":\"操作成功!\"}";
                try
                {
                    this.siteSettings.OpenManyService = Globals.RequestFormNum("enable") == 1;
                    website.OpenManyService           = Globals.RequestFormStr("enable");
                    //SettingsManager.Save(this.siteSettings);
                    bll.Update(website);
                }
                catch
                {
                    s = "{\"type\":\"0\",\"tips\":\"操作失败!\"}";
                }
                base.Response.Write(s);
                base.Response.End();
            }
            this.enableManyService = this.siteSettings.OpenManyService;
        }
コード例 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            /*SF.BLL.sf_website*/
            bll = new Chenduo.BLL.sf_website();
            /*SF.Model.sf_website*/
            website = bll.GetModelByWid(wid);
            if (website == null)
            {
                return;
            }

            this.btnSave.Click += new EventHandler(this.btnSave_Click);
            if (!base.IsPostBack)
            {
                //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                this.txtSiteName.Text         = website.sitename;    //masterSettings.SiteName;
                this.txtShopIntroduction.Text = website.description; //masterSettings.ShopIntroduction;
                this.txtShopTel.Text          = website.tel;         //masterSettings.ShopTel;
                this.hidpic.Value             = website.logo;        //masterSettings.DistributorLogoPic;
                if (!File.Exists(base.Server.MapPath(website.logo /*masterSettings.DistributorLogoPic*/)))
                {
                    this.hidpic.Value = "http://fpoimg.com/70x70";
                }
            }
        }
コード例 #3
0
ファイル: WeixinPay.cs プロジェクト: sriramsoftware/wxshop
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(wid);
            if (website == null)
            {
                return;
            }

            if (!base.IsPostBack)
            {
                this.txt_appid.Text     = website.appid;              //this.siteSettings.WeixinAppId;
                this.txt_appsecret.Text = website.appsecret;          //this.siteSettings.WeixinAppSecret;
                this.txt_key.Text       = website.account_pay_key;    //this.siteSettings.WeixinPartnerKey;
                this.txt_mch_id.Text    = website.weixin_pay_account; //this.siteSettings.WeixinPartnerID;
                //this._enable = website.Enableweixinrequest.Equals("1") ? true : false;//website.state==0?true:false;
            }
            //this._enable = website.state;//this.siteSettings.EnableWeiXinRequest;
            this._enable = website.Enableweixinrequest == "1" ? true : false;
        }
コード例 #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(wid);

            this.siteSettings = SettingsManager.GetMasterSettings(false, wid);
            this.action       = Globals.RequestFormStr("action");
            if (!base.IsPostBack)
            {
                if (this.action == "setenable")
                {
                    base.Response.Clear();
                    base.Response.ContentType = "application/json";
                    string s = "{\"type\":\"1\",\"tips\":\"操作成功!\"}";
                    this.siteSettings.EnableGuidePageSet = Globals.RequestFormNum("enable") == 1;
                    website.EnableGuidePageSet           = Globals.RequestFormStr("enable");
                    bll.Update(website);
                    //SettingsManager.Save(this.siteSettings);
                    base.Response.Write(s);
                    base.Response.End();
                }
                else if (this.siteSettings.GuidePageSet.Length > 10)
                {
                    this.txtGuidePageSet.Text = this.siteSettings.GuidePageSet;
                }
            }
            this.enableGuidePageSet = this.siteSettings.EnableGuidePageSet;
        }
コード例 #5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
            Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
            if (website == null)
            {
                return;
            }

            Utility.RegisterTypeForAjax(typeof(ShopIndex));
            if (!base.IsPostBack)
            {
                int    port = base.Request.Url.Port;
                string str  = (port == 80) ? "" : (":" + port.ToString());
                this.showUrl = "http://" + base.Request.Url.Host + str + Globals.ApplicationPath + "/default.aspx?wid=" + this.wid;
                //SiteSettings masterSettings = SettingsManager.GetMasterSettings(true);
                //this.tempLatePath = masterSettings.VTheme;

                this.tempLatePath = website.templatesNum;
                this.DataBind();
            }
        }
コード例 #6
0
 public void ProcessRequest(HttpContext context)
 {
     wid = context.Session[DTKeys.SESSION_WEB_ID] as string;
     if (string.IsNullOrEmpty(wid))
     {
         return;
     }
     context.Response.ContentType = "text/plain";
     try
     {
         Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
         Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
         string       str            = context.Request["type"].ToString();
         SiteSettings masterSettings = SettingsManager.GetMasterSettings(false, wid);
         if (str == "0")
         {
             bool flag = bool.Parse(context.Request["enable"].ToString());
             masterSettings.EnableSaleService = flag;
             website.EnableSaleService        = flag;
         }
         //SettingsManager.Save(masterSettings);
         bll.Update(website);
         context.Response.Write("{\"type\":\"success\",\"data\":\"\"}");
     }
     catch (Exception exception)
     {
         context.Response.Write("{\"type\":\"error\",\"data\":\"" + exception.Message + "\"}");
     }
 }
コード例 #7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            DateTime today     = DateTime.Today;
            DateTime beginDate = today.AddDays(-7.0);

            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }

            if (!base.IsPostBack)
            {
                //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                //this.lbShopName.Text = masterSettings.SiteName;
                //this.imgLogo.Src = masterSettings.DistributorLogoPic;

                Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
                Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
                this.lbShopName.Text = website.sitename;
                this.imgLogo.Src     = website.logo;
                if (!File.Exists(base.Server.MapPath(website.logo /*masterSettings.DistributorLogoPic*/)))
                {
                    this.imgLogo.Src = "http://fpoimg.com/80x80";
                }
                int    port = base.Request.Url.Port;
                string str  = (port == 80) ? "" : (":" + port.ToString());
                this.showUrl = "http://" + base.Request.Url.Host + str + Globals.ApplicationPath + "/default.aspx?wid=" + this.wid;
                DataRow drOne = ShopStatisticHelper.ShopGlobal_GetMemberCount(this.wid);
                DataRow row2  = ShopStatisticHelper.ShopGlobal_GetOrderCountByDate(today, this.wid);
                DataRow row3  = ShopStatisticHelper.ShopGlobal_GetOrderCountByDate(today.AddDays(-1.0), this.wid);
                this.WaitSendOrderQty         = base.GetFieldValue(drOne, "WaitSendOrderQty");
                this.OrderQty_Today           = base.GetFieldValue(row2, "OrderQty");
                this.OrderQty_Yesterday       = base.GetFieldValue(row3, "OrderQty");
                this.OrderAmountFee_Today     = base.GetFieldDecimalValue(row2, "OrderAmountFee").ToString("N2");
                this.OrderAmountFee_Yesterday = base.GetFieldDecimalValue(row3, "OrderAmountFee").ToString("N2");
                this.ServiceOrderQty          = base.GetFieldValue(drOne, "ServiceOrderQty");
                this.lbServiceOrderQty.Text   = this.ServiceOrderQty;
                if (this.ServiceOrderQty == "0")
                {
                    this.lbServiceOrderQty.ForeColor = Color.Green;
                }
                else
                {
                    this.lbServiceOrderQty.ForeColor = Color.Red;
                }
                this.GoodsQty       = base.GetFieldValue(drOne, "GoodsQty");
                this.MemberQty      = base.GetFieldValue(drOne, "MemberQty");
                this.DistributorQty = base.GetFieldValue(drOne, "DistributorQty");
                this.LoadTradeDataList(beginDate, 7);
                this.rptDistributor.DataSource = ShopStatisticHelper.ShopGlobal_GetSortList_Distributor(beginDate, 8, this.wid);
                this.rptDistributor.DataBind();
                this.rptMember.DataSource = ShopStatisticHelper.ShopGlobal_GetSortList_Member(beginDate, 8, this.wid);
                this.rptMember.DataBind();
            }
        }
コード例 #8
0
ファイル: ManageMenu.cs プロジェクト: sriramsoftware/wxshop
        private void BtnSave_Click(object sender, EventArgs e)
        {
            IList <MenuInfo> initMenus = VShopHelper.GetInitMenus(this.wid);

            Hishop.Weixin.MP.Domain.Menu.Menu menu = new Hishop.Weixin.MP.Domain.Menu.Menu();
            foreach (MenuInfo info in initMenus)
            {
                if ((info.Chilren == null) || (info.Chilren.Count == 0))
                {
                    menu.menu.button.Add(this.BuildMenu(info));
                }
                else
                {
                    SubMenu item = new SubMenu {
                        name = info.Name
                    };
                    foreach (MenuInfo info2 in info.Chilren)
                    {
                        item.sub_button.Add(this.BuildMenu(info2));
                    }
                    menu.menu.button.Add(item);
                }
            }
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(this.wid);
            if (website == null)
            {
                return;
            }

            string json = JsonConvert.SerializeObject(menu.menu);

            //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
            //if (string.IsNullOrEmpty(masterSettings.WeixinAppId) || string.IsNullOrEmpty(masterSettings.WeixinAppSecret))
            //{
            //    base.Response.Write("<script>alert('您的服务号配置存在问题,请您先检查配置!');location.href='PayConfig.aspx'</script>");
            //}
            //else if (MenuApi.CreateMenus(JsonConvert.DeserializeObject<Token>(TokenApi.GetToken(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret)).access_token, json).Contains("\"ok\""))
            //{
            //    this.ShowMsg("成功的把自定义菜单保存到了微信", true);
            //}
            if (string.IsNullOrEmpty(website.appid) || string.IsNullOrEmpty(website.appsecret))
            {
                base.Response.Write("<script>alert('您的服务号配置存在问题,请您先检查配置!');location.href='PayConfig.aspx'</script>");
            }
            else if (MenuApi.CreateMenus(JsonConvert.DeserializeObject <Token>(TokenApi.GetToken(website.appid, website.appsecret)).access_token, json).Contains("\"ok\""))
            {
                this.ShowMsg("成功的把自定义菜单保存到了微信", true);
            }
            else
            {
                this.ShowMsg("操作失败!服务号配置信息错误或没有微信自定义菜单权限", false);
            }
        }
コード例 #9
0
        public void setenable(HttpContext context)
        {
            string s = "{\"status\":\"1\"}";

            Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
            Chenduo.Model.sf_website website = bll.GetModelByWid(wid);

            //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false,wid);
            //masterSettings.EnableShopMenu = bool.Parse(context.Request["enable"]);
            website.EnableShopMenu = bool.Parse(context.Request["enable"]);
            //SettingsManager.Save(masterSettings);
            bll.Update(website);
            context.Response.Write(s);
        }
コード例 #10
0
ファイル: SaleService.cs プロジェクト: sriramsoftware/wxshop
 protected void SaveBtn_Click(object sender, EventArgs e)
 {
     Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
     Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
     if (string.IsNullOrEmpty(this.txt_entid.Text))
     {
         this.ShowMsg("请输入ent号码!", false);
     }
     website.entId = this.txt_entid.Text;
     if (bll.Update(website))
     {
         this.ShowMsg("保存成功", true);
     }
     else
     {
         this.ShowMsg("保存失败", false);
     }
 }
コード例 #11
0
ファイル: OfflinePay.cs プロジェクト: sriramsoftware/wxshop
        private void SaveData()
        {
            if (string.IsNullOrEmpty(this.fkContent.Text))
            {
                this.ShowMsg("请输入内容!", false);
            }
            Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
            Chenduo.Model.sf_website website = bll.GetModelByWid(wid);

            //this.siteSettings.OffLinePayContent = this.fkContent.Text;
            //SettingsManager.Save(this.siteSettings);
            website.OffLinePayContent = this.fkContent.Text;
            if (bll.Update(website))
            {
                this.ShowMsgAndReUrl("保存成功", true, "OfflinePay.aspx");
            }
            else
            {
                this.ShowMsgAndReUrl("保存失败", false, "");
            }
        }
コード例 #12
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            Chenduo.BLL.sf_website   bll;
            Chenduo.Model.sf_website website;
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(wid);

            SiteSettings masterSettings = SettingsManager.GetMasterSettings(false, wid);

            masterSettings.ManageOpenID = this.txtManageOpenID.Text.Trim();
            website.ManageOpenID        = this.txtManageOpenID.Text.Trim();
            if (bll.Update(website))
            //SettingsManager.Save(masterSettings);
            {
                this.ShowMsg("保存成功", true);
            }
            else
            {
                this.ShowMsg("保存失败", false);
            }
        }
コード例 #13
0
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(wid);

            this.siteSettings = SettingsManager.GetMasterSettings(false, wid);
            this.action       = Globals.RequestFormStr("action");

            this._dataPath = this.Page.Request.MapPath("~/Pay/Cert");
            if (!base.IsPostBack)
            {
                if (this.action == "setenable")
                {
                    base.Response.Clear();
                    base.Response.ContentType = "application/json";
                    string s = "{\"type\":\"1\",\"tips\":\"操作成功!\"}";
                    try
                    {
                        this.siteSettings.EnableWeiXinRequest = Globals.RequestFormNum("enable") == 1;
                        website.Enableweixinrequest           = Globals.RequestFormStr("enable");
                        //SettingsManager.Save(this.siteSettings);
                        bll.Update(website);
                    }
                    catch
                    {
                        s = "{\"type\":\"0\",\"tips\":\"操作失败!\"}";
                    }
                    base.Response.Write(s);
                    base.Response.End();
                }
                this.labfilename.InnerText = (this.siteSettings.WeixinCertPath != "") ? ("已上传:" + this.siteSettings.WeixinCertPath.Substring(this.siteSettings.WeixinCertPath.LastIndexOf(@"\") + 1, (this.siteSettings.WeixinCertPath.Length - this.siteSettings.WeixinCertPath.LastIndexOf(@"\")) - 1)) : "";
                this.txtCertPassword.Text  = this.siteSettings.WeixinCertPassword;
            }
            this.enableWXRequest = this.siteSettings.EnableWeiXinRequest;
        }
コード例 #14
0
        public bool EnableTemp(string TempName, string wid)
        {
            if (string.IsNullOrEmpty(TempName))
            {
                return(false);
            }
            //SiteSettings masterSettings = SettingsManager.GetMasterSettings(true);
            //masterSettings.VTheme = TempName;
            //SettingsManager.Save(masterSettings);

            Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
            Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
            if (website == null)
            {
                return(false);
            }
            website.templatesNum = TempName;
            bll.Update(website);

            HiCache.Remove("TemplateFileCache");
            return(true);
        }
コード例 #15
0
        protected void Page_Load(object sender, EventArgs e)
        {
            wid = GetCurWebId();
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            bll     = new Chenduo.BLL.sf_website();
            website = bll.GetModelByWid(wid);
            if (website == null)
            {
                return;
            }

            if (!this.Page.IsPostBack)
            {
                //int mid = Globals.GetCurrentManagerUserId();
                //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                //if (string.IsNullOrEmpty(masterSettings.WeixinToken))
                if (string.IsNullOrEmpty(website.token_value))
                {
                    website.token_value = this.CreateKey(8);
                    //SettingsManager.Save(masterSettings);
                    bll.Update(website);
                }

                //if (string.IsNullOrWhiteSpace(masterSettings.CheckCode))
                //{
                //    masterSettings.CheckCode = this.CreateKey(20);
                //    SettingsManager.Save(masterSettings);
                //}

                this.hdfCopyUrl.Value   = this.txtUrl.Text = string.Format("http://{0}/api/wx.ashx?wid={1}", base.Request.Url.Host, this.wid /*this.txtToken.Text*/);
                this.hdfCopyToken.Value = this.txtToken.Text = website.token_value;
                this.txtAppId.Text      = website.appid;
                this.txtAppSecret.Text  = website.appsecret;
            }
        }
コード例 #16
0
        public void ProcessRequest(HttpContext context)
        {
            HttpRequest request = context.Request;

            //string weixinToken = SettingsManager.GetMasterSettings(false).WeixinToken;
            Chenduo.Model.sf_website website;
            string wid = request["wid"];

            if (string.IsNullOrEmpty(wid))
            {
                context.Response.Write("参数非法");
                return;
            }

            website = new Chenduo.BLL.sf_website().GetModelByWid(wid);
            if (string.IsNullOrEmpty(website.token_value))
            {
                context.Response.Write("不存在该微信号");
                return;
            }

            string signature = request["signature"];
            string nonce     = request["nonce"];
            string timestamp = request["timestamp"];
            string s         = request["echostr"];

            if (request.HttpMethod == "GET")
            {
                if (CheckSignature.Check(signature, timestamp, nonce, website.token_value))
                {
                    context.Response.Write(s);//返回随机字符串则表示验证通过
                }
                else
                {
                    context.Response.Write("failed:" + signature + ",token:" + website.token_value + " " + CheckSignature.GetSignature(timestamp, nonce, website.token_value) +
                                           "。如果你在浏览器中看到这句话,说明此地址可以被作为微信公众账号后台的Url,请注意保持Token一致。");
                }
                context.Response.End();
            }
            else
            {
                try
                {
                    CustomMsgHandler handler = new CustomMsgHandler(request.InputStream);
                    handler.wid = wid;

                    //测试时可开启此记录,帮助跟踪数据
                    if (HiConfiguration.LOG_LEVENL >= 3)
                    {
                        handler.RequestDocument.Save(context.Server.MapPath("~/logs/" + DateTime.Now.Ticks + "_Request_" +
                                                                            handler.RequestMessage.FromUserName + ".txt"));
                    }
                    handler.Execute();

                    if (handler.ResponseDocument != null && HiConfiguration.LOG_LEVENL >= 3)
                    {
                        handler.ResponseDocument.Save(context.Server.MapPath("~/logs/" + DateTime.Now.Ticks + "_Response_" +
                                                                             handler.ResponseMessage.ToUserName + ".txt"));
                    }
                    context.Response.Write(handler.ResponseDocument == null ? string.Empty : handler.ResponseDocument.ToString());
                }
                catch (Exception exception)
                {
                    StreamWriter writer = File.AppendText(context.Server.MapPath("error.txt"));
                    writer.WriteLine(exception.Message);
                    writer.WriteLine(exception.StackTrace);
                    writer.WriteLine(DateTime.Now);
                    writer.Flush();
                    writer.Close();
                }
            }
        }
コード例 #17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //StreamWriter writer = File.AppendText(Server.MapPath("~/log/" + DateTime.Now.Ticks + "WxNotify.txt"));
            try
            {
                //NotifyClient notifyClient = new NotifyClient();
                //PayNotify payNotify = notifyClient.GetPayNotify(base.Request.InputStream);
                //PayNotify payNotify = new NotifyClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, masterSettings.WeixinPaySignKey).GetPayNotify(base.Request.InputStream);
                //StreamWriter writer = File.AppendText(Server.MapPath("~/log/" + DateTime.Now.Ticks + "WxNotify.txt"));
                //writer.WriteLine("wx_pay");
                Log.Debug(this.GetType().ToString(), "wx_Pay>>");
                ResponseHandler resHandler = new ResponseHandler(Context);
                RequestHandler  res        = new RequestHandler(null);
                if (resHandler != null)
                {
                    //wid = payNotify.PayInfo.Attach;
                    //PayAccount account = new PayAccount
                    //{
                    //    AppId = website.appid,
                    //    AppSecret = website.appsecret,
                    //    PartnerId = website.weixin_pay_account,
                    //    PartnerKey = website.account_pay_key,
                    //    PaySignKey = ""
                    //};
                    //notifyClient._payAccount = account;

                    //writer.WriteLine("out_trade_no_1:"+ payNotify.out_trade_no);
                    //writer.WriteLine("paykey:" + website.account_pay_key);
                    //writer.WriteLine("wid:"+wid);

                    //string servicesign = "";
                    //if (!notifyClient.ValidPaySign(payNotify, out servicesign))
                    //{
                    //    writer.WriteLine("signerror,servicesign:"+ servicesign);
                    //    writer.Flush();
                    //    writer.Close();
                    //    return;
                    //}

                    //this.OrderId = payNotify.PayInfo.OutTradeNo;


                    //1.判断return_code
                    if (resHandler.GetParameter("return_code").ToUpper() != "SUCCESS")
                    {
                        Log.Error(this.GetType().ToString(), "wx_Pay>> return_code!=SUCCESS");
                        //writer.WriteLine("wx_pay return_code!=SUCCESS");
                        //writer.WriteLine(DateTime.Now);
                        //writer.Flush();
                        //writer.Close();


                        res.SetParameter("return_code", "FAIL");
                        res.SetParameter("return_msg", "return_code fail");
                        Response.Write(res.ParseXML());
                        Response.End();
                        return;
                    }
                    //2.判断result_code
                    if (resHandler.GetParameter("result_code").ToUpper() != "SUCCESS")
                    {
                        // 支付失败
                        //res.SetParameter("return_code", "FAIL");
                        //res.SetParameter("return_msg", "result_code fail");


                        //writer.WriteLine("wx_pay result_code!=SUCCESS");
                        //writer.WriteLine(DateTime.Now);
                        //writer.Flush();
                        //writer.Close();

                        Log.Error(this.GetType().ToString(), "wx_Pay>> result_code!=SUCCESS");

                        res.SetParameter("return_code", "SUCCESS");
                        res.SetParameter("return_msg", "");
                        Response.Write(res.ParseXML());
                        Response.End();
                        return;
                    }

                    //交易成功
                    string wid = resHandler.GetParameter("attach");
                    Chenduo.Model.sf_website website = new Chenduo.BLL.sf_website().GetModelByWid(wid);
                    resHandler.SetKey(website.account_pay_key);

                    //writer.WriteLine("wx_pay wid:" + wid);
                    Log.Debug(this.GetType().ToString(), "wx_Pay>> wid:" + wid);

                    //3.判断签名
                    if (resHandler.IsTenpaySign())
                    {
                        string ls_appid        = resHandler.GetParameter("appid");
                        string ls_mch_id       = resHandler.GetParameter("mch_id");
                        string ls_nonce_str    = resHandler.GetParameter("nonce_str");
                        string ls_sign         = resHandler.GetParameter("sign");
                        string ls_openid       = resHandler.GetParameter("openid");
                        string ls_is_subscribe = resHandler.GetParameter("is_subscribe");
                        string ls_trade_type   = resHandler.GetParameter("trade_type");
                        string ls_bank_type    = resHandler.GetParameter("bank_type");

                        int    li_total_fee      = int.Parse(resHandler.GetParameter("total_fee"));
                        string ls_transaction_id = resHandler.GetParameter("transaction_id");
                        string ls_out_trade_no   = resHandler.GetParameter("out_trade_no");
                        string ls_time_end       = resHandler.GetParameter("time_end");

                        //writer.WriteLine("wx_pay out_trade_no:" + ls_out_trade_no);
                        Log.Debug(this.GetType().ToString(), "wx_Pay>> out_trade_no:" + ls_out_trade_no);

                        //this.orderlist = ShoppingProcessor.GetOrderMarkingOrderInfo(ls_out_trade_no);
                        //if (this.orderlist.Count == 0)
                        //{
                        //    //base.Response.Write("success");
                        //}
                        //else
                        //{
                        //    foreach (OrderInfo info in this.orderlist)
                        //    {
                        //        info.GatewayOrderId = ls_transaction_id;//payNotify.PayInfo.TransactionId;
                        //    }
                        //    this.UserPayOrder();
                        //}

                        //wxOrderTmpMgr Totbll = wxOrderTmpMgr.instance();
                        string ret = new wxOrderTmpMgr().ProcessPaySuccess_wx(wid, ls_out_trade_no, ls_transaction_id);
                    }
                    else
                    {
                        //writer.WriteLine("签名失败");
                        Log.Error(this.GetType().ToString(), "wx_Pay>> 签名失败");
                    }
                    res.SetParameter("return_code", "SUCCESS");
                    res.SetParameter("return_msg", "");
                }
                //writer.WriteLine(DateTime.Now);
                //writer.Flush();
                //writer.Close();

                Response.Write(res.ParseXML());
                Response.End();
            }
            catch (System.Threading.ThreadAbortException)
            {
            }
            catch (Exception exception)
            {
                //StreamWriter writerexption = File.AppendText(Server.MapPath("~/log/" + DateTime.Now.Ticks + "WxNotifyExp.txt"));
                //writerexption.WriteLine(exception.Message);
                //writerexption.WriteLine(exception.StackTrace);
                //writerexption.WriteLine(DateTime.Now);
                //writerexption.Flush();
                //writerexption.Close();

                //writer.WriteLine(DateTime.Now);
                //writer.Flush();
                //writer.Close();

                Log.Error(this.GetType().ToString(), "wx_Pay>> exception:" + exception.Message + " stackTrace:" + exception.StackTrace);
            }
        }
コード例 #18
0
        public void ProcessRequest(HttpContext context)
        {
            wid = context.Session[DTKeys.SESSION_WEB_ID] as string;
            if (string.IsNullOrEmpty(wid))
            {
                return;
            }
            context.Response.ContentType = "text/plain";
            try
            {
                string str = context.Request["type"].ToString();
                //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
                Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
                switch (str)
                {
                case "0":
                {
                    string str2 = context.Request["name"].ToString();
                    string str3 = context.Request["card"].ToString();
                    string str4 = context.Request["bank"].ToString();
                    //masterSettings.OfflinePay_BankCard_Name = str2;
                    //masterSettings.OfflinePay_BankCard_CardNo = str3;
                    //masterSettings.OfflinePay_BankCard_BankName = str4;
                    break;
                }

                case "1":
                {
                    string str5 = context.Request["mid"].ToString();
                    //masterSettings.OfflinePay_Alipay_id = str5;
                    break;
                }

                case "2":
                {
                    string str6 = context.Request["content"].ToString();
                    //masterSettings.OffLinePayContent = str6;
                    website.OffLinePayContent = str6;
                    break;
                }

                case "3":
                {
                    string str7 = context.Request["mid"].ToString();
                    string str8 = context.Request["key"].ToString();
                    //masterSettings.ShenPay_mid = str7;
                    //masterSettings.ShenPay_key = str8;
                    break;
                }

                case "4":
                {
                    string str9  = context.Request["mid"].ToString();
                    string str10 = context.Request["name"].ToString();
                    string str11 = context.Request["pid"].ToString();
                    string str12 = context.Request["key"].ToString();
                    website.Alipay_mid   = str9;
                    website.Alipay_mName = str10;
                    website.Alipay_Pid   = str11;
                    website.Alipay_Key   = str12;
                    break;
                }

                case "5":
                {
                    string str13 = context.Request["appid"].ToString();
                    string str14 = context.Request["appsecret"].ToString();
                    string str15 = context.Request["mch_id"].ToString();
                    string str16 = context.Request["key"].ToString();
                    //masterSettings.WeixinAppId = str13;
                    //masterSettings.WeixinAppSecret = str14;
                    //masterSettings.WeixinPartnerID = str15;
                    //masterSettings.WeixinPartnerKey = str16;
                    website.appid              = str13;
                    website.appsecret          = str14;
                    website.weixin_pay_account = str15;
                    website.account_pay_key    = str16;
                    break;
                }

                case "6":
                {
                    string str17 = context.Request["mid"].ToString();
                    string str18 = context.Request["md5"].ToString();
                    string str19 = context.Request["des"].ToString();
                    //masterSettings.ChinaBank_mid = str17;
                    //masterSettings.ChinaBank_MD5 = str18;
                    //masterSettings.ChinaBank_DES = str19;
                    break;
                }

                case "7":
                {
                    string str20 = context.Request["key"].ToString();
                    website.WeixinCertPassword = str20;
                    break;
                }

                case "-1":
                {
                    bool flag = bool.Parse(context.Request["enable"].ToString());
                    //货到付款
                    website.EnablePodRequest = flag?"1":"0";
                    break;
                }

                case "-2":
                {
                    bool flag2 = bool.Parse(context.Request["enable"].ToString());
                    website.EnableOffLineRequest = flag2 ? "1" : "0";
                    break;
                }

                case "-3":
                {
                    bool flag3 = bool.Parse(context.Request["enable"].ToString());
                    //masterSettings.EnableWapShengPay = flag3;
                    break;
                }

                case "-4":
                {
                    bool flag4 = bool.Parse(context.Request["enable"].ToString());
                    website.EnableAlipayRequest = flag4 ? "1" : "0";
                    break;
                }

                case "-5":
                {
                    bool flag5 = bool.Parse(context.Request["enable"].ToString());
                    website.Enableweixinrequest = flag5 ? "1" : "0";
                    break;
                }

                case "-6":
                {
                    bool flag6 = bool.Parse(context.Request["enable"].ToString());
                    //masterSettings.ChinaBank_Enable = flag6;
                    break;
                }

                case "-7":
                {
                    bool flag7 = bool.Parse(context.Request["enable"].ToString());
                    website.EnableWeixinRed = flag7? "1" : "0";
                    break;
                }
                }
                //SettingsManager.Save(masterSettings);
                bll.Update(website);
                context.Response.Write("保存成功");
            }
            catch (Exception exception)
            {
                context.Response.Write("保存失败!(" + exception.Message + ")");
            }
        }
コード例 #19
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (base.Request.QueryString["delimg"] != null)
            {
                string path = base.Server.HtmlEncode(base.Request.QueryString["delimg"]);
                path = base.Server.MapPath(path);
                if (File.Exists(path))
                {
                    File.Delete(path);
                }
                base.Response.Write("0");
                base.Response.End();
            }
            int num = int.Parse(base.Request.QueryString["imgurl"]);
            //string wid = base.Request.QueryString["webid"];
            string wid = Session[DTKeys.SESSION_WEB_ID] as string;

            try
            {
                if (num < 1)
                {
                    if (string.IsNullOrEmpty(wid))
                    {
                        return;
                    }
                    Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
                    Chenduo.Model.sf_website website = bll.GetModelByWid(wid);
                    if (website == null)
                    {
                        return;
                    }

                    HttpPostedFile file = base.Request.Files["Filedata"];
                    string         str2 = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo);
                    string         str3 = "/Storage/data/DistributorLogoPic/";
                    string         str4 = str2 + Path.GetExtension(file.FileName);
                    file.SaveAs(Globals.MapPath(str3 + str4));
                    base.Response.StatusCode = 200;
                    base.Response.Write(str2 + "|/Storage/data/DistributorLogoPic/" + str4);
                    //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                    string distributorLogoPic = website.logo;//masterSettings.DistributorLogoPic;
                    distributorLogoPic = base.Server.MapPath(distributorLogoPic);
                    if (File.Exists(distributorLogoPic))
                    {
                        File.Delete(distributorLogoPic);
                    }
                    /*masterSettings.DistributorLogoPic*/
                    website.logo = "/Storage/data/DistributorLogoPic/" + str4;
                    //SettingsManager.Save(masterSettings);
                    bll.Update(website);
                }
                else
                {
                    base.Response.Write("0");
                }
            }
            catch (Exception)
            {
                base.Response.StatusCode = 500;
                base.Response.Write("服务器错误");
                base.Response.End();
            }
            finally
            {
                base.Response.End();
            }
        }
コード例 #20
0
        private void saveData()
        {
            Chenduo.BLL.sf_website   bll     = new Chenduo.BLL.sf_website();
            Chenduo.Model.sf_website website = bll.GetModelByWid(wid);

            if (string.IsNullOrEmpty(this.txt_mid.Text))
            {
                this.ShowMsg("请输入支付宝帐号!", false);
            }
            this.siteSettings.Alipay_mid = this.txt_mid.Text;
            website.Alipay_mid           = this.txt_mid.Text;

            if (string.IsNullOrEmpty(this.txt_mName.Text))
            {
                this.ShowMsg("请输入支付宝帐号姓名!", false);
            }
            this.siteSettings.Alipay_mName = this.txt_mName.Text;
            website.Alipay_mName           = this.txt_mName.Text;

            if (string.IsNullOrEmpty(this.txt_pid.Text))
            {
                this.ShowMsg("请输入合作者身份(PID)!", false);
            }
            this.siteSettings.Alipay_Pid = this.txt_pid.Text;
            website.Alipay_Pid           = this.txt_pid.Text;

            if (string.IsNullOrEmpty(this.txt_key.Text))
            {
                this.ShowMsg("请输入安全校验码(Key)!", false);
            }
            string text = string.Format("<xml><Partner>{0}</Partner><Key>{1}</Key><Seller_account_name>{2}</Seller_account_name></xml>", this.txt_pid.Text, this.txt_key.Text, this.txt_mid.Text);

            if (!string.IsNullOrWhiteSpace(this.txt_pid.Text) && !string.IsNullOrWhiteSpace(this.txt_key.Text))
            {
                string.IsNullOrWhiteSpace(this.txt_mid.Text);
            }
            PaymentModeInfo paymentMode = SalesHelper.GetPaymentMode("hishop.plugins.payment.ws_wappay.wswappayrequest", this.wid);

            if (paymentMode == null)
            {
                PaymentModeInfo info2 = new PaymentModeInfo {
                    Name        = "支付宝手机支付",
                    Gateway     = "hishop.plugins.payment.ws_wappay.wswappayrequest",
                    Description = string.Empty,
                    IsUseInpour = true,
                    Charge      = 0M,
                    IsPercent   = false,
                    Settings    = HiCryptographer.Encrypt(text),
                    wid         = this.wid
                };
                if (SalesHelper.CreatePaymentMode(info2) == PaymentModeActionStatus.Success)
                {
                    this.siteSettings.Alipay_Key = this.txt_key.Text;
                    website.Alipay_Key           = this.txt_key.Text;
                    bll.Update(website);
                    //SettingsManager.Save(this.siteSettings);
                    this.ShowMsg("设置成功", true);
                }
                else
                {
                    this.ShowMsg("设置失败", false);
                }
            }
            else
            {
                paymentMode.Settings = HiCryptographer.Encrypt(text);
                if (SalesHelper.UpdatePaymentMode(paymentMode) == PaymentModeActionStatus.Success)
                {
                    this.siteSettings.Alipay_Key = this.txt_key.Text;
                    website.Alipay_Key           = this.txt_key.Text;
                    bll.Update(website);
                    //SettingsManager.Save(this.siteSettings);
                    this.ShowMsg("设置成功", true);
                }
                else
                {
                    this.ShowMsg("设置失败", false);
                }
            }
        }
コード例 #21
0
ファイル: wx_Submit.cs プロジェクト: sriramsoftware/wxshop
        protected void Page_Load(object sender, EventArgs e)
        {
            string str = base.Request.QueryString.Get("orderId");

            if (!string.IsNullOrEmpty(str))
            {
                List <OrderInfo> orderMarkingOrderInfo = ShoppingProcessor.GetOrderMarkingOrderInfo(str);
                if (orderMarkingOrderInfo.Count != 0)
                {
                    decimal num = 0M;
                    foreach (OrderInfo info in orderMarkingOrderInfo)
                    {
                        num += info.GetTotal();
                    }
                    PackageInfo package = new PackageInfo {
                        Body       = str,
                        NotifyUrl  = string.Format("http://{0}/pay/wx_Pay.aspx", base.Request.Url.Host),
                        OutTradeNo = str,
                        TotalFee   = (int)(num * 100M)
                    };
                    if (package.TotalFee < 1M)
                    {
                        package.TotalFee = 1M;
                    }
                    string     openId        = "";
                    MemberInfo currentMember = MemberProcessor.GetCurrentMember();
                    if (currentMember != null)
                    {
                        openId = currentMember.OpenId;
                    }
                    package.OpenId = openId;
                    wid            = currentMember.wid;
                    //SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                    Chenduo.Model.sf_website website = new Chenduo.BLL.sf_website().GetModelByWid(wid);
                    //PayRequestInfo req = new PayClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, masterSettings.WeixinPaySignKey).BuildPayRequest(package);
                    PayRequestInfo req = new PayClient(wid, website.appid, website.appsecret, website.weixin_pay_account, website.account_pay_key, "").BuildPayRequest(package);
                    this.pay_json = this.ConvertPayJson(req);
                    DataTable shareActivity = ShareActHelper.GetShareActivity();
                    int       num2          = 0;
                    decimal   num3          = 0M;
                    if (shareActivity.Rows.Count > 0)
                    {
                        for (int i = 0; i < shareActivity.Rows.Count; i++)
                        {
                            if ((num != 0M) && (num >= decimal.Parse(shareActivity.Rows[shareActivity.Rows.Count - 1]["MeetValue"].ToString())))
                            {
                                num2 = int.Parse(shareActivity.Rows[shareActivity.Rows.Count - 1]["Id"].ToString());
                                num3 = decimal.Parse(shareActivity.Rows[shareActivity.Rows.Count - 1]["MeetValue"].ToString());
                                break;
                            }
                            if ((num != 0M) && (num <= decimal.Parse(shareActivity.Rows[0]["MeetValue"].ToString())))
                            {
                                num2 = int.Parse(shareActivity.Rows[0]["Id"].ToString());
                                num3 = decimal.Parse(shareActivity.Rows[0]["MeetValue"].ToString());
                                break;
                            }
                            if ((num != 0M) && (num >= decimal.Parse(shareActivity.Rows[i]["MeetValue"].ToString())))
                            {
                                num2 = int.Parse(shareActivity.Rows[i]["Id"].ToString());
                                num3 = decimal.Parse(shareActivity.Rows[i]["MeetValue"].ToString());
                            }
                        }
                        if (num >= num3)
                        {
                            this.shareid = num2;
                        }
                    }
                }
            }
        }
コード例 #22
0
ファイル: OutPayHelp.cs プロジェクト: sriramsoftware/wxshop
        public static WeiPayResult SingleWeiPay(int amount, string desc, string useropenid, string realname, string tradeno, int UserId, string wid)
        {
            SiteSettings masterSettings = SettingsManager.GetMasterSettings(true, wid);

            Chenduo.Model.sf_website website = new Chenduo.BLL.sf_website().GetModelByWid(wid);
            WeiXinMchid = website.weixin_pay_account;        //masterSettings.WeixinPartnerID;
            WeiXinAppid = website.appid;                     //masterSettings.WeixinAppId;
            WeiXinKey   = website.account_pay_key;           //masterSettings.WeixinPartnerKey;
            BatchWeixinPayCheckRealName = masterSettings.BatchWeixinPayCheckRealName.ToString();
            WeiXinCertPath     = website.WeixinCertPath;     //masterSettings.WeixinCertPath;
            WeixinCertPassword = website.WeixinCertPassword; //masterSettings.WeixinCertPassword;
            string batchWeixinPayCheckRealName = BatchWeixinPayCheckRealName;

            if (batchWeixinPayCheckRealName != null)
            {
                if (!(batchWeixinPayCheckRealName == "0"))
                {
                    if (batchWeixinPayCheckRealName == "1")
                    {
                        BatchWeixinPayCheckRealName = "FORCE_CHECK";
                    }
                    else if (batchWeixinPayCheckRealName == "2")
                    {
                        BatchWeixinPayCheckRealName = "OPTION_CHECK";
                    }
                }
                else
                {
                    BatchWeixinPayCheckRealName = "NO_CHECK";
                }
            }
            WeiPayResult result = new WeiPayResult {
                return_code = "SUCCESS",
                err_code    = "",
                return_msg  = "微信企业付款参数配置错误"
            };

            if (WeiXinMchid == "")
            {
                result.return_code = "FAIL";
                result.return_msg  = "商户号未配置!";
            }
            else if (WeiXinAppid == "")
            {
                result.return_code = "FAIL";
                result.return_msg  = "公众号APPID未配置!";
            }
            else if (WeiXinKey == "")
            {
                result.return_code = "FAIL";
                result.return_msg  = "商户密钥未配置!";
            }
            if (result.return_code == "FAIL")
            {
                return(result);
            }
            result.return_code = "FAIL";
            result.return_msg  = "用户参数出错了!";
            OutPayWeiInfo payinfos = new OutPayWeiInfo {
                Amount           = amount,
                Partner_Trade_No = tradeno,
                Openid           = useropenid,
                Re_User_Name     = realname,
                Desc             = desc,
                UserId           = UserId,
                device_info      = "",
                Nonce_Str        = GetRandomString(20)
            };

            return(WeiXinPayOut(payinfos, WeiXinAppid, WeiXinMchid, BatchWeixinPayCheckRealName, WeiXinKey));
        }
コード例 #23
0
ファイル: OutPayHelp.cs プロジェクト: sriramsoftware/wxshop
        public static List <WeiPayResult> BatchWeiPay(List <OutPayWeiInfo> BatchUserList, string wid)
        {
            SiteSettings masterSettings = SettingsManager.GetMasterSettings(true, wid);

            Chenduo.Model.sf_website website = new Chenduo.BLL.sf_website().GetModelByWid(wid);
            WeiXinMchid = website.weixin_pay_account;        //masterSettings.WeixinPartnerID;
            WeiXinAppid = website.appid;                     //masterSettings.WeixinAppId;
            WeiXinKey   = website.account_pay_key;           //masterSettings.WeixinPartnerKey;
            BatchWeixinPayCheckRealName = masterSettings.BatchWeixinPayCheckRealName.ToString();
            WeiXinCertPath     = website.WeixinCertPath;     //masterSettings.WeixinCertPath;
            WeixinCertPassword = website.WeixinCertPassword; //masterSettings.WeixinCertPassword;
            string batchWeixinPayCheckRealName = BatchWeixinPayCheckRealName;

            if (batchWeixinPayCheckRealName != null)
            {
                if (!(batchWeixinPayCheckRealName == "0"))
                {
                    if (batchWeixinPayCheckRealName == "1")
                    {
                        BatchWeixinPayCheckRealName = "FORCE_CHECK";
                    }
                    else if (batchWeixinPayCheckRealName == "2")
                    {
                        BatchWeixinPayCheckRealName = "OPTION_CHECK";
                    }
                }
                else
                {
                    BatchWeixinPayCheckRealName = "NO_CHECK";
                }
            }
            List <WeiPayResult> list = new List <WeiPayResult>();
            WeiPayResult        item = new WeiPayResult {
                return_code = "SUCCESS",
                err_code    = "",
                return_msg  = "微信企业付款参数配置错误"
            };

            if (WeiXinMchid == "")
            {
                item.return_code = "FAIL";
                item.return_msg  = "商户号未配置!";
            }
            else if (WeiXinAppid == "")
            {
                item.return_code = "FAIL";
                item.return_msg  = "公众号APPID未配置!";
            }
            else if (WeiXinKey == "")
            {
                item.return_code = "FAIL";
                item.return_msg  = "商户密钥未配置!";
            }
            if (item.return_code == "FAIL")
            {
                item.return_code = "INITFAIL";
                list.Add(item);
                return(list);
            }
            foreach (OutPayWeiInfo info in BatchUserList)
            {
                WeiPayResult result2 = WeiXinPayOut(info, WeiXinAppid, WeiXinMchid, BatchWeixinPayCheckRealName, WeiXinKey);
                list.Add(result2);
                if ((result2.return_code == "SUCCESS") && (((result2.err_code == "NOAUTH") || (result2.err_code == "NOTENOUGH")) || (((result2.err_code == "CA_ERROR") || (result2.err_code == "SIGN_ERROR")) || (result2.err_code == "XML_ERROR"))))
                {
                    list.Add(result2);
                    return(list);
                }
            }
            return(list);
        }