Kaynağa Gözat

微信端 我的订单支付

wangshan 6 yıl önce
ebeveyn
işleme
a4f5597289

+ 14 - 11
src/jfw/front/ws_dataExport.go

@@ -54,7 +54,7 @@ func (w *WsDataExport) GetPayParm() error {
 		"user_id":   userid,
 		"filter_id": filterid,
 		"id":        id,
-	}, "prepay_id,order_code,order_money,id,prepay_time,pay_way,out_trade_no", "")
+	}, "prepay_id,order_code,order_money,id,prepay_time,pay_way,out_trade_no,user_mail", "")
 	if Order == nil {
 		log.Println("查不到订单!")
 		w.ServeJson(map[string]interface{}{
@@ -71,13 +71,14 @@ func (w *WsDataExport) GetPayParm() error {
 	//		return nil
 	//	}
 	pay_way := util.ObjToString((*Order)["pay_way"])
-	code := util.ObjToString((*Order)["order_code"])
+	order_code := util.ObjToString((*Order)["order_code"])
 	orderid := util.Int64All((*Order)["id"])
 	orderMoney := util.IntAll((*Order)["order_money"])
+	user_mail := util.ObjToString((*Order)["user_mail"])
 
-	realToken := public.GetWaitPayToken(orderid, orderMoney, code, pay_way, userid)
+	realToken := public.GetWaitPayToken(orderid, orderMoney, order_code, pay_way, userid)
 	if realToken != token && pay_way == "wx_js" {
-		log.Println("token错误!", userid, realToken, token, code, orderMoney, orderid, pay_way)
+		log.Println("token错误!", userid, realToken, token, order_code, orderMoney, orderid, pay_way)
 		return nil
 	}
 	prepayTime, err := time.ParseInLocation(util.Date_Full_Layout, util.ObjToString((*Order)["prepay_time"]), time.Local)
@@ -110,13 +111,15 @@ func (w *WsDataExport) GetPayParm() error {
 	nonceStr := util.GetRandom(16) + util.GetLetterRandom(16)
 	sign := util.WxSign(fmt.Sprintf("appId=%s&nonceStr=%s&package=%s&signType=%s&timeStamp=%d&key=%s", public.WxStruct.Appid, nonceStr, "prepay_id="+prepayId, "MD5", timestamp, public.WxStruct.Key))
 	w.ServeJson(map[string]interface{}{
-		"status":    1,
-		"appId":     public.WxStruct.Appid,
-		"timestamp": fmt.Sprint(timestamp),
-		"signType":  "MD5",
-		"sign":      sign,
-		"nonceStr":  nonceStr,
-		"prepayId":  "prepay_id=" + prepayId,
+		"status":     1,
+		"appId":      public.WxStruct.Appid,
+		"timestamp":  fmt.Sprint(timestamp),
+		"signType":   "MD5",
+		"sign":       sign,
+		"nonceStr":   nonceStr,
+		"prepayId":   "prepay_id=" + prepayId,
+		"order_code": order_code,
+		"user_mail":  user_mail,
 	})
 	return nil
 }

+ 9 - 39
src/web/templates/weixin/dataExport/dataExport_toMyOrder.html

@@ -130,7 +130,9 @@
 				        if(r.err_msg == "get_brand_wcpay_request:ok"){
 							if(typ==1){
 								$(e).parent(".card-footer").parent(".card").remove();
-								getOneMore(gopayIndex);
+								if (gopayIndex>-1){
+									getOneMore(gopayIndex);
+								}
 							}else{
 								//typ=0 更改 显示已完成 
 								$(e).parent(".card-footer").parent(".card").children(".card-header").children(".status").html('<span class="status " style="color:#1d1d1d">已完成</span>');
@@ -145,6 +147,10 @@
 									sessionStorage.setItem("payMsg",JSON.stringify(payArr));
 								}
 							}
+							setTimeout(function(){
+								setSessionStorage();
+								window.location.href="/front/wx_dataExport/paySuccessPage?email="+res["user_mail"]+"&orderCode="+res["order_code"]+"&payTime="+res["timestamp"];
+							},1000)
 						}else if(r.err_msg == "get_brand_wcpay_request:cancel"){
 							//取消支付 可以再次支付
 							canpay=true;
@@ -154,44 +160,9 @@
 					}
 				});
 			}
-			
-			/*---------------------------------测试模拟去支付  开始----------------------------------------------*/
-			
-			function testPay(orderCode,e){
-				$.ajax({
-						type:'post',
-						url:'/weixin/pay/testPay',
-						data:{"orderCode":orderCode},
-						dataType:'json', 
-					 	success:function(data){
-									if(data.testBl){
-										var gopayIndex = $(e).parent().parent().index();
-										if(typ==1){
-											$(e).parent(".card-footer").parent(".card").remove();
-											getOneMore(gopayIndex);
-										}else{
-											//typ=0 更改 显示已完成 
-											$(e).parent(".card-footer").parent(".card").children(".card-header").children(".status").html('<span class="status " style="color:#1d1d1d">已完成</span>');
-											$(e).parent(".card-footer").html('<a href="/front/wx_dataExport/toSieve" class="btn cancle">再次购买</a>');
-											//支付过的订单 存入缓存 便于 更新数据
-											if(JSON.parse(sessionStorage.getItem("payMsg"))){
-												var pa =JSON.parse(sessionStorage.getItem("payMsg"));
-												pa.push(gopayIndex);
-												sessionStorage.setItem("payMsg",JSON.stringify(pa));
-											}else{
-												payArr.push(gopayIndex);
-												sessionStorage.setItem("payMsg",JSON.stringify(payArr));
-											}
-										}
-									}else{
-										alert("支付失败!")
-									}
-								}
-					})
-			}
-			/*---------------------------------测试模拟去支付  结束----------------------------------------------*/
 			//
 			var isReqing = false;
+			var gopayIndex = 0;
 			function goPay(e){
 				var filterid = $(e).attr("filterid");
 				var token = $(e).attr("token");
@@ -203,10 +174,9 @@
 				isReqing = true;
 				$.post("/front/wx_dataExport/getPayParm",{"filterid":filterid,"id":id,"token":token},function(res){
 					isReqing = false;
-					var gopayIndex = $(e).parent().parent().index();
+					gopayIndex = $(e).parent().parent().index();
 					if(res.status == 1){
 						onBridgeReady(res,e);
-						//testPay(testid,e);
 					}
 				});
 			}