//支付成功时执行的操作 private void PayOrder_Success(WxPayData result) { ZLLog.L(ZLEnum.Log.pay, PayPlat + " 支付单:" + result.GetValue("out_trade_no") + " 金额:" + result.GetValue("total_fee")); try { M_Order_PayLog paylogMod = new M_Order_PayLog(); M_Payment pinfo = payBll.SelModelByPayNo(result.GetValue("out_trade_no").ToString()); if (pinfo == null) { throw new Exception("支付单不存在"); } //支付单检测合为一个方法 if (pinfo.Status != (int)M_Payment.PayStatus.NoPay) { throw new Exception("支付单状态不为未支付"); } pinfo.Status = (int)M_Payment.PayStatus.HasPayed; pinfo.PlatformInfo = PayPlat; pinfo.SuccessTime = DateTime.Now; pinfo.PayTime = DateTime.Now; pinfo.CStatus = true; //1=100, double tradeAmt = Convert.ToDouble(result.GetValue("total_fee")) / 100; pinfo.MoneyTrue = tradeAmt; payBll.Update(pinfo); DataTable orderDT = orderBll.GetOrderbyOrderNo(pinfo.PaymentNum); foreach (DataRow dr in orderDT.Rows) { M_OrderList orderMod = orderBll.SelModelByOrderNo(dr["OrderNo"].ToString()); OrderHelper.FinalStep(pinfo, orderMod, paylogMod); //if (orderMod.Ordertype == (int)M_OrderList.OrderEnum.Purse) //{ // M_UserInfo mu = buser.SelReturnModel(orderMod.Userid); // new B_Shop_MoneyRegular().AddMoneyByMin(mu, orderMod.Ordersamount, ",订单号[" + orderMod.OrderNo + "]"); //} orderCom.SendMessage(orderMod, paylogMod, "payed"); //orderCom.SaveSnapShot(orderMod); //发送微信消息 B_UserAPP userappBll = new B_UserAPP(); M_UserAPP userappMod = new M_UserAPP(); M_UserInfo mu = buser.GetUserByUserID(orderMod.Userid); userappMod = userappBll.SelModelByUid(mu.UserID, "wechat"); if (userappMod != null) { WxAPI wxapi = WxAPI.Code_Get(1); string json = "{\"first\":{\"value\":\"您已成功支付" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#000\"},\"DateTime\":{\"value\":\"" + DateTime.Now.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"PayAmount\":{\"value\":\"" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#173177\"},\"remark\":{\"value\":\"您的订单已成功付款!订单号:" + orderMod.OrderNo + "\",\"color\":\"#173177\"}}"; wxapi.Tlp_SendTlpMsg(userappMod.OpenID, "jAP4eGIOPvCdg33KBVDcClxRGYNNgcUpmHlVdO_FRV0", SiteConfig.SiteInfo.SiteUrl + "/User/Order/OrderProList?OrderNo=" + orderMod.OrderNo, json); } } ZLLog.L(ZLEnum.Log.pay, PayPlat + "成功!支付单:" + result.GetValue("out_trade_no").ToString()); } catch (Exception ex) { ZLLog.L(ZLEnum.Log.pay, new M_Log() { Action = "支付回调报错", Message = PayPlat + ",支付单:" + result.GetValue("out_trade_no").ToString() + ",原因:" + ex.Message }); } }
protected void Send_B_Click(object sender, EventArgs e) { M_WXTlp tlpMod = api.Tlp_GetTlpByID(TlpID); string url = Url_T.Text; //{"first": {"value":"恭喜你购买成功!","color":"#173177" },"keynote1":{"value":"巧克力","color":"#173177" },..} string data = "{"; List <string> paraNames = api.Tlp_GetTlpParaNames(tlpMod.content); for (int i = 0; i < paraNames.Count; i++) { data += "\"" + paraNames[i] + "\":{\"value\":\"" + Request.Form[paraNames[i]] + "\",\"color\":\"" + Request.Form["col_" + paraNames[i]] + "\"},"; } data = data.Trim(',') + "}"; function.WriteErrMsg(data); api.Tlp_SendTlpMsg(api.AppId.APPID, TlpID, url, data); }
protected void Page_Load(object sender, EventArgs e) { B_User.CheckIsLogged(Request.RawUrl); if (!IsPostBack) { int num = 1; M_OrderList orderMod = orderBll.SelReturnModel(Oid); M_UserInfo frommu = buser.SelReturnModel(orderMod.Userid); M_UserInfo mu = buser.GetLogin(false); //检测订单是否可借 if (orderMod == null) { HttpContext.Current.Response.Write("<script>alert('订单不存在')</script>"); } if (orderMod.Ordertype != (int)M_OrderList.OrderEnum.Fast) { HttpContext.Current.Response.Write("<script>alert('订单不可操作')</script>"); } if (orderMod.OrderStatus != 0) { HttpContext.Current.Response.Write("<script>alert('订单状态不正确')</script>"); } if (mu.UserID == orderMod.Userid) { HttpContext.Current.Response.Write("<script>alert('不可转借给本人')</script>"); } //=================================检测是否符合条件 double money = Unbrealla.T_CheckForegift(mu, num); //---------需要充值押金 string json = JsonHelper.GetJson("oid,action".Split(','), (orderMod.id + ",ue_lenttouser").Split(',')); if (money > 0) { M_OrderList foreMod = Unbrealla.H_NewFGOrder(mu, money); foreMod.StoreID = orderMod.StoreID; M_Payment forePay = Unbrealla.H_NewFGPayment(foreMod); forePay.SysRemark = json; orderBll.insert(foreMod); payBll.Add(forePay); Response.Redirect("/PayOnline/wxpay_mp.aspx?payno=" + forePay.PayNo); return; } //---------余额必须为正数,否则必须充值 if (mu.Purse <= 0) { //9,19,50,100 M_OrderList chargeMod = orderBll.NewOrder(mu, M_OrderList.OrderEnum.Purse); chargeMod.Ordersamount = 9; chargeMod.StoreID = orderMod.StoreID; M_Payment payMod = payBll.CreateByOrder(chargeMod); payMod.SysRemark = json; payMod.Remark += "充值" + chargeMod.Ordersamount.ToString("F2") + "元"; orderBll.insert(chargeMod); payMod.PaymentID = payBll.Add(payMod); Response.Redirect("/PayOnline/wxpay_mp.aspx?payno=" + payMod.PayNo); return; } //================================= //终止上一份订单,并生成新的转借订单 orderMod.Ordermessage = "转借"; Unbrealla.FinalOrder(orderMod); //创建新的订单 M_OrderList newMod = orderBll.NewOrder(mu, M_OrderList.OrderEnum.Fast); newMod.Balance_remark = orderMod.Balance_remark; newMod.Promoter = frommu.UserID; newMod.StoreID = orderMod.StoreID; newMod.Extend = DateTime.Now.ToString(); newMod.id = orderBll.insert(newMod); //新用户 mu = buser.GetLogin(false); if (mu.PageID == 0) { buser.AddMoney(orderMod.Userid, 5, M_UserExpHis.SType.Purse, "新用户转借奖励,订单[" + newMod.id + "]"); mu.PageID = 1; buser.UpdateByID(mu); WxAPI wxapi = WxAPI.Code_Get(); M_UserAPP appMod = appBll.SelModelByUid(orderMod.Userid, "wechat"); if (appMod != null && !string.IsNullOrEmpty(appMod.OpenID)) { string tlp1 = "{\"first\": {\"value\":\"奖励到帐提醒\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + orderMod.OrderNo + "\",\"color\":\"#173177\"},\"keyword2\":{\"value\":\"" + DateTime.Now.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#173177\"},\"remark\":{\"value\":\"转借5元奖励已到账,该奖励可提现,请注意查收账户内余额\",\"color\":\"#173177\"}}"; wxapi.Tlp_SendTlpMsg(appMod.OpenID, "dlAIEAkV0lgDfc7-RYsdLVFMyP9UF7gHi_9kjPblVAU", ZoomLa.Components.SiteConfig.SiteInfo.SiteUrl + "/BU/UE/MyLend.aspx", tlp1); } } HttpContext.Current.Response.Write("<script>alert('操作成功')</script>"); Response.Redirect("/BU/UE/MyLend.aspx"); } }
//支付成功时执行的操作 private void PayOrder_Success(WxPayData result) { ZLLog.L(ZLEnum.Log.pay, "微信:微信支付 支付单:" + result.GetValue("out_trade_no") + " 金额:" + result.GetValue("total_fee")); try { M_Order_PayLog paylogMod = new M_Order_PayLog(); M_Payment pinfo = payBll.SelModelByPayNo(result.GetValue("out_trade_no").ToString()); if (pinfo == null) { throw new Exception("支付单不存在"); } //支付单检测合为一个方法 if (pinfo.Status != (int)M_Payment.PayStatus.NoPay) { throw new Exception("支付单状态不为未支付"); } pinfo.Status = (int)M_Payment.PayStatus.HasPayed; pinfo.PlatformInfo = "微信扫码|公众号支付"; pinfo.SuccessTime = DateTime.Now; pinfo.PayTime = DateTime.Now; pinfo.CStatus = true; //1=100, double tradeAmt = Convert.ToDouble(result.GetValue("total_fee")) / 100; pinfo.MoneyTrue = tradeAmt; payBll.Update(pinfo); DataTable orderDT = orderBll.GetOrderbyOrderNo(pinfo.PaymentNum); foreach (DataRow dr in orderDT.Rows) { M_OrderList orderMod = orderBll.SelModelByOrderNo(dr["OrderNo"].ToString()); OrderHelper.FinalStep(pinfo, orderMod, paylogMod); if (orderMod.Ordertype == (int)M_OrderList.OrderEnum.Purse) { M_UserInfo mu = buser.SelReturnModel(orderMod.Userid); new B_Shop_MoneyRegular().AddMoneyByMin(mu, orderMod.Ordersamount, ",订单号[" + orderMod.OrderNo + "]"); } orderCom.SendMessage(orderMod, paylogMod, "payed"); //orderCom.SaveSnapShot(orderMod); if (orderMod.Ordertype != 6) { buser.ChangeVirtualMoney(orderMod.Userid, new M_UserExpHis() { score = orderMod.Ordersamount, ScoreType = 3, detail = "在线消费赠送积分:" + orderMod.Ordersamount }); } //订单返利 OrderRebates(orderMod.Userid, orderMod.Ordersamount); //订单打印 int orderID = DataConvert.CLng(dr["ID"].ToString()); int StoreID = DataConvert.CLng(dr["StoreID"].ToString()); int devID = GetPrintDevice(StoreID); //设备ID int tlpID = GetPrintModelID(StoreID); //模板ID int printnum = GetPrintNum(StoreID); //------------------------------ DataTable orderDT1 = DBCenter.Sel("ZL_OrderInfo", "ID=" + orderID); M_Shop_PrintTlp tlpMod = tlpBll.SelReturnModel(tlpID); M_Shop_PrintDevice devMod = devBll.SelReturnModel(devID); string msg = orderCOM.TlpDeal(tlpMod.Content, orderDT1); ZLLog.L(ZLEnum.Log.pay, msg); msgBll.Insert(msg, tlpMod.ID, devMod, printnum); //function.WriteSuccessMsg("信息已发送", "MessageList.aspx"); //发送微信通知 try { userappMod = userappBll.SelModelByUid(DataConvert.CLng(dr["UserID"]), "wechat"); if (userappMod != null) { WxAPI wxapi = WxAPI.Code_Get(1); if (dr["Ordertype"].ToString() == "6") { M_UserInfo userMod = buser.GetUserByUserID(DataConvert.CLng(dr["UserID"])); wxapi.Tlp_SendTlpMsg(userappMod.OpenID, "vRUiDj-k6EGjwQC2GO4oU1G37CJjiu2fZ-ePBj1jJ60", "http://v.wodian8.com/User/Order/OrderList1.aspx", "{\"first\": {\"value\":\"您好,您已经充值成功。\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + DataConvert.CDouble(dr["Ordersamount"]).ToString("0.00") + "\",\"color\":\"#173177\"},\"keyword2\": {\"value\":\"" + DateTime.Now.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + userMod.Purse.ToString("0.00") + "\",\"color\":\"#173177\"},\"remark\":{\"value\":\"感谢您对我们的信任,我们将为您提供更优质的服务。\",\"color\":\"#173177\"}}"); } else { wxapi.Tlp_SendTlpMsg(userappMod.OpenID, "E-yWv8GVKeJHymtTB0zOGKnEv6LXodjr-M6tj1sLzfM", "http://v.wodian8.com/User/Order/OrderList1.aspx", "{\"first\": {\"value\":\"您的订单支付成功!\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + dr["OrderNo"].ToString() + "\",\"color\":\"#173177\"},\"keyword2\": {\"value\":\"" + GetProname(DataConvert.CLng(dr["ID"])) + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + DataConvert.CDouble(dr["Ordersamount"]).ToString("0.00") + "\",\"color\":\"#173177\"},\"keyword4\": {\"value\":\"" + DateTime.Now.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"remark\":{\"value\":\"点击查看订单详情!\",\"color\":\"#173177\"}}"); } } } catch (Exception ex) { ZLLog.L(ZLEnum.Log.pay, new M_Log() { Action = "发送微信通知报错", Message = "原因:" + ex.Message }); throw; } } ZLLog.L(ZLEnum.Log.pay, "微信支付成功!支付单:" + result.GetValue("out_trade_no").ToString()); } catch (Exception ex) { ZLLog.L(ZLEnum.Log.pay, new M_Log() { Action = "支付回调报错", Message = "平台:微信,支付单:" + result.GetValue("out_trade_no").ToString() + ",原因:" + ex.Message }); } }
protected void RPT_ItemCommand(object source, RepeaterCommandEventArgs e) { WxAPI wxapi = WxAPI.Code_Get(); int oid = DataConvert.CLng(e.CommandArgument); M_OrderList orderMod = orderBll.SelReturnModel(oid); M_UserAPP appMod = appBll.SelModelByUid(orderMod.Userid, "wechat"); M_UserAPP appMod2 = appBll.SelModelByUid(storeMod.UserID, "wechat"); string tlpid = "dlAIEAkV0lgDfc7-RYsdLVFMyP9UF7gHi_9kjPblVAU"; switch (e.CommandName) { case "return": //确认归还 { Unbrealla.FinalOrder(orderMod); if (appMod != null && !string.IsNullOrEmpty(appMod.OpenID)) { string json = "{\"first\": {\"value\":\"还伞成功通知\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + orderMod.OrderNo + "\",\"color\":\"#173177\"},\"keyword2\":{\"value\":\"" + orderMod.AddTime.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#173177\"},\"remark\":{\"value\":\"您已还伞成功,如需继续借伞,请扫描借伞点二维码进行借伞!\",\"color\":\"#173177\"}}"; string r = wxapi.Tlp_SendTlpMsg(appMod.OpenID, tlpid, ZoomLa.Components.SiteConfig.SiteInfo.SiteUrl + "/BU/UE/MyLend.aspx", json); } if (appMod2 != null && !string.IsNullOrEmpty(appMod2.OpenID)) { string json1 = "{\"first\": {\"value\":\"还伞成功通知\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + orderMod.OrderNo + "\",\"color\":\"#173177\"},\"keyword2\":{\"value\":\"" + orderMod.AddTime.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#173177\"},\"remark\":{\"value\":\"用户已还伞成功!\",\"color\":\"#173177\"}}"; wxapi.Tlp_SendTlpMsg(appMod2.OpenID, tlpid, ZoomLa.Components.SiteConfig.SiteInfo.SiteUrl + "/Class_2/NodePage.aspx", json1); } //更新库存 string sql = "select * from ZL_Commodities where UserShopID=" + orderMod.StoreID; DataTable dt = SqlHelper.ExecuteTable(CommandType.Text, sql); if (dt.Rows.Count > 0) { M_Product proMod = proBll.GetproductByid(DataConvert.CLng(dt.Rows[0]["ID"])); proMod.Stock = proMod.Stock + 1; proBll.UpdateByID(proMod); } } break; case "cancel": //取消归还 { DBCenter.UpdateSQL(orderMod.TbName, "OrderStatus=0", "ID=" + oid + " AND OrderStatus=-1"); } break; case "repair": //坏伞回收 { Unbrealla.FinalOrder(orderMod); string json = "{\"first\": {\"value\":\"还伞成功通知\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + orderMod.OrderNo + "\",\"color\":\"#173177\"},\"keyword2\":{\"value\":\"" + orderMod.AddTime.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#173177\"},\"remark\":{\"value\":\"您已还伞成功,如需继续借伞,请扫描借伞点二维码进行借伞!\",\"color\":\"#173177\"}}"; Unbrealla.SendWXNotify(appMod, tlpid, "/BU/UE/MyLend.aspx", json); json = "{\"first\": {\"value\":\"还伞成功通知\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"" + orderMod.OrderNo + "\",\"color\":\"#173177\"},\"keyword2\":{\"value\":\"" + orderMod.AddTime.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#173177\"},\"keyword3\": {\"value\":\"" + orderMod.Ordersamount.ToString("0.00") + "元\",\"color\":\"#173177\"},\"remark\":{\"value\":\"用户已还伞成功,请等待公司工作人员收取坏伞!\",\"color\":\"#173177\"}}"; Unbrealla.SendWXNotify(appMod2, tlpid, "/Class_2/NodePage.aspx", json); } break; case "cancel_repair": //取消报修申请,返还余额 { double money = orderMod.Specifiedprice; orderMod.IsCount = false; orderMod.Internalrecords = ""; orderMod.Specifiedprice = 0; orderMod.OrderStatus = 0; orderBll.UpdateByID(orderMod); buser.AddMoney(orderMod.Userid, money, M_UserExpHis.SType.Purse, "取消报修,返还预扣余额[" + orderMod.id + "]"); } break; } MyBind(); }