Procházet zdrojové kódy

线上缴费v1.0.1(优化订单列表继续支付,判断订单列表获取失败提示框)

před 4 roky
rodič
revize
a1e4bd51a8

+ 2 - 0
pages/Pay/css/pay.css

@@ -18,6 +18,7 @@
 
 .container::-webkit-scrollbar-track {
   -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
   border-radius: 10px;
   background-color: #f5f5f5;
 }
@@ -25,6 +26,7 @@
 .container::-webkit-scrollbar-thumb {
   border-radius: 10px;
   -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
   background-color: #555;
 }
 

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 1 - 1
pages/Pay/css/pay.min.css


+ 2 - 0
pages/Pay/css/pay.scss

@@ -15,12 +15,14 @@
     }
     &::-webkit-scrollbar-track {
         -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+        box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
         border-radius: 10px;
         background-color: #f5f5f5;
     }
     &::-webkit-scrollbar-thumb {
         border-radius: 10px;
         -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+        box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
         background-color: #555;
     }
     .order {

+ 60 - 91
pages/order/css/order.css

@@ -272,120 +272,89 @@
   color: #333333;
 }
 
-.container .leaveMess {
+.container .messageCard {
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
   position: absolute;
-  top: 301rpx;
+  top: 125rpx;
   left: 50%;
-  transform: translateX(-325rpx);
-  z-index: 5;
-  width: 650rpx;
-  height: 732rpx;
-  background: #ffffff;
+  transform: translateX(-350rpx);
+  width: 700rpx;
+  height: 1000rpx;
   box-shadow: 0rpx 0rpx 13rpx 0rpx rgba(0, 0, 0, 0.29);
-  border-radius: 10rpx;
-  overflow: hidden;
-  box-sizing: border-box;
-}
-
-.container .leaveMess .top {
-  display: flex;
-  justify-content: space-between;
-  width: 650rpx;
-  height: 90rpx;
-  background: #e7eef5;
-  line-height: 90rpx;
-}
-
-.container .leaveMess .top text {
-  width: 161rpx;
-  height: 90rpx;
-  margin-left: 35rpx;
-  line-height: 90rpx;
-  font-size: 32rpx;
-  color: #333333;
+  background: #fff;
+  border-radius: 14rpx;
+  z-index: 4;
 }
 
-.container .leaveMess .top .close {
-  position: relative;
-  width: 120rpx;
-  height: 80rpx;
-  background: #e7eef5;
+.container .messageCard .item-form {
+  width: 618rpx;
+  height: 800rpx;
+  margin: 0 auto;
+  overflow: scroll;
 }
 
-.container .leaveMess .top .close .image {
-  position: absolute;
-  top: 40%;
-  left: 50%;
-  width: 18rpx;
-  height: 18rpx;
-  background-image: url(../../static/images/close.png);
-  background-size: 100%;
+.container .messageCard .item-form::-webkit-scrollbar {
+  display: none;
 }
 
-.container .leaveMess .name,
-.container .leaveMess .tel {
+.container .messageCard .item-form .item,
+.container .messageCard .item-form .item-pay {
   display: flex;
   justify-content: space-between;
-  width: 570rpx;
-  height: 56rpx;
+  width: 618rpx;
+  height: 89rpx;
   margin: 0 auto;
-  margin-top: 30rpx;
-}
-
-.container .leaveMess .name text,
-.container .leaveMess .tel text {
-  width: 101rpx;
-  height: 56rpx;
-  font-size: 28rpx;
-  color: #333333;
-  text-align: center;
-  line-height: 56rpx;
-}
-
-.container .leaveMess .name input,
-.container .leaveMess .tel input {
-  width: 453rpx;
-  height: 56rpx;
-  font-size: 28rpx;
-  border: 1rpx solid #bfbfbf;
-  border-radius: 5rpx;
-  text-align: left;
-  text-indent: 10rpx;
+  margin-top: 8rpx;
+  border-bottom: 1rpx solid #d9d9d9;
+  line-height: 89rpx;
+  box-sizing: border-box;
 }
 
-.container .leaveMess .name text {
-  text-align: right;
+.container .messageCard .item-form .item .ite,
+.container .messageCard .item-form .item-pay .ite {
+  display: inline-block;
+  width: 200rpx;
+  height: 60rpx;
+  line-height: 89rpx;
+  margin-left: 20rpx;
+  font-size: 32rpx;
+  color: #808080;
+  box-sizing: border-box;
 }
 
-.container .leaveMess .title {
-  width: 570rpx;
-  height: 30rpx;
-  margin: 0 auto;
-  margin-top: 40rpx;
-  color: #333333;
-  font-size: 28rpx;
-  line-height: 30rpx;
+.container .messageCard .item-form .item .content,
+.container .messageCard .item-form .item-pay .content {
+  display: inline-block;
+  width: 400rpx;
+  height: 60rpx;
+  overflow: hidden;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+  line-height: 89rpx;
+  margin-left: 40rpx;
+  color: #000;
+  background: #fff;
+  box-sizing: border-box;
 }
 
-.container .leaveMess textarea {
-  width: 570rpx;
-  height: 230rpx;
-  border: 1rpx solid #cccccc;
-  border-radius: 10rpx;
+.container .messageCard button {
+  width: 618rpx;
+  height: 90rpx;
   margin: 0 auto;
-  margin-top: 20rpx;
-}
-
-.container .leaveMess button {
-  width: 170rpx;
-  height: 80rpx;
-  margin-top: 30rpx;
+  margin-bottom: 20rpx;
   background: #298def;
-  border-radius: 4px;
+  font-size: 28rpx;
   color: #fff;
+  border: 2rpx solid #fff;
   text-align: center;
-  line-height: 80rpx;
+  line-height: 90rpx;
+  box-sizing: border-box;
+}
+
+.container .messageCard button:nth-of-type(2) {
+  background: #fff;
+  color: #298def;
+  border: 2rpx solid #298def;
 }

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 1 - 1
pages/order/css/order.min.css


+ 61 - 90
pages/order/css/order.scss

@@ -240,110 +240,81 @@
             }
         }
     }
-    .leaveMess {
+    .messageCard {
         display: flex;
         flex-direction: column;
         justify-content: flex-start;
         position: absolute;
-        top: 301rpx;
+        top: 125rpx;
         left: 50%;
-        transform: translateX(-325rpx);
-        z-index: 5;
-        width: 650rpx;
-        height: 732rpx;
-        background: #ffffff;
+        transform: translateX(-350rpx);
+        width: 700rpx;
+        height: 1000rpx;
         box-shadow: 0rpx 0rpx 13rpx 0rpx rgba(0, 0, 0, 0.29);
-        border-radius: 10rpx;
-        overflow: hidden;
-        box-sizing: border-box;
-        .top {
-            display: flex;
-            justify-content: space-between;
-            width: 650rpx;
-            height: 90rpx;
-            background: #e7eef5;
-            line-height: 90rpx;
-            text {
-                width: 161rpx;
-                height: 90rpx;
-                margin-left: 35rpx;
-                line-height: 90rpx;
-                font-size: 32rpx;
-                color: #333333;
-            }
-            .close {
-                position: relative;
-                width: 120rpx;
-                height: 80rpx;
-                background: #e7eef5;
-                .image {
-                    position: absolute;
-                    top: 40%;
-                    left: 50%;
-                    width: 18rpx;
-                    height: 18rpx;
-                    background-image: url(../../static/images/close.png);
-                    background-size: 100%;
-                }
-            }
-        }
-        .name,
-        .tel {
-            display: flex;
-            justify-content: space-between;
-            width: 570rpx;
-            height: 56rpx;
+        background: #fff;
+        border-radius: 14rpx;
+        z-index: 4;
+        .item-form {
+            width: 618rpx;
+            height: 800rpx;
             margin: 0 auto;
-            margin-top: 30rpx;
-            text {
-                width: 101rpx;
-                height: 56rpx;
-                font-size: 28rpx;
-                color: #333333;
-                text-align: center;
-                line-height: 56rpx;
+            overflow: scroll;
+            &::-webkit-scrollbar {
+                display: none;
             }
-            input {
-                width: 453rpx;
-                height: 56rpx;
-                font-size: 28rpx;
-                border: 1rpx solid #bfbfbf;
-                border-radius: 5rpx;
-                text-align: left;
-                text-indent: 10rpx;
-            }
-        }
-        .name {
-            text {
-                text-align: right;
+            .item,
+            .item-pay {
+                display: flex;
+                justify-content: space-between;
+                width: 618rpx;
+                height: 89rpx;
+                margin: 0 auto;
+                margin-top: 8rpx;
+                border-bottom: 1rpx solid #d9d9d9;
+                line-height: 89rpx;
+                box-sizing: border-box;
+                .ite {
+                    display: inline-block;
+                    width: 200rpx;
+                    height: 60rpx;
+                    line-height: 89rpx;
+                    margin-left: 20rpx;
+                    font-size: 32rpx;
+                    color: #808080;
+                    box-sizing: border-box;
+                }
+                .content {
+                    display: inline-block;
+                    width: 400rpx;
+                    height: 60rpx;
+                    overflow: hidden; //多出部分隐藏
+                    white-space: nowrap; //一行显示
+                    text-overflow: ellipsis; //是否显示省略号
+                    line-height: 89rpx;
+                    margin-left: 40rpx;
+                    color: #000;
+                    background: #fff;
+                    box-sizing: border-box;
+                }
             }
         }
-        .title {
-            width: 570rpx;
-            height: 30rpx;
-            margin: 0 auto;
-            margin-top: 40rpx;
-            color: #333333;
-            font-size: 28rpx;
-            line-height: 30rpx;
-        }
-        textarea {
-            width: 570rpx;
-            height: 230rpx;
-            border: 1rpx solid #cccccc;
-            border-radius: 10rpx;
-            margin: 0 auto;
-            margin-top: 20rpx;
-        }
         button {
-            width: 170rpx;
-            height: 80rpx;
-            margin-top: 30rpx;
+            width: 618rpx;
+            height: 90rpx;
+            margin: 0 auto;
+            margin-bottom: 20rpx;
             background: #298def;
-            border-radius: 4px;
+            font-size: 28rpx;
             color: #fff;
+            border: 2rpx solid #fff;
             text-align: center;
-            line-height: 80rpx;
+            line-height: 90rpx;
+            box-sizing: border-box;
+        }
+        & button:nth-of-type(2) {
+            background: #fff;
+            color: #298def;
+            border: 2rpx solid #298def;
         }
     }
 }

+ 312 - 21
pages/order/order.vue

@@ -1,7 +1,14 @@
 <template>
   <view class="container">
+    <!-- 空列表 -->
     <view class="hint" v-if="showHint">暂无订单记录</view>
-    <view class="mark" v-show="showDetail" @click="toShowDetail()"></view>
+    <!-- 遮罩层 -->
+    <view
+      class="mark"
+      v-show="showDetail || showPay"
+      @click="markClose()"
+    ></view>
+    <!-- 订单列表 -->
     <view class="list">
       <template v-if="orderList.length !== 0">
         <view class="messCard" v-for="item in orderList">
@@ -35,13 +42,17 @@
               <view class="bt-item">
                 <view
                   class="button"
-                  @click="putMess(item.orderNo)"
+                  @click="feedBack(item.orderNo)"
                   v-if="item.status == 1"
                 >
                   订单反馈
                 </view>
 
-                <view class="button" @click="toPay()" v-if="item.status == 1">
+                <view
+                  class="button"
+                  @click="toPay(item.payForIdentify, item.studentName)"
+                  v-if="item.status == 1"
+                >
                   继续支付
                 </view>
                 <view
@@ -56,10 +67,50 @@
         </view>
       </template>
     </view>
+    <!-- 继续支付页面 -->
+    <view class="messageCard" v-show="showPay">
+      <view class="item-form">
+        <view class="item">
+          <text class="ite">收费单位 </text>
+          <text class="content">南昌交通学院</text>
+        </view>
+        <view class="item">
+          <text class="ite">姓名 </text>
+          <text class="content">{{ studentName }}</text>
+        </view>
+        <view class="item">
+          <text class="ite">学号 </text>
+          <text class="content">{{ studentNo }}</text>
+        </view>
+        <view class="item">
+          <text class="ite">专业 </text>
+          <text class="content">{{ majorName }}</text>
+        </view>
+        <view class="item">
+          <text class="ite">班级 </text>
+          <text class="content">{{ className }}</text>
+        </view>
+        <view class="item">
+          <text class="ite">缴费学年 </text>
+          <text class="content">{{ years }}</text>
+        </view>
+        <view class="item-pay" v-for="item in Arr">
+          <text class="ite">{{ item.id }} </text>
+          <text class="content">¥{{ item.money }}</text>
+        </view>
+        <view class="item">
+          <text class="ite">总金额 </text>
+          <text class="content">¥{{ orderAmount }}</text>
+        </view>
+      </view>
+      <button @click="getPay()" hover-class="button-hover">支付</button>
+      <button @click="closePay()" hover-class="button-hover">取消</button>
+    </view>
+    <!-- 查看详情 -->
     <view class="detail" v-show="showDetail">
       <view class="top">
         <text>订单详情</text>
-        <view class="close" @click="toShowDetail()">
+        <view class="close" @click="closeDetail()">
           <view class="image"></view>
         </view>
       </view>
@@ -105,9 +156,9 @@
 export default {
   data() {
     return {
-      showHint: true,
+      showPay: false, //继续支付弹窗
+      showHint: true, //无订单提示页
       showDetail: false, //订单详情弹窗
-      paySuccess: true, //缴费成功隐藏按钮
       orderList: [],
       studentName: "",
       studentNo: "",
@@ -116,18 +167,43 @@ export default {
       years: "",
       Arr: [],
       orderAmount: "",
-      status: "",
-      // homeUrl: "http://3mb8i8.natappfree.cc ",
       homeUrl: "https://jtishfw.ncjti.edu.cn/jiaofei/backendApi",
+      notifyUrl:
+        "https://jtishfw.ncjti.edu.cn/jiaofei/backendApi/pay/jxnxs/notify/",
+      orderNo: "",
+      //微信支付参数
+      appId: "",
+      timeStamp: "",
+      nonceStr: "",
+      package: "",
+      signType: "",
+      paySign: "",
     };
   },
   onLoad(options) {
-    this.getOrderList();
+    let cardNumber = sessionStorage.getItem("cardNumber");
+
+    if (cardNumber == null) {
+      uni.showToast({
+        title: "cardNumber为空",
+        icon: "error",
+        mask: true,
+        duration: 2000,
+      });
+    } else {
+      this.getOrderList(); //获取订单列表
+    }
   },
-  created() {},
   methods: {
-    toShowDetail() {
-      this.showDetail = !this.showDetail;
+    markClose() {
+      this.showPay = false;
+      this.showDetail = false;
+    },
+    closeDetail() {
+      this.showDetail = false;
+    },
+    closePay() {
+      this.showPay = false;
     },
     //获取订单列表
     getOrderList() {
@@ -147,10 +223,18 @@ export default {
         method: "GET",
         sslVerify: true,
         success: ({ data, statusCode, header }) => {
-          // console.log(data.data.list);
-          this.orderList = data.data.list;
-          if (data.data.list.length !== 0) {
-            this.showHint = false;
+          if (data.success) {
+            if (data.data.list.length !== 0) {
+              this.showHint = false;
+              this.orderList = data.data.list;
+            }
+          } else {
+            uni.showToast({
+              title: data.message,
+              icon: "error",
+              mask: true,
+              duration: 2000,
+            });
           }
         },
         fail: (error) => {},
@@ -184,16 +268,44 @@ export default {
           this.years = res.years;
           this.majorName = res.majorName;
           this.className = res.className;
-          this.orderAmount = res.realPayAmount;
           this.getPayDetail(res.payItemDetail);
+          this.orderAmount = res.realPayAmount;
         },
         fail: (error) => {},
       });
     },
 
-    //跳转支付页面
-    toPay() {
-      uni.navigateTo({ url: "/pages/blankIndex/blankIndex" });
+    //继续支付
+    toPay(payForIdentify, studentName) {
+      this.showPay = !this.showPay;
+      let cardNumber = sessionStorage.getItem("cardNumber");
+
+      let url =
+        this.homeUrl +
+        `/tuitionpayment/payableinfo/payableInfo/${payForIdentify}/${studentName}`;
+
+      uni.request({
+        url: url,
+        header: {
+          card_number: cardNumber,
+          Accept: "application/json",
+          "Content-Type": "application/x-www-form-urlencoded;charset=utf-8",
+          "X-Requested-With": "XMLHttpRequest",
+        },
+        method: "GET",
+        sslVerify: true,
+        success: ({ data, statusCode, header }) => {
+          let res = data.data;
+          this.studentName = res.studentName;
+          this.studentNo = res.studentNo;
+          this.years = res.years;
+          this.majorName = res.majorName;
+          this.className = res.className;
+          this.getPayDetail(res.payItemDetail);
+          this.orderAmount = res.realPayAmount;
+        },
+        fail: (error) => {},
+      });
     },
 
     //获取学费明细
@@ -219,7 +331,7 @@ export default {
     },
 
     //订单反馈
-    putMess(orderNo) {
+    feedBack(orderNo) {
       let cardNumber = sessionStorage.getItem("cardNumber");
 
       let url = this.homeUrl + `/tuitionpayment/payorder/${orderNo}/orderStatu`;
@@ -247,6 +359,185 @@ export default {
         fail: (error) => {},
       });
     },
+    //支付
+    getPay() {
+      uni.showToast({
+        title: "支付中,请稍等",
+        icon: "loading",
+        mask: true,
+        duration: 1500,
+      });
+      this.getOrderNo(); //获取订单号
+    },
+    //获取订单号
+    getOrderNo() {
+      let that = this;
+
+      let cardNumber = sessionStorage.getItem("cardNumber");
+
+      let url =
+        that.homeUrl + `/tuitionpayment/payorder/${that.studentNo}/create`;
+
+      uni.request({
+        url: url,
+        data: {},
+        header: {
+          card_number: cardNumber,
+          Accept: "application/json",
+          "Content-Type": "application/json",
+          "X-Requested-With": "XMLHttpRequest",
+        },
+        method: "POST",
+        sslVerify: true,
+        success: ({ data, statusCode, header }) => {
+          let res = data.data;
+          that.orderNo = res.orderNo;
+          if (!data.success) {
+            uni.showToast({
+              title: data.message,
+              icon: "error",
+              mask: true,
+              duration: 2000,
+            });
+          } else {
+            that.getPayMethod();
+          }
+        },
+        fail: (error) => {},
+      });
+    },
+    //获取支付方式
+    getPayMethod() {
+      let url = this.homeUrl + "/payMethodSetting/currentPay";
+
+      uni.request({
+        url: url,
+        data: {},
+        header: {
+          Accept: "application/json",
+          "Content-Type": "application/x-www-form-urlencoded;charset=utf-8",
+          "X-Requested-With": "XMLHttpRequest",
+        },
+        method: "GET",
+        sslVerify: true,
+        success: ({ data, statusCode, header }) => {
+          let res = data.data;
+          if (data.success) {
+            if (res.currentPayMethod === "1") {
+              this.getwxParam();
+            } else {
+              this.nsPay();
+            }
+          } else {
+            uni.showToast({
+              title: data.message,
+              icon: "error",
+              mask: true,
+              duration: 1000,
+            });
+          }
+        },
+        fail: (error) => {},
+      });
+    },
+    //拉起农商行支付
+    nsPay() {
+      let O = "5494ec3310685daa218382619dd20e27";
+
+      let out_no = this.orderNo;
+
+      let amount = this.orderAmount;
+
+      let appoint_notify = this.notifyUrl;
+
+      let mainUrl = `https://q.jxnxs.com/newpay?O=${O}&out_no=${out_no}&amount=${amount}&appoint_notify=${appoint_notify}`;
+
+      window.location.href = mainUrl;
+    },
+    //获取微信支付参数
+    getwxParam() {
+      let that = this;
+
+      let cardNumber = sessionStorage.getItem("cardNumber");
+
+      let openId = localStorage.getItem("openId");
+
+      let url = that.homeUrl + "/pay/ccb/getJsApiParam";
+
+      uni.request({
+        url: url,
+        data: {
+          orderNo: that.orderNo,
+          openId: openId,
+        },
+        header: {
+          card_number: cardNumber,
+          Accept: "application/json",
+          "Content-Type": "application/json",
+          "X-Requested-With": "XMLHttpRequest",
+        },
+        method: "GET",
+        sslVerify: true,
+        success: ({ data, statusCode, header }) => {
+          if (!data.success) {
+            uni.showToast({
+              title: data.message,
+              icon: "error",
+              mask: true,
+              duration: 2000,
+            });
+          } else {
+            let res = data.data;
+            that.appId = res.appId;
+            that.timeStamp = res.timeStamp;
+            that.nonceStr = res.nonceStr;
+            that.package = res.package;
+            that.signType = res.signType;
+            that.paySign = res.paySign;
+            that.wxPay();
+          }
+        },
+        fail: (error) => {},
+      });
+    },
+    //吊起微信支付
+    wxPay() {
+      let that = this;
+
+      function onBridgeReady() {
+        WeixinJSBridge.invoke(
+          "getBrandWCPayRequest",
+          {
+            appId: that.appId, //公众号ID,由商户传入
+            timeStamp: that.timeStamp, //时间戳,自1970年以来的秒数
+            nonceStr: that.nonceStr, //随机串
+            package: that.package,
+            signType: that.signType, //微信签名方式:
+            paySign: that.paySign, //微信签名
+          },
+          function (res) {
+            if (res.err_msg == "get_brand_wcpay_request:ok") {
+              // 使用以上方式判断前端返回,微信团队郑重提示:
+              //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
+            }
+          }
+        );
+      }
+      if (typeof WeixinJSBridge == "undefined") {
+        if (document.addEventListener) {
+          document.addEventListener(
+            "WeixinJSBridgeReady",
+            onBridgeReady,
+            false
+          );
+        } else if (document.attachEvent) {
+          document.attachEvent("WeixinJSBridgeReady", onBridgeReady);
+          document.attachEvent("onWeixinJSBridgeReady", onBridgeReady);
+        }
+      } else {
+        onBridgeReady();
+      }
+    },
   },
 };
 </script>

+ 2 - 0
pages/parentPay/css/parentPay.css

@@ -11,6 +11,7 @@
 
 .container::-webkit-scrollbar-track {
   -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
   border-radius: 10px;
   background-color: #f5f5f5;
 }
@@ -18,6 +19,7 @@
 .container::-webkit-scrollbar-thumb {
   border-radius: 10px;
   -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
   background-color: #555;
 }
 

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 1 - 1
pages/parentPay/css/parentPay.min.css


+ 2 - 0
pages/parentPay/css/parentPay.scss

@@ -8,12 +8,14 @@
     }
     &::-webkit-scrollbar-track {
         -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+        box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
         border-radius: 10px;
         background-color: #f5f5f5;
     }
     &::-webkit-scrollbar-thumb {
         border-radius: 10px;
         -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
+        box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
         background-color: #555;
     }
     button {

+ 0 - 1
pages/parentPay/parentPay.vue

@@ -167,7 +167,6 @@ export default {
       homeUrl: "https://jtishfw.ncjti.edu.cn/jiaofei/backendApi",
       notifyUrl:
         "https://jtishfw.ncjti.edu.cn/jiaofei/backendApi/pay/jxnxs/notify/",
-      openId: "",
       cardNumber: "",
       orderNo: "", //订单号
       //微信支付参数