示例#1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!EX_Admin.Power("order_shipping", "订单发货"))
            {
                WindowNoPower();
            }
            int id = RequestTool.RequestInt("id", 0);

            string where = "id = " + id + "";
            if (!string.IsNullOrEmpty(EX_Admin.Project().Site_ids))
            {
                where += " and (Site_id in (" + EX_Admin.Project().Site_ids + "))";
            }
            if (!string.IsNullOrEmpty(EX_Admin.Project().Supplier_ids))
            {
                where += " and (Supplier_id in (" + EX_Admin.Project().Supplier_ids + "))";
            }
            model = B_Lebi_Order.GetModel(where);
            if (model == null)
            {
                model = new Lebi_Order();
            }

            pros            = B_Lebi_Order_Product.GetList("Order_id=" + model.id + "", "");
            transport_order = B_Lebi_Transport_Order.GetModel("Order_id = " + id);
            if (transport_order == null)
            {
                transport_order = new Lebi_Transport_Order();
            }
        }
示例#2
0
        /// <summary>
        /// 提交订单留言
        /// </summary>
        public void OrderComment_Edit()
        {
            string     comment  = RequestTool.RequestSafeString("comment");
            int        order_id = RequestTool.RequestInt("order_id", 0);
            Lebi_Order order    = B_Lebi_Order.GetModel("User_id=" + CurrentUser.id + " and id = " + order_id);

            if (order == null)
            {
                Response.Write("{\"msg\":\"" + Tag("参数错误") + "\"}");
                return;
            }
            Lebi_Comment model = new Lebi_Comment();

            model.Content       = comment;
            model.Keyid         = order_id;
            model.TableName     = "Order";
            model.User_id       = CurrentUser.id;
            model.User_UserName = CurrentUser.UserName;
            B_Lebi_Comment.Add(model);
            //发送邮件
            Email.SendEmail_ordercomment(CurrentUser, model);
            //发送短信
            SMS.SendSMS_ordercomment(CurrentUser, model);
            Response.Write("{\"msg\":\"OK\"}");
        }
示例#3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string body = "";

            byte[] byts = new byte[Request.InputStream.Length];
            Request.InputStream.Read(byts, 0, byts.Length);
            string req = System.Text.Encoding.Default.GetString(byts);

            SystemLog.Add(req);
            try
            {
                JObject obj = JObject.Parse(req);
                if (obj["type"].ToString() == "charge.paid")
                {
                    if (obj["data"]["object"]["status"].ToString() == "paid")
                    {
                        string     outordercode = obj["data"]["object"]["order_id"].ToString();
                        Lebi_Order order        = B_Lebi_Order.GetModel("OnlinePay_Code='" + outordercode + "'");
                        if (order != null)
                        {
                            Order.OnlinePaySuccess("conekta", order.Code, outordercode);
                            Response.Write("success");
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                SystemLog.Add(ex.ToString());
            }
        }
示例#4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel("Code='weixinpay'");

            if (pay == null)
            {
                Log.Add("在线支付接口 weixinpay 配置错误");
                return;
            }
            Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id);
            int           order_id = RequestTool.RequestInt("order_id", 0);
            Lebi_Order    order    = B_Lebi_Order.GetModel(order_id);

            if (order == null)
            {
                Response.Write("订单错误");
                Response.End();
                return;
            }
            TenpayUtil tu        = new TenpayUtil();
            string     sp_billno = order.Code;
            //当前时间 yyyyMMdd
            string date = DateTime.Now.ToString("yyyyMMdd");

            //if (null == sp_billno)
            //{
            //    //生成订单10位序列号,此处用时间和随机数生成,商户根据自己调整,保证唯一
            //    sp_billno = DateTime.Now.ToString("HHmmss") + TenpayUtil.BuildRandomStr(4);
            //}
            //else
            //{
            //    sp_billno = Request["order_no"].ToString();
            //}

            sp_billno = TenpayUtil.partner + sp_billno;


            RequestHandler outParams = new RequestHandler(Context);

            outParams.init();
            string productid = sp_billno;
            string timeStamp = TenpayUtil.getTimestamp();
            string nonceStr  = TenpayUtil.getNoncestr();

            RequestHandler Params = new RequestHandler(Context);

            Params.setParameter("appid", TenpayUtil.appid);
            Params.setParameter("appkey", TenpayUtil.appkey);
            Params.setParameter("noncestr", nonceStr);
            Params.setParameter("timestamp", timeStamp);
            Params.setParameter("productid", productid);
            string sign = Params.createSHA1Sign();

            Params.setParameter("sign", sign);


            parm = "weixin://wxpay/bizpayurl?sign=" + sign + "&appid=" + TenpayUtil.appid + "&productid=" + productid + "&timeStamp=" + timeStamp + "&nonceStr=" + nonceStr;
            Response.Write(parm);
            parm = QRfromGoogle(parm);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            int    orderid = RequestTool.RequestInt("orderid", 0);
            int    id      = RequestTool.RequestInt("id", 0);
            string pnumber = RequestTool.RequestString("pnumber").Trim();

            order        = B_Lebi_Order.GetModel("Supplier_id = " + CurrentSupplier.id + " and id = " + orderid);
            orderproduct = B_Lebi_Order_Product.GetModel("Supplier_id = " + CurrentSupplier.id + " and id = " + id);
            if (orderproduct == null)
            {
                product      = B_Lebi_Product.GetModel("Number=lbsql{'" + pnumber + "'} order by id desc");
                orderproduct = new Lebi_Order_Product();
            }
            else
            {
                product = B_Lebi_Product.GetModel(orderproduct.Product_id);
            }
            if (order == null || product == null)
            {
                Response.Write(Tag("参数错误"));
                Response.End();
                return;
            }
            //int pid = product.Product_id == 0 ? product.id : product.Product_id;
            if (product.Product_id > 0)
            {
                models = B_Lebi_Product.GetList("Product_id=" + product.Product_id + "", "");
            }
            else
            {
                models = new List <Lebi_Product>();
                models.Add(product);
            }
        }
示例#6
0
        /// <summary>
        /// 订单发货
        /// </summary>
        /// <param name="user"></param>
        /// <param name="order"></param>
        /// <param name="torder"></param>
        public static void Push_ordershipping(Lebi_User user, Lebi_Order order, Lebi_Transport_Order torder)
        {
            BaseConfig conf = ShopCache.GetBaseConfig();

            if (conf.APPPush_sendmode.Contains("ordershipping"))
            {
                if (user.Language == "")
                {
                    user.Language = Language.Languages().FirstOrDefault().Code;
                }
                string list = "";
                List <TransportProduct> tps = new List <TransportProduct>();
                JavaScriptSerializer    jss = new JavaScriptSerializer();
                try
                {
                    tps = jss.Deserialize <List <TransportProduct> >(torder.Product);
                }
                catch (Exception)
                {
                    tps = new List <TransportProduct>();
                }
                foreach (TransportProduct pro in tps)
                {
                    list += "" + Language.Tag("商品编号", user.Language) + ":" + pro.Product_Number + ";" + Language.Tag("商品", user.Language) + ":" + Language.Content(pro.Product_Name, user.Language) + ";" + Language.Tag("发货数量", user.Language) + ":" + pro.Count + ";";
                }
                string content = Language.Content(conf.SMSTPL_ordershipping, user.Language);
                content = ReplaceSMSTag(content, user, conf);
                content = content.Replace("{$OrderNO}", order.Code);
                content = content.Replace("{$ExpressCompany}", torder.Transport_Name);
                content = content.Replace("{$ExpressNumber}", torder.Code);
                content = content.Replace("{$Order}", list);
                Push(user.Device_system, user.Device_id, content);
            }
        }
示例#7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!EX_Admin.Power("order_shipping", "订单发货"))
            {
                WindowNoPower();
            }
            int id = RequestTool.RequestInt("id", 0);

            torder = B_Lebi_Transport_Order.GetModel(id);
            if (torder == null)
            {
                Response.Write(Tag("参数错误"));
                Response.End();
                return;
            }
            model = B_Lebi_Order.GetModel(torder.Order_id);
            tps   = new List <TransportProduct>();
            JavaScriptSerializer jss = new JavaScriptSerializer();

            try
            {
                tps = jss.Deserialize <List <TransportProduct> >(torder.Product);
            }
            catch (Exception)
            {
                tps = new List <TransportProduct>();
            }
        }
示例#8
0
        protected void Page_Load(object sender, EventArgs e)
        {
            int id = RequestTool.RequestInt("id", 0);

            torder = B_Lebi_Transport_Order.GetModel(id);
            if (torder == null)
            {
                Response.Write(Tag("参数错误"));
                Response.End();
                return;
            }
            string where = "id = " + torder.Order_id + "";
            if (!string.IsNullOrEmpty(EX_Admin.Project().Site_ids))
            {
                where += " and (Site_id in (" + EX_Admin.Project().Site_ids + "))";
            }
            if (!string.IsNullOrEmpty(EX_Admin.Project().Supplier_ids))
            {
                where += " and (Supplier_id in (" + EX_Admin.Project().Supplier_ids + "))";
            }
            order = B_Lebi_Order.GetModel(where);
            if (order == null)
            {
                Response.Write(Tag("参数错误"));
                Response.End();
                return;
            }
            pros = B_Lebi_Order_Product.GetList("Order_id=" + order.id + "", "");
        }
示例#9
0
文件: Event.cs 项目: zwkjgs/LebiShop
        /// <summary>
        /// 订单全部收货
        /// </summary>
        public static void OrderReceived(Lebi_Order order)
        {
            List <PluginConfig> ps = GetPluginConfig();

            foreach (PluginConfig model in ps)
            {
                foreach (PluginConfig.eventconfig cof in model.EventConfigs)
                {
                    if (cof.eventname != "OrderReceivedEvent")
                    {
                        continue;
                    }
                    try
                    {
                        Type       type       = Type.GetType("" + cof.classname + "," + cof.spacename + "", false, true);
                        MethodInfo methodInfo = type.GetMethod(cof.methodname, new Type[] { typeof(Lebi_Order) });
                        methodInfo.Invoke(type, new object[] { order });
                    }
                    catch
                    {
                        SystemLog.Add(model.Assembly + "对事件" + cof.eventname + "注册失败");
                        continue;
                    }
                }
            }
        }
示例#10
0
        /// <summary>
        /// 验证支付成功后台服务通知
        /// 创建用户:shiyuankao
        /// 创建时间:2014-08-06
        /// </summary>
        /// <param name="inParams">银联传送过来的参数信息</param>
        /// <returns></returns>
        bool CallbackVerify(UmsPayConfig config, Dictionary <string, string> inParams)
        {
            // 组装验签内容信息
            var signField = new string[] { "OrderTime", "OrderDate", "MerOrderId", "TransType", "TransAmt", "MerId", "MerTermId", "TransId", "TransState", "RefId", "Account", "TransDesc", "Reserve" };
            var sbSign    = new StringBuilder();

            foreach (var s in signField)
            {
                var r = inParams.Keys.Any(n => String.Equals(n, s.ToLower(), StringComparison.CurrentCultureIgnoreCase));
                if (!r)
                {
                    continue;
                }
                var dict = inParams.FirstOrDefault(n => String.Equals(n.Key, s.ToLower(), StringComparison.CurrentCultureIgnoreCase));
                sbSign.Append(dict.Value);
            }
            // 判断验签是否成功
            var result = RSAUtil.Verify(sbSign.ToString(), inParams["signature"], config.PublicKey);

            if (result)
            {
                Lebi_Order order = B_Lebi_Order.GetModel("Code='" + inParams["MerOrderId"] + "'");
                // 验签成功后,向银联服务发送接收通知消息响应请求
                this.NotifyResponse(config, inParams);
            }
            return(result);
        }
示例#11
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!EX_Admin.Power("order_edit", "编辑订单"))
            {
                NewPageNoPower();
            }
            int id = RequestTool.RequestInt("id", 0);

            string where = "id = " + id + "";
            if (!string.IsNullOrEmpty(EX_Admin.Project().Site_ids))
            {
                where += " and (Site_id in (" + EX_Admin.Project().Site_ids + "))";
            }
            if (!string.IsNullOrEmpty(EX_Admin.Project().Supplier_ids))
            {
                where += " and (Supplier_id in (" + EX_Admin.Project().Supplier_ids + "))";
            }
            model = B_Lebi_Order.GetModel(where);
            if (model == null)
            {
                model = new Lebi_Order();
            }
            config = ShopCache.GetBaseConfig();
            pros   = B_Lebi_Order_Product.GetList("Order_id=" + model.id + "", "");
            comms  = B_Lebi_Comment.GetList("TableName='Order' and Keyid=" + model.id + " and User_id = " + model.User_id + " and Admin_id = 0", "id desc");
        }
示例#12
0
文件: Config.cs 项目: zwkjgs/LebiShop
        public WxPayConfig(Lebi_Order order)
        {
            string where = "";
            if (order != null)
            {
                where = "id = " + order.OnlinePay_id + "";
            }
            else
            {
                where = "Code='weixinpayh5'";
            }
            Lebi_OnlinePay onlinepay = B_Lebi_OnlinePay.GetModel(where);

            if (onlinepay == null)
            {
                Log.Add("在线支付接口 weixinpay 配置错误");
                return;
            }
            Shop.Bussiness.Site site    = new Shop.Bussiness.Site();
            B_BaseConfig        bconfig = new B_BaseConfig();
            BaseConfig          SYS     = bconfig.LoadConfig();

            MCHID = onlinepay.UserName;
            KEY   = onlinepay.UserKey;
            APPID = onlinepay.Appid;
            //SystemLog.Add("weixinpay-WxPayConfig" + "MCHID : " + MCHID + ",KEY : " + KEY + ",APPID : " + APPID);
            //APPSECRET = onlinepay.Appkey;
            //IP = HttpContext.Current.Request.ServerVariables.Get("Local_Addr");
            NOTIFY_URL = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/weixinpayh5/payNotifyUrl.aspx";
        }
示例#13
0
        protected override void LoadPage(string themecode, int siteid, string languagecode, string pcode)
        {
            LoadTheme(themecode, siteid, languagecode, pcode);
            if (CurrentUser.id == 0)
            {
                //Response.Redirect("login.aspx");
                Response.Redirect(URL("P_Login", "" + HttpUtility.UrlEncode(RequestTool.GetRequestUrlNonDomain()) + "," + GetUrlToken(RequestTool.GetRequestUrlNonDomain()) + ""));
            }
            path = "<a href=\"" + URL("P_Index", "") + "\" class=\"home\" title=\"" + Tag("首页") + "\"><span>" + Tag("首页") + "</span></a><em class=\"home\">&raquo;</em><a href=\"" + URL("P_Basket", "") + "\"><span>" + Tag("购物车") + "</span></a><em>&raquo;</em><a href=\"" + URL("P_Cashier", "") + "\"><span>" + Tag("订单已提交") + "</span></a>";

            order_id = Rint("order_id");
            order    = B_Lebi_Order.GetModel(order_id);
            if (order == null)
            {
                PageError();
            }
            if (order.User_id != CurrentUser.id || order.IsVerified != 0)
            {
                PageError();
            }
            else
            {
                if (order.Type_id_OrderType == 215)
                {
                    List <Lebi_Order> ors   = B_Lebi_Order.GetList("Order_id=" + order.id + "", "");
                    decimal           moeny = 0;
                    foreach (Lebi_Order or in ors)
                    {
                        moeny += or.Money_Pay;
                    }
                    order.Money_Pay = moeny;
                    B_Lebi_Order.Update(order);
                }
            }
        }
示例#14
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel("Code='95epay'");

            if (pay == null)
            {
                Log.Add("在线支付接口 95epay 配置错误");
                Response.End();
                return;
            }
            Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id);
            int           order_id = RequestTool.RequestInt("order_id", 0);
            Lebi_Order    order    = B_Lebi_Order.GetModel(order_id);

            if (order == null)
            {
                Response.Write("订单错误");
                Response.End();
                return;
            }

            sorder.ord_no   = order.Code;                              //订单编号
            sorder.ord_amt  = order.Money_Pay * currendy.ExchangeRate; //订单金额
            sorder.ord_date = DateTime.Now.ToString("yyyyMMdd");       //交易日期时间
            sorder.ver      = "01";
            sorder.mrch_no  = pay.UserName;
        }
示例#15
0
        public Config(Lebi_Order order)
        {
            //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

            Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "alipayJSDZ");

            if (pay == null)
            {
                return;
            }
            //合作身份者ID,以2088开头由16位纯数字组成的字符串
            partner = pay.UserName;

            //交易安全检验码,由数字和字母组成的32位字符串
            key = pay.UserKey;

            //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑



            //字符编码格式 目前支持 gbk 或 utf-8
            input_charset = "utf-8";

            //签名方式,选择项:RSA、DSA、MD5
            sign_type = "MD5";
        }
示例#16
0
        private WxPayData UnifiedOrder(string openId, string productId)
        {
            //统一下单
            Lebi_Order order = B_Lebi_Order.GetModel("id = lbsql{" + productId + "}");

            if (order == null)
            {
                throw new WxPayException("订单不存在!");
            }
            WxPayData req = new WxPayData();

            req.SetValue("body", "test");
            req.SetValue("attach", "test");
            req.SetValue("out_trade_no", WxPayApi.GenerateOutTradeNo(order));
            req.SetValue("total_fee", 1);
            req.SetValue("time_start", DateTime.Now.ToString("yyyyMMddHHmmss"));
            req.SetValue("time_expire", DateTime.Now.AddMinutes(10).ToString("yyyyMMddHHmmss"));
            req.SetValue("goods_tag", "test");
            req.SetValue("trade_type", "NATIVE");
            req.SetValue("openid", openId);
            req.SetValue("product_id", productId);
            WxPayData result = WxPayApi.UnifiedOrder(req);

            return(result);
        }
示例#17
0
 protected override void LoadPage(string themecode, int siteid, string languagecode, string pcode)
 {
     if (CurrentUser.id == 0)
     {
         Response.Redirect(URL("P_Login", "" + HttpUtility.UrlEncode(RequestTool.GetRequestUrlNonDomain()) + "," + GetUrlToken(RequestTool.GetRequestUrlNonDomain()) + ""));
     }
     LoadTheme(themecode, siteid, languagecode, pcode);
     CurrentPage = B_Lebi_Theme_Page.GetModel("Code='P_UserOrderDetails'");
     id          = Rint("id");
     order       = B_Lebi_Order.GetModel("User_id = " + CurrentUser.id + " and id = " + id + "");
     if (order == null)
     {
         PageError();
     }
     if (order.User_id != CurrentUser.id)
     {
         PageError();
     }
     if (order.Type_id_OrderType == 212)
     {
         Response.Redirect(URL("P_UserReturnDetails", id));
     }
     path             = "<a href=\"" + URL("P_Index", "") + "\" class=\"home\" title=\"" + Tag("首页") + "\"><span>" + Tag("首页") + "</span></a><em class=\"home\">&raquo;</em><a href=\"" + URL("P_UserCenter", "") + "\"><span>" + Tag("会员中心") + "</span></a><em>&raquo;</em><a href=\"" + URL("P_UserOrders", "") + "\"><span>" + Tag("我的订单") + "</span></a><em>&raquo;</em><a href=\"" + URL("P_UserOrderDetails", id) + "\"><span>" + Tag("订单") + ":" + order.Code + "</span></a>";
     CurrentPage      = B_Lebi_Theme_Page.GetModel("Code='P_UserOrderDetails'");
     id               = Rint_Para("0");
     comments         = B_Lebi_Comment.GetList("TableName='Order' and Keyid=" + order.id, "id desc");
     transport_orders = B_Lebi_Transport_Order.GetList("Order_id=" + order.id, "id desc");
     bills            = B_Lebi_Bill.GetList("Order_id=" + order.id, "id desc");
     order_products   = B_Lebi_Order_Product.GetList("Order_id=" + order.id, "id desc");
     pay              = B_Lebi_Pay.GetModel(order.Pay_id);
     if (pay == null)
     {
         pay = new Lebi_Pay();
     }
 }
示例#18
0
 protected void Page_Load(object sender, EventArgs e)
 {
     #region 获取参数值
     result        = Request["result"];
     pay_message   = Request["pay_message"];
     agent_id      = Request["agent_id"];
     jnet_bill_no  = Request["jnet_bill_no"];
     agent_bill_id = Request["agent_bill_id"];
     pay_type      = Request["pay_type"];
     pay_amt       = Request["pay_amt"];
     remark        = Request["remark"];
     returnSign    = Request["sign"];
     #endregion
     order = B_Lebi_Order.GetModel("Code=lbsql{'" + agent_bill_id + "'}");
     if (order == null)
     {
         Response.Write("系统错误");
         Response.End();
         return;
     }
     pay  = Shop.Bussiness.Money.GetOnlinePay(order, "huifubao");
     sign = GetSign();
     //比较MD5签名结果 是否相等
     if (sign.Equals(returnSign))
     {
         Order.OnlinePaySuccess(agent_bill_id);
         Response.Write("ok");
     }
     else
     {
         Response.Write("error");
     }
     Response.End();
 }
示例#19
0
        public int pages = 0;//1手机页面
        protected void Page_Load(object sender, EventArgs e)
        {
            int        order_id = RequestTool.RequestInt("order_id", 0);
            Lebi_Order order    = B_Lebi_Order.GetModel(order_id);

            if (order == null)
            {
                Response.Write("订单错误");
                Response.End();
                return;
            }
            Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "qianhai");

            if (pay == null)
            {
                Response.Write("系统错误");
                Response.End();
                return;
            }
            if (pay.FeeRate > 0)
            {
                order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100;
            }
            order.Site_id_pay = CurrentSite.id;
            B_Lebi_Order.Update(order);
            Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id);

            business  = pay.UserName;
            OrderCode = order.Code;
            Pid       = order.Code;
            currency  = pay.Currency_Code;
            terminal  = pay.terminal;
            Money     = (order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100))).ToString("0.00");
            Shop.Bussiness.Site site = new Shop.Bussiness.Site();
            ReturnUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/qianhai/ReturnUrl.aspx";

            billing_firstName = RequestTool.RequestSafeString("billing_firstName");
            billing_lastName  = RequestTool.RequestSafeString("billing_lastName");
            billing_email     = RequestTool.RequestSafeString("billing_email");
            billing_phone     = RequestTool.RequestSafeString("billing_phone");
            billing_country   = RequestTool.RequestSafeString("billing_country");
            billing_city      = RequestTool.RequestSafeString("billing_city");
            billing_address   = RequestTool.RequestSafeString("billing_address");
            billing_zip       = RequestTool.RequestSafeString("billing_zip");



            //account+terminal+backUrl+order_number+order_currency+order_amount+billing_firstName+billing_lastName+billing_email+secureCode
            scode = pay.UserName + pay.terminal + ReturnUrl + order.Code + currency + Money + billing_firstName + billing_lastName + billing_email + pay.UserKey;
            scode = GetSHA256(scode).ToUpper();

            if (CurrentSite != null)
            {
                if (CurrentSite.IsMobile == 1)
                {
                    pages = 1;//1手机端
                }
            }
        }
示例#20
0
        public static void AddMoney(Lebi_User user, decimal money, int type, Lebi_Order order, Lebi_Administrator admin, string description, string remark, bool fanxian = true)
        {
            if (money == 0)
            {
                return;
            }
            if (type == 192 || type == 193)
            {
                if (money > 0)
                {
                    money = 0 - money;
                }
            }
            Lebi_User_Money mo = new Lebi_User_Money();

            if (admin != null)
            {
                mo.Admin_id       = admin.id;
                mo.Admin_UserName = admin.UserName;
            }
            mo.Money = money;
            mo.Type_id_MoneyStatus = 181;
            mo.Type_id_MoneyType   = type;
            mo.User_id             = user.id;
            mo.User_UserName       = user.UserName;
            mo.User_RealName       = user.RealName;
            mo.Description         = description;
            mo.Remark = remark;
            if (order != null)
            {
                mo.Order_id    = order.id;
                mo.Order_Code  = order.Code;
                mo.Order_PayNo = order.PayNo;
            }
            //string money_ = B_Lebi_User_Money.GetValue("sum(Money)", "User_id=" + user.id + " and Type_id_MoneyStatus=181");
            //decimal Money = 0;
            //Decimal.TryParse(money_, out Money);
            if (type == 195)//返现
            {
                user.Money_fanxian = user.Money_fanxian + money;
            }
            if (type == 192 && fanxian == true)//消费
            {
                user.Money_fanxian = user.Money_fanxian + money;
                if (user.Money_fanxian < 0)
                {
                    user.Money_fanxian = 0;
                }
            }
            user.Money = user.Money + money;
            B_Lebi_User.Update(user);
            mo.Money_after         = user.Money;
            mo.Money_fanxian_after = user.Money_fanxian;
            B_Lebi_User_Money.Add(mo);
            //发送短信
            SMS.SendSMS_balance(user);
            //APP推送
            APP.Push_balance(user);
        }
示例#21
0
        protected void Page_Load(object sender, EventArgs e)
        {
            SortedDictionary <string, string> sPara = GetRequestPost();
            //商户订单号
            string     out_trade_no = Request.QueryString["out_trade_no"];
            Lebi_Order order        = B_Lebi_Order.GetModel("Code=lbsql{'" + out_trade_no + "'}");

            if (order == null)
            {
                Response.Write("系统错误");
                Response.End();
                return;
            }
            if (sPara.Count > 0)//判断是否有带返回参数
            {
                Notify aliNotify    = new Notify(order);
                bool   verifyResult = aliNotify.Verify(sPara, Request.Form["notify_id"], Request.Form["sign"]);

                if (verifyResult)//验证成功
                {
                    /////////////////////////////////////////////////////////////////////////////////////////////////////////////
                    //请在这里加上商户的业务逻辑程序代码


                    //——请根据您的业务逻辑来编写程序(以下代码仅作参考)——
                    //获取支付宝的通知返回参数,可参考技术文档中服务器异步通知参数列表

                    //商户订单号

                    //string out_trade_no = Request.Form["out_trade_no"];

                    //支付宝交易号

                    string trade_no = Request.Form["trade_no"];

                    //交易状态
                    string trade_status = Request.Form["trade_status"];


                    //判断是否在商户网站中已经做过了这次通知返回的处理
                    //如果没有做过处理,那么执行商户的业务程序
                    //如果有做过处理,那么不执行商户的业务程序

                    Response.Write("success");  //请不要修改或删除

                    //——请根据您的业务逻辑来编写程序(以上代码仅作参考)——
                    Order.OnlinePaySuccess("alipayHaiWai", out_trade_no, trade_no);
                    /////////////////////////////////////////////////////////////////////////////////////////////////////////////
                }
                else//验证失败
                {
                    Response.Write("fail");
                }
            }
            else
            {
                Response.Write("无通知参数");
            }
        }
示例#22
0
        public Submit(Lebi_Order order)
        {
            Config config = new Config(order);

            _key           = config.Key.Trim();
            _input_charset = config.Input_charset.Trim().ToLower();
            _sign_type     = config.Sign_type.Trim().ToUpper();
        }
示例#23
0
        protected void Page_Load(object sender, EventArgs e)
        {
            int order_id = RequestTool.RequestInt("order_id", 0);

            order = B_Lebi_Order.GetModel(order_id);
            if (order == null)
            {
                Response.Write("ERROR");
                Response.End();
                return;
            }
            Lebi_Language language = B_Lebi_Language.GetModel(order.Language_id);

            if (order.IsPaid == 1)
            {
                Response.Write(Language.Tag("已付款", language.Code));
                Response.End();
                return;
            }
            order.Site_id_pay = CurrentSite.id;
            order.Language_id = CurrentLanguage.id;
            Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "qianhai");

            if (pay == null)
            {
                Response.Write("系统错误");
                Response.End();
                return;
            }
            if (pay.FreeFeeRate == 1)
            {
                pay.FeeRate = 0;
            }
            if (pay.FeeRate > 0)
            {
                order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100;
            }
            if (order.OnlinePay_id != pay.id)
            {
                order.OnlinePay_id   = pay.id;
                order.OnlinePay_Code = pay.Code;
                order.OnlinePay      = pay.Name;
            }
            B_Lebi_Order.Update(order);
            Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id);

            business = pay.UserName;


            currency = pay.Currency_Code;
            Money    = (order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100))).ToString("f" + currendy.DecimalLength + "");

            Shop.Bussiness.Site site = new Shop.Bussiness.Site();
            ReturnUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/qianhai/ReturnUrl.aspx";

            //account+terminal+backUrl+order_number+order_currency+order_amount+billing_firstName+billing_lastName+billing_email+secureCode
            //scode = pay.UserName + "" + ReturnUrl + order.Code + pay.Currency_Code + Money + "" + "" + "" + pay.UserKey;
        }
示例#24
0
        /**
         *
         * 申请退款
         * @param WxPayData inputObj 提交给申请退款API的参数
         * @param int timeOut 超时时间
         * @throws WxPayException
         * @return 成功时返回接口调用结果,其他抛异常
         */
        public static WxPayData Refund(WxPayData inputObj, int timeOut = 6)
        {
            string     Order_Code = inputObj.GetValue("out_trade_no").ToString();
            Lebi_Order order      = B_Lebi_Order.GetModel("Code = lbsql{'" + Order_Code + "'}");

            if (order == null)
            {
                throw new WxPayException("订单不存在!");
            }
            WxPayConfig conf = new WxPayConfig(order);
            string      url  = "https://api.mch.weixin.qq.com/secapi/pay/refund";

            //检测必填参数
            if (!inputObj.IsSet("out_trade_no") && !inputObj.IsSet("transaction_id"))
            {
                throw new WxPayException("退款申请接口中,out_trade_no、transaction_id至少填一个!");
            }
            else if (!inputObj.IsSet("out_refund_no"))
            {
                throw new WxPayException("退款申请接口中,缺少必填参数out_refund_no!");
            }
            else if (!inputObj.IsSet("total_fee"))
            {
                throw new WxPayException("退款申请接口中,缺少必填参数total_fee!");
            }
            else if (!inputObj.IsSet("refund_fee"))
            {
                throw new WxPayException("退款申请接口中,缺少必填参数refund_fee!");
            }
            else if (!inputObj.IsSet("op_user_id"))
            {
                throw new WxPayException("退款申请接口中,缺少必填参数op_user_id!");
            }

            inputObj.SetValue("appid", conf.APPID);                                     //公众账号ID
            inputObj.SetValue("mch_id", conf.MCHID);                                    //商户号
            inputObj.SetValue("nonce_str", Guid.NewGuid().ToString().Replace("-", "")); //随机字符串
            inputObj.SetValue("sign", inputObj.MakeSign(order));                        //签名

            string xml   = inputObj.ToXml();
            var    start = DateTime.Now;

            ////SystemLog.Add("WxPayApi"+ "Refund request : " + xml);
            string response = HttpService.Post(xml, url, true, timeOut);//调用HTTP通信接口提交数据到API
            ////SystemLog.Add("WxPayApi"+ "Refund response : " + response);

            var end      = DateTime.Now;
            int timeCost = (int)((end - start).TotalMilliseconds);//获得接口耗时

            //将xml格式的结果转换为对象以返回
            WxPayData result = new WxPayData();

            result.FromXml(response);

            ReportCostTime(url, timeCost, result);//测速上报

            return(result);
        }
示例#25
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Dictionary <string, string> sPara = GetRequestGet();
            //商户订单号
            string     out_trade_no = Request.QueryString["out_trade_no"];
            Lebi_Order order        = B_Lebi_Order.GetModel("Code=lbsql{'" + out_trade_no + "'}");

            if (order == null)
            {
                Response.Write("系统错误");
                Response.End();
                return;
            }
            if (sPara.Count > 0)//判断是否有带返回参数
            {
                Notify aliNotify    = new Notify(order);
                bool   verifyResult = aliNotify.VerifyReturn(sPara, Request.QueryString["sign"]);

                if (verifyResult)//验证成功
                {
                    /////////////////////////////////////////////////////////////////////////////////////////////////////////////
                    //请在这里加上商户的业务逻辑程序代码


                    //——请根据您的业务逻辑来编写程序(以下代码仅作参考)——
                    //获取支付宝的通知返回参数,可参考技术文档中页面跳转同步通知参数列表

                    //商户订单号
                    //string out_trade_no = Request.QueryString["out_trade_no"];

                    //支付宝交易号
                    string trade_no = Request.QueryString["trade_no"];

                    //交易状态
                    string result = Request.QueryString["result"];


                    //判断是否在商户网站中已经做过了这次通知返回的处理
                    //如果没有做过处理,那么执行商户的业务程序
                    //如果有做过处理,那么不执行商户的业务程序
                    Order.OnlinePaySuccess(out_trade_no);
                    //打印页面
                    Response.Write("验证成功<br />");

                    //——请根据您的业务逻辑来编写程序(以上代码仅作参考)——

                    /////////////////////////////////////////////////////////////////////////////////////////////////////////////
                }
                else//验证失败
                {
                    Response.Write("验证失败");
                }
            }
            else
            {
                Response.Write("无返回参数");
            }
        }
示例#26
0
        /// <summary>
        /// 获得在线付款接口参数MODEL
        /// </summary>
        /// <param name="code"></param>
        /// <param name="order"></param>
        public static Lebi_OnlinePay GetOnlinePay(Lebi_Order order, string code)
        {
            if (order == null)
            {
                return(null);
            }
            string where = "Code='" + code + "'";
            if (string.IsNullOrEmpty(order.KeyCode))
            {
                if (order.IsSupplierCash == 0 && order.Language_id > 0)
                {
                    where += " and ','+Language_ids+',' like '%," + order.Language_id + ",%'";
                }
            }
            Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel(where);
            string         log = "";

            if (pay == null)
            {
                pay = B_Lebi_OnlinePay.GetModel("Code='" + code + "'");
            }
            if (pay == null)
            {
                log = "在线支付接口 " + code + " 配置错误";
                Log.Add(log);
            }
            else
            {
                if (order.IsSupplierCash == 1)
                {
                    Lebi_Supplier supplier = B_Lebi_Supplier.GetModel(order.Supplier_id);
                    if (supplier == null)
                    {
                        supplier = new Lebi_Supplier();
                        log      = "在线支付接口 " + code + " 配置错误[供应商ID:" + order.Supplier_id + "]";
                        Log.Add(log);
                        return(pay);
                    }
                    Lebi_OnlinePay supplierpay = B_Lebi_OnlinePay.GetModel("Code='" + code + "' and Supplier_id=" + supplier.id + "");
                    if (supplierpay == null)
                    {
                        log = "在线支付接口 " + code + " 配置错误[供应商:" + supplier.SubName + ",ID:" + order.Supplier_id + "]";
                        Log.Add(log);
                        return(pay);
                    }
                    supplierpay.TypeName      = pay.TypeName;
                    supplierpay.Url           = pay.Url;
                    supplierpay.Code          = pay.Code;
                    supplierpay.Currency_Code = pay.Currency_Code;
                    supplierpay.Currency_id   = pay.Currency_id;
                    supplierpay.Currency_Name = pay.Currency_Name;
                    return(supplierpay);
                }
            }
            return(pay);
        }
示例#27
0
        /// <summary>
        /// 构造函数
        /// 从配置文件中初始化变量
        /// </summary>
        /// <param name="inputPara">通知返回参数数组</param>
        /// <param name="notify_id">通知验证ID</param>
        public Notify(Lebi_Order order)
        {
            Config config = new Config(order);

            //初始化基础配置信息
            _partner       = config.Partner.Trim();
            _key           = config.Key.Trim();
            _input_charset = config.Input_charset.Trim().ToLower();
            _sign_type     = config.Sign_type.Trim().ToUpper();
        }
示例#28
0
        public Lebi_Order GetOrder(int id)
        {
            Lebi_Order Order = B_Lebi_Order.GetModel(id);

            if (Order == null)
            {
                Order = new Lebi_Order();
            }
            return(Order);
        }
示例#29
0
        public Lebi_Order getorder(int id)
        {
            Lebi_Order order = B_Lebi_Order.GetModel(id);

            if (order == null)
            {
                order = new Lebi_Order();
            }
            return(order);
        }
示例#30
0
        protected void Page_Load(object sender, EventArgs e)
        {
            int order_id = RequestTool.RequestInt("order_id", 0);

            order = B_Lebi_Order.GetModel(order_id);
            if (order == null)
            {
                Response.Write("ERROR");
                Response.End();
                return;
            }
            Lebi_Language language = B_Lebi_Language.GetModel(order.Language_id);

            if (order.IsPaid == 1)
            {
                Response.Write(Language.Tag("已付款", language.Code));
                Response.End();
                return;
            }
            order.Site_id_pay = CurrentSite.id;
            order.Language_id = CurrentLanguage.id;
            Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "molpay");

            if (pay == null)
            {
                Response.Write("系统错误");
                Response.End();
                return;
            }
            if (pay.FreeFeeRate == 1)
            {
                pay.FeeRate = 0;
            }
            if (pay.FeeRate > 0)
            {
                order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100;
            }
            if (order.OnlinePay_id != pay.id)
            {
                order.OnlinePay_id   = pay.id;
                order.OnlinePay_Code = pay.Code;
                order.OnlinePay      = pay.Name;
            }
            B_Lebi_Order.Update(order);
            business = pay.UserName;
            Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id);

            OrderCode = order.Code;
            mid       = pay.UserName;
            Money     = (order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100))).ToString("f" + currendy.DecimalLength + "");

            Shop.Bussiness.Site site = new Shop.Bussiness.Site();
            ReturnUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/paypal/ReturnUrl.aspx";
            vcode     = MOLMD5.Sign(Money + pay.UserName + order.Code + pay.UserKey);
        }