Explorar o código

微信pc端支付调整

wangshan %!s(int64=6) %!d(string=hai) anos
pai
achega
ace4eda224

+ 1 - 1
src/jfw/front/dataExport.go

@@ -272,7 +272,7 @@ func (d *DataExport) ToOrderDetail(orderCode string) error {
 	if orderCode != "" {
 		orderDetail = *public.Mysql.FindOne(tableName_order, queryMap, "", "")
 	}
-	log.Println("ToOrderDetail", orderCode, orderDetail)
+	//	log.Println("ToOrderDetail", orderCode, orderDetail)
 	if orderDetail["pay_money"] != nil {
 		orderDetail["pay_money"] = float64(orderDetail["pay_money"].(int64)) / 100
 	}

+ 27 - 17
src/jfw/front/ws_dataExport.go

@@ -5,6 +5,7 @@ import (
 	"fmt"
 	"jfw/config"
 	"jfw/jyutil"
+	"jfw/pay"
 	"jfw/public"
 	"jfw/wx"
 	"log"
@@ -38,7 +39,8 @@ func (w *WsDataExport) GetPayParm() error {
 	defer util.Catch()
 	userid := util.ObjToString(w.GetSession("userId"))
 	openid := util.ObjToString(w.GetSession("s_m_openid"))
-	id := util.SE.Decode4Hex(w.GetString("id"))
+	filterid := util.SE.Decode4Hex(w.GetString("filterid"))
+	id := w.GetString("id")
 	if userid == "" || openid == "" || id == "" {
 		log.Println("userid,id 有误!")
 		w.ServeJson(map[string]interface{}{
@@ -47,13 +49,12 @@ func (w *WsDataExport) GetPayParm() error {
 		return nil
 	}
 	token := w.GetString("token")
-	fmt.Println(userid, "---", id)
 	//查看创建过的预支付订单
 	Order := public.Mysql.FindOne("dataexport_order", map[string]interface{}{
 		"user_id":   userid,
-		"filter_id": id,
-	}, "prepay_id,order_code,order_money,id,prepay_time", "")
-	fmt.Println("Order:", Order)
+		"filter_id": filterid,
+		"id":        id,
+	}, "prepay_id,order_code,order_money,id,prepay_time,pay_way,out_trade_no", "")
 	if Order == nil {
 		log.Println("查不到订单!")
 		w.ServeJson(map[string]interface{}{
@@ -62,26 +63,34 @@ func (w *WsDataExport) GetPayParm() error {
 		return nil
 	}
 	prepayId := util.ObjToString((*Order)["prepay_id"])
-	if prepayId == "" {
-		log.Println("订单有误!")
-		w.ServeJson(map[string]interface{}{
-			"status": -2,
-		})
-		return nil
-	}
+	//	if prepayId == "" {
+	//		log.Println("订单有误!")
+	//		w.ServeJson(map[string]interface{}{
+	//			"status": -2,
+	//		})
+	//		return nil
+	//	}
+	pay_way := util.ObjToString((*Order)["pay_way"])
 	code := util.ObjToString((*Order)["order_code"])
 	orderid := util.Int64All((*Order)["id"])
 	orderMoney := util.IntAll((*Order)["order_money"])
 
-	realToken := public.GetWaitPayToken(orderid, orderMoney, code, "微信", userid)
-	if realToken != token {
-		log.Println("token错误!", userid, realToken, token, code, orderMoney, orderid)
+	realToken := public.GetWaitPayToken(orderid, orderMoney, code, pay_way, userid)
+	if realToken != token && pay_way == "wx_js" {
+		log.Println("token错误!", userid, realToken, token, code, orderMoney, orderid, pay_way)
 		return nil
 	}
 	prepayTime, err := time.ParseInLocation(util.Date_Full_Layout, util.ObjToString((*Order)["prepay_time"]), time.Local)
 	surplus_second := prepayTime.Unix() + 7200 - time.Now().Unix()
-	if err == nil && surplus_second <= 0 {
-		log.Println("订单过期,重新生成预订单!", userid)
+	if (err == nil && surplus_second <= 0) || prepayId == "" || pay_way != "wx_js" {
+		//在此关闭之前的订单
+		if !pay.CloseDataExportOrder(util.ObjToString((*Order)["pay_way"]), util.ObjToString((*Order)["out_trade_no"]), util.ObjToString((*Order)["prepay_time"])) {
+			w.ServeJson(map[string]interface{}{
+				"status": "n",
+			})
+			return nil
+		}
+		log.Println("订单过期或支付pc端订单,重新生成预订单!", userid)
 		tradeno, ret := public.WxStruct.CreatePrepayOrder(config.Sysconfig["weixinrpc"].(string), "c", w.IP(), openid, "", orderMoney)
 		if ret != nil {
 			now := time.Now()
@@ -91,6 +100,7 @@ func (w *WsDataExport) GetPayParm() error {
 				"prepay_time":  util.FormatDate(&now, util.Date_Full_Layout),
 				"prepay_id":    (*ret)["prepayid"],
 				"out_trade_no": tradeno,
+				"pay_way":      "wx_js",
 			}) {
 				prepayId = (*ret)["prepayid"]
 			}

+ 7 - 13
src/jfw/front/wxMyOrder.go

@@ -49,7 +49,6 @@ func (w *WxMyOrder) TestPay() error {
 	testBl := false
 	queryMap := map[string]interface{}{}
 	if userId != nil {
-		log.Println("usid:", userId)
 		queryMap["order_code"] = order_code
 		queryMap["user_id"] = userId
 		now := time.Now()
@@ -63,7 +62,6 @@ func (w *WxMyOrder) TestPay() error {
 	} else {
 		log.Println("userid为空")
 	}
-	log.Println("-----------", testBl, "-------------")
 	w.ServeJson(map[string]interface{}{
 		"testBl": testBl,
 	})
@@ -74,13 +72,11 @@ func (w *WxMyOrder) TestPay() error {
 func (w *WxMyOrder) GetOneMore() error {
 	defer util.Catch()
 	pageNum, _ := w.GetInteger("pageNum")
-	log.Println("pageNum:", pageNum)
 	tabType := w.GetString("tabType")
 	userId := w.Session().Get("userId")
 	openid := w.Session().Get("s_m_openid")
 	queryM := map[string]interface{}{}
 	nextPage := false
-	log.Println("user:", userId)
 	if userId == nil || openid == nil {
 		return errors.New("未登录")
 	} else {
@@ -101,7 +97,6 @@ func (w *WxMyOrder) GetOneMore() error {
 		//用于删除订单后 判断新增的订单之后 是否有下一页
 		nextPage = true
 	}
-	log.Println("res:", resData)
 
 	//start := (pageNum - 1) * pagesize_max
 	//resData := *public.Mysql.Find(tableName_order, queryM, "id,order_code,filter_publishtime,create_time,data_spec,filter_id,filter_keys,order_money,data_count,order_status", "create_time desc", start, 1)
@@ -124,7 +119,7 @@ func (w *WxMyOrder) GetOneMore() error {
 				v["order_money"] = float64(orderMoney.(int64)) / 100
 			}
 			if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 			}
 		}
 	}
@@ -211,7 +206,7 @@ func (w *WxMyOrder) MyOrder() error {
 				v["order_money"] = float64(orderMoney.(int64)) / 100
 			}
 			if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 			}
 		}
 	}
@@ -235,7 +230,6 @@ func (w *WxMyOrder) MyOrderPaging() error {
 	}
 	// 0全部 1未支付 2已支付
 	typ := w.GetString("type")
-	log.Println("type:", typ)
 	pageNum, _ := w.GetInteger("pageNum")
 	if typ != "0" && typ != "" {
 		var status string
@@ -268,7 +262,7 @@ func (w *WxMyOrder) MyOrderPaging() error {
 				v["order_money"] = float64(orderMoney.(int64)) / 100
 			}
 			if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 			}
 		}
 	}
@@ -354,12 +348,12 @@ func (w *WxMyOrder) WxToOrderDetail() error {
 		orderDetail["order_money"] = float64(orderMoney.(int64)) / 100
 	}
 	if orderDetail["id"] != nil && orderMoney != nil && orderDetail["order_code"] != nil {
-		orderDetail["token"] = public.GetWaitPayToken(orderDetail["id"].(int64), int(orderMoney.(int64)), orderDetail["order_code"].(string), "微信", userid)
+		orderDetail["token"] = public.GetWaitPayToken(orderDetail["id"].(int64), int(orderMoney.(int64)), orderDetail["order_code"].(string), util.ObjToString(orderDetail["pay_way"]), userid)
 	}
 	//加密
 	orderDetail["filter_id"] = util.SE.Encode2Hex(orderDetail["filter_id"].(string))
 	orderStatus := util.IntAll((orderDetail)["order_status"])
-	if orderStatus == 1 && util.ObjToString(orderDetail["pay_way"]) == "微信" {
+	if orderStatus == 1 && (util.ObjToString(orderDetail["pay_way"]) == "wx_js" || util.ObjToString(orderDetail["pay_way"]) == "wx_pc") {
 		//微信订单编号
 		wxPayMap := map[string]interface{}{}
 		wxPayMap["out_trade_no"] = orderDetail["out_trade_no"]
@@ -503,7 +497,7 @@ func (w *WxMyOrder) WxDeleteOrder() error {
 					v["order_money"] = float64(orderMoney.(int64)) / 100
 				}
 				if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-					v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+					v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 				}
 			}
 		}
@@ -519,7 +513,7 @@ func (w *WxMyOrder) WxDeleteOrder() error {
 }
 
 func (w *WxMyOrder) Datas(queryM map[string]interface{}, pageNum int) (haveNextPage bool, result []map[string]interface{}, err error) {
-	res := *public.Mysql.Find(tableName_order, queryM, "id,order_code,filter_publishtime,create_time,data_spec,filter_id,filter_keys,order_money,data_count,order_status", "create_time desc", -1, 0)
+	res := *public.Mysql.Find(tableName_order, queryM, "id,order_code,filter_publishtime,create_time,data_spec,filter_id,filter_keys,order_money,data_count,order_status,pay_way", "create_time desc", -1, 0)
 	if len(res) > 0 {
 		start := (pageNum - 1) * pagesize_max
 		end := pageNum * pagesize_max

+ 3 - 3
src/jfw/modules/app/src/app/front/myorder.go

@@ -184,7 +184,7 @@ func (m *MyOrder) QueryMyOrder() error {
 				v["order_money"] = float64(orderMoney.(int64)) / 100
 			}
 			if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 			}
 		}
 	}
@@ -238,7 +238,7 @@ func (m *MyOrder) MyOrderPaging() error {
 				v["order_money"] = float64(orderMoney.(int64)) / 100
 			}
 			if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+				v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 			}
 		}
 	}
@@ -438,7 +438,7 @@ func (m *MyOrder) DeleteOrder() error {
 					v["order_money"] = float64(orderMoney.(int64)) / 100
 				}
 				if v["id"] != nil && orderMoney != nil && v["order_code"] != nil {
-					v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), "微信", queryM["user_id"].(string))
+					v["token"] = public.GetWaitPayToken(v["id"].(int64), int(orderMoney.(int64)), v["order_code"].(string), v["pay_way"].(string), queryM["user_id"].(string))
 				}
 			}
 		}

+ 1 - 1
src/jfw/pay/aliPay.go

@@ -244,7 +244,7 @@ func (a *AliPayAction) PayCallback() {
 				"pay_money":    receipt_amount * 100,
 				"pay_time":     pay_time,
 				"order_status": 1,
-				"pay_way":      "支付宝",
+				"pay_way":      "ali_pc",
 				"download_url": download_url,
 			})
 			if changeOrderStatus {

+ 22 - 13
src/jfw/pay/dataExportPay.go

@@ -62,7 +62,7 @@ func (p *DataExportPayAction) WxSacnPay_CreateOrder() {
 	oldOrder := public.Mysql.FindOne("dataexport_order", map[string]interface{}{
 		"user_id":   userId,
 		"filter_id": id,
-	}, "id,order_status,order_code,order_money,user_mail,user_phone,data_spec,prepay_time,prepay_id", "")
+	}, "id,order_status,order_code,order_money,user_mail,user_phone,data_spec,prepay_time,prepay_id,pay_way,out_trade_no", "")
 	if oldOrder != nil {
 		if user_mail != "" && user_mail != util.ObjToString((*oldOrder)["user_mail"]) {
 			public.Mysql.Update("dataexport_order", map[string]interface{}{
@@ -103,6 +103,13 @@ func (p *DataExportPayAction) WxSacnPay_CreateOrder() {
 				"prepayId":  "prepay_id=" + util.ObjToString((*oldOrder)["prepay_id"]),
 			}
 		} else {
+			//在此关闭之前的订单
+			if !CloseDataExportOrder(util.ObjToString((*oldOrder)["pay_way"]), util.ObjToString((*oldOrder)["out_trade_no"]), util.ObjToString((*oldOrder)["prepay_time"])) {
+				p.ServeJson(map[string]interface{}{
+					"status": "n",
+				})
+				return
+			}
 			//价格变动需重新生预支付订单 更新原来得库的信息
 			data_count := public.GetDataExportSearchCountUseId(id)
 			if data_count > public.ExConf.MsgMaxCount {
@@ -150,12 +157,11 @@ func (p *DataExportPayAction) WxSacnPay_CreateOrder() {
 				"out_trade_no":   tradeno,
 			})
 			(*oldOrder)["order_money"] = order_money
-
 		}
 		p.ServeJson(map[string]interface{}{
 			"status": "y",
 			"code":   util.ObjToString((*oldOrder)["order_code"]),
-			"token":  public.GetWaitPayToken(util.Int64All((*oldOrder)["id"]), util.IntAll((*oldOrder)["order_money"]), util.ObjToString((*oldOrder)["order_code"]), "微信", userId),
+			"token":  public.GetWaitPayToken(util.Int64All((*oldOrder)["id"]), util.IntAll((*oldOrder)["order_money"]), util.ObjToString((*oldOrder)["order_code"]), pay_way, userId),
 			"res":    res,
 		})
 		return
@@ -276,6 +282,7 @@ func (p *DataExportPayAction) WxSacnPay_CreateOrder() {
 func (p *DataExportPayAction) SacnPay_WaitPay() error {
 	defer util.Catch()
 	openid, _ := p.GetSession("s_m_openid").(string)
+	userId, _ := p.GetSession("userId").(string)
 	code := p.GetString("code")
 	token := p.GetString("token")
 	surplus, money, qrcode, pay_way := func() (int64, int, string, string) {
@@ -295,7 +302,7 @@ func (p *DataExportPayAction) SacnPay_WaitPay() error {
 		orderMoney := util.IntAll((*data)["order_money"])
 		//orderMoney = 1
 		pay_way := util.ObjToString((*data)["pay_way"])
-		realToken := public.GetWaitPayToken(orderid, orderMoney, code, pay_way, openid)
+		realToken := public.GetWaitPayToken(orderid, orderMoney, code, pay_way, userId)
 		if realToken != token {
 			log.Println("token错误!", openid, realToken, token)
 			return 0, 0, "", ""
@@ -307,7 +314,7 @@ func (p *DataExportPayAction) SacnPay_WaitPay() error {
 			log.Println("二维码已失效,重新生成预订单!", openid)
 			surplus_second = 0
 			now := time.Now()
-			if pay_way == "微信" {
+			if pay_way == "wx_pc" {
 				tradeno, ret := public.WxStruct.CreatePrepayOrder(config.Sysconfig["weixinrpc"].(string), "b", p.IP(), openid, "", orderMoney)
 				if ret != nil {
 					if public.Mysql.Update("dataexport_order", map[string]interface{}{
@@ -322,7 +329,7 @@ func (p *DataExportPayAction) SacnPay_WaitPay() error {
 						codeUrl = util.ObjToString((*ret)["codeurl"])
 					}
 				}
-			} else if pay_way == "支付宝" {
+			} else if pay_way == "ali_pc" {
 				payOutTime := now.Add(time.Hour * 2)
 				if qr_url, tradeno, err := Alipay.GetPayUrl(util.Float64All(orderMoney), util.FormatDate(&payOutTime, util.Date_Full_Layout)); err == nil {
 					if public.Mysql.Update("dataexport_order", map[string]interface{}{
@@ -342,7 +349,7 @@ func (p *DataExportPayAction) SacnPay_WaitPay() error {
 		}
 		return surplus_second, orderMoney, codeUrl, pay_way
 	}()
-	if pay_way == "微信" {
+	if pay_way == "wx_pc" {
 		r, _ := qr.Encode(qrcode, qr.M)
 		pngdat := r.PNG()
 		qrcode = base64.StdEncoding.EncodeToString(pngdat)
@@ -388,7 +395,7 @@ func (p *DataExportPayAction) SacnPay_CreateOrder() {
 	oldOrder := public.Mysql.FindOne("dataexport_order", map[string]interface{}{
 		"user_id":   userId,
 		"filter_id": id,
-	}, "id,order_status,order_code,order_money,user_mail,user_phone,data_spec,prepay_time,prepay_id", "")
+	}, "id,order_status,order_code,order_money,user_mail,user_phone,data_spec,prepay_time,prepay_id,pay_way,out_trade_no", "")
 	if oldOrder != nil {
 		if user_mail != "" && user_mail != util.ObjToString((*oldOrder)["user_mail"]) {
 			public.Mysql.Update("dataexport_order", map[string]interface{}{
@@ -458,7 +465,7 @@ func (p *DataExportPayAction) SacnPay_CreateOrder() {
 			p.ServeJson(map[string]interface{}{
 				"status": "y",
 				"code":   util.ObjToString((*oldOrder)["order_code"]),
-				"token":  public.GetWaitPayToken(util.Int64All((*oldOrder)["id"]), util.IntAll((*oldOrder)["order_money"]), util.ObjToString((*oldOrder)["order_code"]), "微信", userId),
+				"token":  public.GetWaitPayToken(util.Int64All((*oldOrder)["id"]), util.IntAll((*oldOrder)["order_money"]), util.ObjToString((*oldOrder)["order_code"]), pay_way, userId),
 			})
 			return
 		}
@@ -586,12 +593,13 @@ func (p *DataExportPayAction) SacnPay_CreateOrder() {
 					"filter_keys":        filter_keys,
 					"filter_id":          id,
 					"pay_way":            pay_way,
+					"user_id":            userId, //20190719 移动端数据导出 生订单添加用户id
 				})
 				if orderid > 0 {
 					p.SetSession("DataExportVerifyPhone_val", user_phone)
 					result["status"] = "y"
 					result["code"] = ordercode
-					result["token"] = public.GetWaitPayToken(orderid, order_money, ordercode, pay_way, openId)
+					result["token"] = public.GetWaitPayToken(orderid, order_money, ordercode, pay_way, userId)
 				}
 			} else {
 				log.Println("生成支付宝预支付交易单失败")
@@ -646,7 +654,7 @@ func (p *DataExportPayAction) GetOrderPayMsg() {
 		if util.IntAll((*queryOrder)["order_status"]) != 0 {
 			return "", "订单状态异常", false
 		}
-		//在此关闭没有超时之前的订单
+		//在此关闭没有超时之前的订单 在pc端支付微信端订单,pay_way是wx_js 先进行关闭,再重新创建订单的时候,pay_way需要修改成wx_pc。
 		if !CloseDataExportOrder(util.ObjToString((*queryOrder)["pay_way"]), util.ObjToString((*queryOrder)["out_trade_no"]), util.ObjToString((*queryOrder)["prepay_time"])) {
 			return "", "订单关闭异常", false
 		}
@@ -656,7 +664,8 @@ func (p *DataExportPayAction) GetOrderPayMsg() {
 		codeUrl := ""
 		now := time.Now()
 		prepay_time = util.FormatDate(&now, util.Date_Full_Layout)
-		if pay_way == "wx_pc" {
+		if pay_way == "wx_pc" || pay_way == "wx_js" {
+			pay_way = "wx_pc" //pc端重生支付码 更新数据库
 			tradeno, ret := public.WxStruct.CreatePrepayOrder(config.Sysconfig["weixinrpc"].(string), "b", p.IP(), openid, "", orderMoney)
 			if ret != nil && (*ret)["status"] == "1" {
 				if public.Mysql.Update("dataexport_order", map[string]interface{}{
@@ -723,7 +732,7 @@ func CloseDataExportOrder(payWay, tradeno, prepayTime string) (status bool) {
 	if payWay == "ali_pc" {
 		status = Alipay.CloseOrder(tradeno)
 	}
-	if payWay == "wx_pc" {
+	if payWay == "wx_pc" || payWay == "wx_js" {
 		status = public.WxStruct.CloseOrder(config.Sysconfig["weixinrpc"].(string), tradeno)
 	}
 	if !status {

+ 6 - 6
src/web/templates/pc/createOrderPage.html

@@ -157,7 +157,7 @@
 	var finishEmailVerity=false;
 	var readClause=false;
 	var dataType=1;
-  var pay_way="weixin";
+  	var pay_way="wx_pc";
 	var finishPhoneVerity=false;
 	
 	var email_lastInput={{.T.email}}
@@ -384,18 +384,18 @@
     if(sessionStorage.getItem("order_payway"+{{.T._id}})!=null){
       pay_way=sessionStorage.getItem("order_payway"+{{.T._id}})  
     }
-    if(pay_way=="weixin"){
+    if(pay_way=="wx_pc"){
       $(".payway .wx").addClass("active");
-    }else if(pay_way=="alipay"){
+    }else if(pay_way=="ali_pc"){
       $(".payway .alipay").addClass("active");
     }
     //支付方式切换
     $(".payway>div").on("click",function(){
       $(this).addClass("active").siblings().removeClass("active");
       if($(this).hasClass("wx")){
-        pay_way="weixin"
+        pay_way="wx_pc"
       }else if($(this).hasClass("alipay")){
-        pay_way="alipay"
+        pay_way="ali_pc"
       }
     })
     
@@ -433,7 +433,7 @@
 			}
 			canpay=false;
 			var param={};
-      param.pay_way=pay_way;
+      		param.pay_way=pay_way;
 			param.data_spec=dataType==2?"senior":"standard";
 			param.id={{.T._id}}
 			

+ 7 - 2
src/web/templates/pc/myOrder.html

@@ -515,17 +515,22 @@
 				code = $(obj).attr("code");
 				prepaytime = $(obj).attr("time");
 				listIndex = $(obj).parents(".iner").parents("li").index()
-				if (!orderCode || !payway || !code || !price || !prepaytime) {
+				if (!orderCode || !payway  || !price || !prepaytime) {
 					return
 				}
 				var t = new Date(prepaytime).getTime() + 2 * 60 * 60 * 1000 - new Date().getTime()
-				if (t < 0) { //二维码超时
+				if (t < 0|| payway=="wx_js") { //二维码超时或者支付微信订单
 					$.post("/dataexport/getOrderPayMsg", {
 						payway: payway,
 						orderCode: orderCode,
 						prepaytime: prepaytime
 					}, function(r) {
 						if (r.success) {
+							if (payway=="wx_js"){
+								payway="wx_pc";
+								$(obj).attr("code",r.payUrl);
+								$(obj).attr("payway",payway);
+							}
 							showCode(payway, price, r.payUrl, r.prepay_time);
 							$(obj).attr("time", r.prepay_time).attr("code", r.payUrl);
 						}

+ 1 - 1
src/web/templates/pc/paysuccess.html

@@ -142,7 +142,7 @@
 		<div class="iner">
             <div class="clearfix">
                 <span class="fl">支付方式</span>
-                <span class="fr">{{.T.data.pay_way}}</span>
+                <span class="fr">{{if eq .T.data.pay_way "wx_pc"}}微信{{else if eq .T.data.pay_way "ali_pc"}}支付宝{{end}}</span>
             </div>
         </div>
         <div class="btn_" style="margin-top: 30px;">

+ 5 - 5
src/web/templates/pc/waitpay.html

@@ -131,24 +131,24 @@
             <div class="center clearfix">
                 <div class="fl">
 					<div style="position:relative;width: 300px;height: 300px;user-select: none;">
-            {{if eq .T.pay_way "微信"}}
+            {{if eq .T.pay_way "wx_pc"}}
 						  {{if .T.qrcode}}<img src="data:image/png;base64,{{.T.qrcode}}" style="width: 330px;position:relative;left:-15px;top:-15px;">{{end}}
             {{end}}
-            {{if eq .T.pay_way "支付宝"}}
+            {{if eq .T.pay_way "ali_pc"}}
               <iframe src={{.T.qrcode}} style="width: 330px;height:330px;border:none;padding-left: 25px;padding-top: 25px;">
               </iframe>
             {{end}}
 						<a style="border-radius:3px;position:absolute;left: 0;top:0px;border: 1px solid #ccc;width: 300px;height:300px;"></a>
 					</div>
                     <div style="text-align:left;font-size: 16px; color: #1d1d1d;padding-left: 30px;margin-top: 30px;">
-						<img src="{{Msg "seo" "cdn"}}/dataExport/image/wx_cm.jpg" style="vertical-align: middle;margin-right:10px;position: relative;top: -2px;"><span>使用手机{{.T.pay_way}}扫描二维码支付</span>
+						<img src="{{Msg "seo" "cdn"}}/dataExport/image/wx_cm.jpg" style="vertical-align: middle;margin-right:10px;position: relative;top: -2px;"><span>使用手机{{if eq .T.pay_way "wx_pc"}}微信{{else if eq .T.pay_way "ali_pc"}}支付宝{{end}}扫描二维码支付</span>
 					</div>
                 </div>
                 <div class="fr">
-                {{if eq .T.pay_way "微信"}}
+                {{if eq .T.pay_way "wx_pc"}}
                     <img src="{{Msg "seo" "cdn"}}/dataExport/image/phone_wx.png" alt="">
                 {{end}}
-                {{if eq .T.pay_way "支付宝"}}
+                {{if eq .T.pay_way "ali_pc"}}
                      <img src="{{Msg "seo" "cdn"}}/dataExport/image/phone_zfb.png" alt="">
                 {{end}}
                 </div>

+ 2 - 1
src/web/templates/weixin/dataExport/dataExport_payOrder.html

@@ -532,7 +532,7 @@
 					param.data_spec=dataType==2?"senior":"standard";
 					param.id={{.T._id}}
 					//先去创建预支付订单
-					$.post("/dataExport/sacnPay/createOrder",param,function(data){
+					$.post("/dataExport/wx_sacnPay/createOrder",param,function(data){
 						if(data.status=="y"){
 							sessionStorage.setItem("order_spec"+{{.T._id}}, dataType);
 							sessionStorage.setItem("order_email"+{{.T._id}}, $(".email_input").val().replace(/\s*/g,""));
@@ -563,6 +563,7 @@
 					},
 					function(r){
 				        if(r.err_msg == "get_brand_wcpay_request:ok"){
+							$(".toPay").attr("disabled","disabled");
 							var email_pay = sessionStorage.getItem("order_email"+{{.T._id}})
 							window.location.replace("/front/wx_dataExport/paySuccessPage?email="+email_pay+"&orderCode="+order_code+"&payTime="+res["timestamp"])
 						}else if(r.err_msg == "get_brand_wcpay_request:cancel"){

+ 4 - 3
src/web/templates/weixin/dataExport/dataExport_toMyOrder.html

@@ -196,11 +196,12 @@
 				var filterid = $(e).attr("filterid");
 				var token = $(e).attr("token");
 				var testid=$(e).parent().parent().children(".card-content").children(".media").attr("eid");
+				var id = $(e).attr("id");
 				if(isReqing){
 					return;
 				}
 				isReqing = true;
-				$.post("/front/wx_dataExport/getPayParm",{"id":filterid,"token":token},function(res){
+				$.post("/front/wx_dataExport/getPayParm",{"filterid":filterid,"id":id,"token":token},function(res){
 					isReqing = false;
 					var gopayIndex = $(e).parent().parent().index();
 					if(res.status == 1){
@@ -255,7 +256,7 @@
 										+'<div class="price"><strong class="current">¥'+res.order_money+'</strong>'
 										+'</div></div><div class="card-footer">'
 										+'<a class="btn cancle" onclick="deleteOrder('+res.id+',this)">取消购买</a>'
-										+'<a href="javascript:void(0)" onclick="goPay(this)" class="btn pay" filterid="'+res.filter_id+'" token="'+res.token+'">去支付</a></div></div>'
+										+'<a href="javascript:void(0)" onclick="goPay(this)" class="btn pay" filterid="'+res.filter_id+'" token="'+res.token+'" id="'+res.id+'">去支付</a></div></div>'
 					//	$(".card_lists").append(oneMHtml);
 						appendList($(oneMHtml));
 					}
@@ -796,7 +797,7 @@
 	                        	iconHtml+='<div class="card-footer">'
 											+'<a  class="btn cancle" onclick="deleteOrder('+id+',this)">取消购买</a>'
 											//+'<a  class="btn cancle" onclick="test()">取消购买</a>'
-											+'<a href="javascript:void(0)" onclick="goPay(this)" class="btn pay" filterid="'+obj.filter_id+'" token="'+token+'">去支付</a>'
+											+'<a href="javascript:void(0)" onclick="goPay(this)" class="btn pay" filterid="'+obj.filter_id+'" token="'+token+'" id="'+id+'">去支付</a>'
 										+'</div>'
 	                        }else if(orderStatus==1){
 	                        	orderStatus="已完成";