From f67e33dd60d08237e9c36ceec092c50792387d4a Mon Sep 17 00:00:00 2001
From: lin <1005713861@163.com>
Date: Tue, 26 May 2026 17:43:43 +0800
Subject: [PATCH] feat:星享购 绑卡+权收

---
 pages/quanyi/add.vue | 1619 +++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 1,018 insertions(+), 601 deletions(-)

diff --git a/pages/quanyi/add.vue b/pages/quanyi/add.vue
index 80a9255..3413834 100644
--- a/pages/quanyi/add.vue
+++ b/pages/quanyi/add.vue
@@ -1,15 +1,17 @@
 <script>
-import offIcon from '@/static/imgs/icons/off.png'
-import leftIcon from  '@/static/imgs/icons/left.png'
-import kkIcon from  '@/static/imgs/icons/kk.png'
+import offIcon from '@/static/img/off.png'
+import leftIcon from  '@/static/img/left.png'
+import kkIcon from  '@/static/img/kk.png'
 import addAddress from "@/pages/quanyi/components/addAddress";
 import agreement from "@/pages/quanyi/components/agreement";
 
 import textBox from "@/components/textBox/index.vue";
+
+import provincesCity from '@/components/picker/provincesCity'
 export default {
   name: "add",
   components: {
-    addAddress,agreement,textBox
+    addAddress,agreement,textBox,provincesCity
   },
   data() {
     return {
@@ -17,7 +19,7 @@
       showTextBox: false,
       loginAct: false,
       $webHost:'https://rbb98765.zrgy-bbg.com',
-      protocolChecked: [1],
+      protocolChecked: [0],
       offIcon,leftIcon,kkIcon,
       callbackData:{},
       addressDetail: {
@@ -69,6 +71,13 @@
   },
 
   computed: {
+	provincesCityStr() {
+		if(this.addressDetail.provinceName || this.addressDetail.cityName || this.addressDetail.areaName) {
+			return `${this.addressDetail.provinceName}${this.addressDetail.cityName}${this.addressDetail.areaName}`
+		} else {
+			return ''
+		}
+	},
     addressStr() {
       if(this.addressDetail.provinceName || this.addressDetail.cityName || this.addressDetail.areaName) {
         return `${this.addressDetail.provinceName}${this.addressDetail.cityName}${this.addressDetail.areaName}${this.addressDetail.detailAddr}`
@@ -79,9 +88,9 @@
     customStyle() {
       return {
         height: "100rpx",
-        background: "#FF1472",
+        background: "#4766FE",
         color: "#fff",
-        borderRadius: "24rpx",
+        borderRadius: "50rpx",
         fontSize: "34rpx",
       };
     },
@@ -100,8 +109,8 @@
     uni.request({
       url: _this.$webHost+'/api/v2/customer/getCstAddress',
       data:{
-        customerId: uni.getStorageSync('qxgLogin').customerId,
-        sourceId: uni.getStorageSync('qxgLogin').appId
+        customerId: uni.getStorageSync('ygxLogin').customerId,
+        sourceId: uni.getStorageSync('ygxLogin').appId
       },
       success: function (res) {
         _this.addressDetail = res.data.data;
@@ -110,7 +119,7 @@
 
 
     uni.request({
-      url: _this.$webHost+'/api/v2/xinheyuan/bank/list/fake/'+uni.getStorageSync('qxgLogin').customerId,
+      url: _this.$webHost+'/api/v2/xinheyuan/bank/list/fake/'+uni.getStorageSync('ygxLogin').customerId,
       success(res){
         console.log(res.data.data);
         this.bankList = res.data.data;
@@ -121,7 +130,7 @@
     uni.setStorageSync('windowHeight',uni.getSystemInfoSync().windowHeight)
 
     uni.request({
-      url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
+      url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('ygxLogin').customerId}`,
       method:'get',
       success:function(res){
         const dy = res.data.data[0];
@@ -139,54 +148,79 @@
       }
 
     })
-
-
+	
+	
     uni.request( {
       url: _this.$webHost + "/api/v2/renpin/H5/getPlatformProtocolNew",
       data: {
-        customerId: uni.getStorageSync('qxgLogin').customerId,
-        appId: uni.getStorageSync('qxgLogin').appId
+        customerId: uni.getStorageSync('ygxLogin').customerId,
+        appId: uni.getStorageSync('ygxLogin').appId
       },
       method: 'GET',
       success(res) {
+        uni.showLoading({})
         _this.getPlatformProtocolNewList = res.data.data;
         _this.showTextBox = true;
+
         _this.$nextTick(() => {
-          _this.$refs.textBox && _this.$refs.textBox.open()
+          if(_this.$refs.textBox){
+            uni.hideLoading();
+            _this.$refs.textBox.open()
+          } else {
+            setTimeout(() => {
+              console.log('setTimeout');
+              uni.hideLoading();
+              _this.$refs.textBox && _this.$refs.textBox.open()
+            }, 400);
+          }
         })
       }
     })
+
+
+  },
+  mounted(){
+	  // this.$refs.codeUi.open()
+    this.windowHeight = uni.getSystemInfoSync().windowHeight;
+    // this.interval = setInterval(() => {
+    //   let newHeight = window.innerHeight;
+    //   if (this.windowHeight !== newHeight) {
+    //     this.windowHeight = newHeight;
+    //     this.handleResize();
+    //   }
+    // }, 200);
   },
   methods: {
     kk(){
 
       const _this = this;
+		_this.getUserInfo()
+      // if(this.addressStr.length < 8){
 
-      if(this.addressStr.length < 8){
-        uni.showToast({
-          title: '请输入详细地址',
-          icon: 'none'
-        });
-        return
-      }
+      //   uni.showToast({
+      //     title: '请输入详细地址',
+      //     icon: 'none'
+      //   });
+      //   return
+      // }
 
+		// 移到上面了,先保存地址再走下面的接口
+      // uni.request({
+      //   url: _this.$webHost+'/api/v2/sign/signed/'+uni.getStorageSync('ygxLogin').customerId,
+      //   method:'POST',
+      // })
 
-      uni.request({
-        url: _this.$webHost+'/api/v2/sign/signed/'+uni.getStorageSync('qxgLogin').customerId,
-        method:'POST',
-      })
-
-      uni.request({
-        url: _this.$webHost+'/api/v2/pay/memberPurchaseBenefitsPays',
-        method:'POST',
-        data:{
-          customerId: uni.getStorageSync('qxgLogin').customerId,
-          memberPeriodConfigId: uni.getStorageSync('memberPeriodConfigInfo').id
-        },
-        success(){
-          _this.getUserInfo()
-        }
-      })
+      // uni.request({
+      //   url: _this.$webHost+'/api/v2/pay/memberPurchaseBenefitsPays',
+      //   method:'POST',
+      //   data:{
+      //     customerId: uni.getStorageSync('ygxLogin').customerId,
+      //     memberPeriodConfigId: uni.getStorageSync('memberPeriodConfigInfo').id
+      //   },
+      //   success(){
+      //     _this.getUserInfo()
+      //   }
+      // })
 
     },
 
@@ -199,13 +233,12 @@
       this.$refs.popup.close()
     },
     open(){
+      // 通过组件定义的ref调用uni-popup方法 ,如果传入参数 ,type 属性将失效 ,仅支持 ['top','left','bottom','right','center']
       this.$refs.popup.open()
     },
 
     validateAndCacheCardInfo() {
       const _this = this;
-
-
       if(!_this.cardNumber.length || _this.cardNumber.length<14 ){
         return
       }
@@ -228,30 +261,89 @@
         }
       })
 
+     /* uni.request({
+        url: "https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset=utf-8&cardBinCheck=true", // 阿里接口
+        data: {
+          cardNo: _this.cardNumber,
+        },
+        success: function (res) {
+          console.log(res.data.validated);
+          if (res.data.validated) {
+
+            for (let i of uni.getStorageSync("bankList")) {
+              console.log(i);
+              if (res.data.bank === i.bankCode) {
+                _this.bankCode = i.bankCode;
+                _this.bankName = i.bankName;
+
+                break;
+              }
+            }
+            if(!_this.bankName){
+              uni.showToast({
+                title: "暂不支持该银行或银行卡号有误",
+                icon: "none",
+              });
+            }
+          }
+
+          else {
+            uni.showToast({
+              title: "暂不支持该银行或银行卡号有误",
+              icon: "none",
+            });
+          }
+        },
+      });*/
+    },
+    isValidIDCard(IDCard) {
+      // 正则:15位纯数字 或 18位(前17位数字 + 最后一位数字/X)
+      const idCardReg = /(^\d{15}$)|(^\d{17}([0-9]|X)$)/;
+      return idCardReg.test(IDCard)
+    },
+    isValidChineseBankCard(cardNumber) {
+      const length = cardNumber.length;
+      return length === 16 || length === 19;
     },
     submit() {
       const _this = this;
-      if(!this.loginAct){uni.showToast({title: '请阅读并同意相关协议', icon: 'none'});return;}
+      if(!this.protocolChecked[0]){uni.showToast({title: '请阅读并同意相关协议', icon: 'none'});return;}
       if(!_this.cardName){
         uni.showToast({
-          title: "请填写您的姓名",
+          title: "请填写真实姓名",
           icon: "none",
         });
         return;
       }
       if(!_this.idCardNo){
         uni.showToast({
-          title: "请填写您的身份证号",
+          title: "请输入身份证号",
           icon: "none",
         });
         return;
+      } else {
+        if (!_this.isValidIDCard(_this.idCardNo)) {
+          uni.showToast({
+            title: "请输入正确的身份证号",
+            icon: "none",
+          });
+          return;
+        }
       }
       if(!_this.cardNumber){
         uni.showToast({
-          title: "请填写银行卡号",
+          title: "请输入银行卡号",
           icon: "none",
         });
         return;
+      } else {
+        if (!_this.isValidChineseBankCard(_this.cardNumber)) {
+          uni.showToast({
+            title: "请输入正确的银行卡号",
+            icon: "none",
+          });
+          return;
+        }
       }
       if(!_this.cardPhone){
         uni.showToast({
@@ -268,14 +360,54 @@
         });
         return
       }
-
-      if(!_this.addressStr){
-        uni.showToast({
-          title: "请填写您的详细地址",
-          icon: "none",
-        });
-        return;
-      }
+	  // 旧的地址判断
+      // if(!_this.addressStr){
+      //   uni.showToast({
+      //     title: "请填写详细地址",
+      //     icon: "none",
+      //   });
+      //   return;
+      // }
+	  // 新增地址移到外面判断
+	  if (!_this.addressDetail.consignee) {
+	    uni.showToast({
+	      title: "请输入收件人姓名 ",
+	      icon: "none",
+	    });
+	    return;
+	  }
+	  if (!_this.addressDetail.contactPhone) {
+	    uni.showToast({
+	      title: "请输入收件人联系电话",
+	      icon: "none",
+	    });
+	    return;
+	  }
+	  if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(_this.addressDetail.contactPhone)) return uni.showToast({
+	    title: '请输入正确的收件人联系电话',
+	    icon: 'none'
+	  });
+	  if (!_this.addressDetail.provinceCode) {
+	    uni.showToast({
+	      title: "请输入收件人所在地",
+	      icon: "none",
+	    });
+	    return;
+	  }
+	  if (!_this.addressDetail.detailAddr) {
+	    uni.showToast({
+	      title: "请输入收件人详细地址",
+	      icon: "none",
+	    });
+	    return;
+	  }
+		if (_this.addressDetail.detailAddr.length < 8) {
+		  uni.showToast({
+			title: "详细地址需大于等于8个字符",
+			icon: "none",
+		  });
+		  return;
+		}
 
 
       if(_this.getPayBindCardInfo[0].bindStatus) {
@@ -295,585 +427,820 @@
 
 
       uni.request({
-        url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
+        url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('ygxLogin').customerId}`,
         method:'get',
         success:function(res){
           _this.getPayBindCardInfo = res.data.data;
         }
       })
+	  
+	  // 保存地址:地址保存成功后再走提交接口
+	  uni.request({
+	    url: _this.$webHost + "/api/v2/customer/appAddCstAddress",
+	    method: "POST",
+	    data: {
+	      ..._this.addressDetail,
+	  	  customerId: uni.getStorageSync('ygxLogin').customerId,
+	      sourceId: uni.getStorageSync('ygxLogin').appId
+	    },
+		success: function (res) {
+			if(res.data.code==200){
+				uni.request({
+				  url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
+				  method:'POST',
+				  data:{
+					..._this.bindCardId,
+				
+					"customerId": uni.getStorageSync('ygxLogin').customerId,
+					"cardPhone" : _this.cardPhone,  //手机号
+				
+					"cardNumber": _this.cardNumber, //卡号
+				
+					"cardName" : _this.cardName, // 名字
+					"cardIdNo" : _this.cardIdNo,
+					"bankName" : _this.bankName,
+					"cardNo" :  _this.cardNumber,
+				
+					"verificationCode": _this.verificationCode,
+				  },
+				  success(e){
+					if(e.data.code!==200){
+						uni.showToast({
+						  title: e.data.data,
+						  icon: 'none'
+						});
+						return;
+					}
+					uni.request({
+					  url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('ygxLogin').customerId}`,
+					  method:'get',
+					  success:function(res){
+						const  ls =  res.data.data;
+						_this.getPayBindCardInfo = res.data.data;
+						if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
+				
+				
+				
+						if(ls.length && !ls[1].bindStatus){
+						  _this.$refs.codeUi.open()
+						  _this.isCounting = false;
+						  _this.countText = '';
+						  return;
+						}
+						if(ls.length && !ls[2].bindStatus){
+						  _this.$refs.setUi.open();
+						  _this.isCounting = false;
+						  _this.countText = '';
+						  return;
+						}
+						if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
+				
+				
+				
+						_this.kk()
+				
+				
+				
+					  }
+				
+					})
+				  }
+				})
+			} else {
+				uni.showToast({
+				  title: res.data.msg,
+				  icon: 'none'
+				});
+			}
+		}
+	  })
 
 
-      uni.request({
-        url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
-        method:'POST',
-        data:{
-          ..._this.bindCardId,
+   //    uni.request({
+   //      url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
+   //      method:'POST',
+   //      data:{
+   //        ..._this.bindCardId,
 
-          "customerId": uni.getStorageSync('qxgLogin').customerId,
-          "cardPhone" : _this.cardPhone,  //手机号
+   //        "customerId": uni.getStorageSync('ygxLogin').customerId,
+   //        "cardPhone" : _this.cardPhone,  //手机号
 
-          "cardNumber": _this.cardNumber, //卡号
+   //        "cardNumber": _this.cardNumber, //卡号
 
-          "cardName" : _this.cardName, // 名字
-          "cardIdNo" : _this.cardIdNo,
-          "bankName" : _this.bankName,
-          "cardNo" :  _this.cardNumber,
+   //        "cardName" : _this.cardName, // 名字
+   //        "cardIdNo" : _this.cardIdNo,
+   //        "bankName" : _this.bankName,
+   //        "cardNo" :  _this.cardNumber,
 
-          "verificationCode": _this.verificationCode,
-        },
-        success(e){
-          if(e.data.code!==200){
-            _this.$util.Tips({
-              title: e.data.data
-            });
-          }
-          uni.request({
-            url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
-            method:'get',
-            success:function(res){
-              const  ls =  res.data.data;
-              _this.getPayBindCardInfo = res.data.data;
-              if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
+   //        "verificationCode": _this.verificationCode,
+   //      },
+   //      success(e){
+   //        if(e.data.code!==200){
+   //          // _this.$util.Tips({
+   //          //   title: e.data.data
+   //          // });
+			// uni.showToast({
+			//   title: e.data.data,
+			//   icon: 'none'
+			// });
+			// return;
+   //        }
+   //        uni.request({
+   //          url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('ygxLogin').customerId}`,
+   //          method:'get',
+   //          success:function(res){
+   //            const  ls =  res.data.data;
+   //            _this.getPayBindCardInfo = res.data.data;
+   //            if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
 
 
 
-              if(ls.length>1 && !ls[1].bindStatus){
-                _this.$refs.codeUi.open()
-                _this.isCounting = false;
-                _this.countText = '';
-                return;
-              }
-              if(ls.length>2 && !ls[2].bindStatus){
-                _this.$refs.setUi.open();
-                _this.isCounting = false;
-                _this.countText = '';
-                return;
-              }
-              if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
+   //            if(ls.length && !ls[1].bindStatus){
+   //              _this.$refs.codeUi.open()
+   //              _this.isCounting = false;
+   //              _this.countText = '';
+   //              return;
+   //            }
+   //            if(ls.length && !ls[2].bindStatus){
+   //              _this.$refs.setUi.open();
+   //              _this.isCounting = false;
+   //              _this.countText = '';
+   //              return;
+   //            }
+   //            if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
 
 
 
+   //            _this.kk()
 
 
-            }
 
-          })
-        }
-      })
+   //          }
+
+   //        })
+   //      }
+   //    })
 
 
     },
-    agreeClick () {
-      this.loginAct = !this.loginAct
-    },
-    getSmsCode(){
-      const that = this;
-      console.log(that.getPayBindCardInfo[0].paymentMethod);
-      if(this.isCounting){
-        return
-      }
-      if(that.getPayBindCardInfo[0].bindStatus){
-        if(!that.getPayBindCardInfo[1].bindStatus){
-          that.$refs.codeUi.open();
+      getSmsCode(){
+        const that = this;
+        console.log(that.getPayBindCardInfo[0].paymentMethod);
+        if(this.isCounting){
           return
         }
-        if(!that.getPayBindCardInfo[2].bindStatus){
-          that.$refs.setUi.open();
+        if(that.getPayBindCardInfo[0].bindStatus){
+          if(!that.getPayBindCardInfo[1].bindStatus){
+            that.$refs.codeUi.open();
+            return
+          }
+          if(!that.getPayBindCardInfo[2].bindStatus){
+            that.$refs.setUi.open();
+          }
+          return
         }
-        return
-      }
 
-      if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(that.cardPhone)) return that.$util.Tips({
-        title: '请输入正确的手机号码'
-      });
+        if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(that.cardPhone)) return uni.showToast({
+          title: '请输入正确的手机号码',
+          icon: 'none'
+        });
 
 
-      that.isCounting = true;
+        // that.isCounting = true;
 
 
 
-      uni.request({
-        url: that.$webHost+'/api/v2/xinheyuan/bankcard/save',
-        method:'POST',
-        data:{
-          "customerId": uni.getStorageSync('qxgLogin').customerId,
-          "nameReal": that.cardName, // 名字
-          "cardNo":that.cardNumber,
-          "idCard": that.idCardNo,
+        uni.request({
+          url: that.$webHost+'/api/v2/xinheyuan/bankcard/save',
+          method:'POST',
+          data:{
+            "customerId": uni.getStorageSync('ygxLogin').customerId,
+            "nameReal": that.cardName, // 名字
+            "cardNo":that.cardNumber,
+            "idCard": that.idCardNo,
 
-          "bankPhoneNo":that.cardPhone,
-          "bankCode": that.bankCode,
-          "bankName": that.bankName,
-          "phone":  that.cardPhone,  //手机号
-          "paymentMethod":  that.getPayBindCardInfo[0].paymentMethod ,
+            "bankPhoneNo":that.cardPhone,
+            "bankCode": that.bankCode,
+            "bankName": that.bankName,
+            "phone":  that.cardPhone,  //手机号
+            "paymentMethod":  that.getPayBindCardInfo[0].paymentMethod ,
 
 
-          "preBindType": "prebc",
-          "bankId": "1",
+            "preBindType": "prebc",
+            "bankId": "1",
 
-        },
-        success(){
-          uni.request({
-            url: that.$webHost+'/api/v2/pay/bindCardToCodes',
-            method:'POST',
-            data:{
-              "customerId": uni.getStorageSync('qxgLogin').customerId,
-              "cardName": that.cardName, // 名字
-              "cardIdNo": that.idCardNo,
+          },
+          success(response){
+			  if(response.data.code != 200) {
+				  uni.showToast({
+				    title: response.data.data,
+				    icon: 'none'
+				  });
+				  return;
+			  }
+			  
+            uni.request({
+              url: that.$webHost+'/api/v2/pay/bindCardToCodes',
+              method:'POST',
+              data:{
+                "customerId": uni.getStorageSync('ygxLogin').customerId,
+                "cardName": that.cardName, // 名字
+                "cardIdNo": that.idCardNo,
 
-              "cardNumber":that.cardNumber,
-              "bankPhoneNo":that.cardPhone,
-              "bankCode": that.bankCode,
-              "bankName": that.bankName,
-              "cardPhone":  that.cardPhone,  //手机号
-              "paymentMethod":  that.getPayBindCardInfo[0].paymentMethod ,
+                "cardNumber":that.cardNumber,
+                "bankPhoneNo":that.cardPhone,
+                "bankCode": that.bankCode,
+                "bankName": that.bankName,
+                "cardPhone":  that.cardPhone,  //手机号
+                "paymentMethod":  that.getPayBindCardInfo[0].paymentMethod ,
 
 
-              "preBindType": "prebc",
-              "bankId": "1",
+                "preBindType": "prebc",
+                "bankId": "1",
 
-            },
-            success(res){
-              if(res.data.code === 401){
-                that.getUserInfo()
-                return;
-              }
-
-              if(res.data.code !==200){
-                uni.showToast({
-                  title: res.data.data,
-                  icon: 'none'
-                })
-                return;
-              }
-
-              if(res.data.code === 200){
-                that.bindCardId = res.data.data;
-              } else {
-                that.isCounting = false;
-                that.countText = '';
-                uni.showToast({
-                  title: res.data.data,
-                  icon: 'none'
-                });
-
-                if(!that.getPayBindCardInfo[0].bindStatus){
-
+              },
+              success(res){
+                if(res.data.code === 401){
+                  that.getUserInfo()
                   return;
                 }
 
-
-                if(!that.getPayBindCardInfo[1].bindStatus){
-                  that.$refs.codeUi.open()
-                  that.isCounting = false;
-                  that.countText = '';
-                  return
-                } if(!that.getPayBindCardInfo[2].bindStatus){
-                  that.isCounting = false;
-                  that.countText = '';
-                  that.$refs.setUi.open()
-                  return
+                if(res.data.code !==200){
+                  uni.showToast({
+                    title: res.data.data,
+                    icon: 'none'
+                  })
+                  return;
                 }
+				that.isCounting = true;
+                if(res.data.code === 200){
+                  that.bindCardId = res.data.data;
+                } else {
+                  that.isCounting = false;
+                  that.countText = '';
+                  uni.showToast({
+                    title: res.data.data,
+                    icon: 'none'
+                  });
+
+                  if(!that.getPayBindCardInfo[0].bindStatus){
+
+                    return;
+                  }
+
+
+                  if(!that.getPayBindCardInfo[1].bindStatus){
+                    that.$refs.codeUi.open()
+                    that.isCounting = false;
+                    that.countText = '';
+                    return
+                  } if(!that.getPayBindCardInfo[2].bindStatus){
+                    that.isCounting = false;
+                    that.countText = '';
+                    that.$refs.setUi.open()
+                    return
+                  }
+                }
+
               }
+            })
 
-            }
-          })
-
-          let count = 60;
-          that.countText = `${count}s秒后重新获取`;
-
-
-          const timer = setInterval(() => {
-            count--;
+            let count = 60;
             that.countText = `${count}s秒后重新获取`;
-            if (count <= 0) {
-              clearInterval(timer);
-              that.isCounting = false;
-              that.countText = '';
-            }
-          },1000)
-        },
-        fail(err){
-          that.isCounting = false;
-          that.countText = '';
-          uni.showToast({
-            title: err,
-            icon: 'none'
-          })
-        }
-      })
 
 
-
-
-
-
-
-
-
-
-    },
-// 二次获取
-    getCode(){
-      if (this.isCounting_A) {
-        return;
-      }
-      const paymentMethod = this.getPayBindCardInfo[1]['paymentMethod'];
-      const _this = this;
-      const pro = uni.getStorageSync('qxgLogin')
-      pro['userName'] = _this.cardName;
-      uni.request({
-        url: _this.$webHost+'/api/v2/pay/bindCardToCodes',
-        method:'POST',
-        data:{
-          cardIdNo: _this.idCardNo,
-          customerId: pro.customerId,
-          cardName: _this.cardName,
-          cardNo: _this.cardIdNo,
-          cardPhone: _this.cardPhone,
-          cardNumber: _this.cardNumber,
-          bankName: _this.bankName,
-          preBindType: "prebc",
-          paymentMethod:paymentMethod,
-          againType : true
-        },
-        success(dt){
-          if(dt.data.code === 401){
-            _this.getUserInfo()
-            return;
-          }
-          const res = dt.data.data;
-          if(!res){
-            return;
-          }
-          _this.callbackData = res;
-          _this.bindCardId = res;
-          uni.showToast({
-            title: "验证码已发送",
-            icon: "none",
-          });
-          // 设置倒计时功能
-          let count = 60;
-
-          const timer = setInterval(() => {
-            count--;
-            if (count <= 0) {
-              clearInterval(timer);
-              _this.$set(_this, "isCounting_A", false);
-            } else {
-              _this.$set(_this, "isCounting_A", true);
-              _this.$set(_this, "countText_A", `${count}秒后重新获取`);
-            }
-          }, 1000);
-        }
-      })
-    },
-
-    submitPlan(){
-
-      const _this = this;
-
-      if (!this.verificationCodeT) {
-        uni.showToast({
-          title: "请输入验证码",
-          icon: "none",
-        });
-        return;
-      }
-
-      const callbackData = _this.callbackData;
-      const paymentMethod = _this.getPayBindCardInfo[1]['paymentMethod'];
-
-
-      uni.request({
-        url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
-        method:'POST',
-        data:{
-          ...callbackData,
-
-          "customerId": uni.getStorageSync('qxgLogin').customerId,
-          "cardPhone" : _this.cardPhone,  //手机号
-
-          "cardNumber": _this.cardNumber, //卡号
-          paymentMethod:paymentMethod,
-          "cardName" : _this.cardName, // 名字
-          "cardIdNo" : _this.cardIdNo,
-          "bankName" : _this.bankName,
-          "cardNo" :  _this.cardNumber,
-
-          "verificationCode": _this.verificationCodeT,
-        },
-        success(dts){
-          if(dts.data.code!==200){
-            return
-          }
-
-          uni.request({
-            url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
-            method:'get',
-            success:function(res){
-              const  ls =  res.data.data;
-              _this.getPayBindCardInfo = res.data.data;
-              if(ls.length>2 && !ls[2].bindStatus){
-                _this.isCounting_A = false;
-                _this.countText_A = '';
-                _this.$refs.codeUi.close()
-                _this.$refs.setUi.open()
-                return;
+            const timer = setInterval(() => {
+              count--;
+              that.countText = `${count}s秒后重新获取`;
+              if (count <= 0) {
+                clearInterval(timer);
+                that.isCounting = false;
+                that.countText = '';
               }
-
-              if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
-
-            }
-
-          })
-        }
-      })
-
-    },
-// 三次
-    getCode_san(){
-      if (this.isCounting_B) {
-        return;
-      }
-      const paymentMethod = this.getPayBindCardInfo[2]['paymentMethod'];
-      const _this = this;
-      const pro = uni.getStorageSync('qxgLogin')
-      pro['userName'] = _this.cardName;
-      uni.request({
-        url: _this.$webHost+'/api/v2/pay/bindCardToCodes',
-        method:'POST',
-        data:{
-          cardIdNo: _this.idCardNo,
-          customerId: pro.customerId,
-          cardName: _this.cardName,
-          cardNo: _this.cardIdNo,
-          cardPhone: _this.cardPhone,
-          cardNumber: _this.cardNumber,
-          bankName: _this.bankName,
-          preBindType: "prebc",
-          paymentMethod:paymentMethod,
-          againType : true
-        },
-        success(dt){
-          if(dt.data.code ==401){
-            _this.getUserInfo()
-            return;
-          }
-
-          if(dt.data.code !==200){
+            },1000)
+          },
+          fail(err){
+            that.isCounting = false;
+            that.countText = '';
             uni.showToast({
-              title: dt.data.data,
+              title: err,
               icon: 'none'
             })
-            return;
           }
+        })
 
-          const res = dt.data.data;
-          if(!res){
-            return;
+
+
+
+
+
+
+
+
+
+      },
+// 二次获取
+      getCode(){
+        if (this.isCounting_A) {
+          return;
+        }
+        const paymentMethod = this.getPayBindCardInfo[1]['paymentMethod'];
+        const _this = this;
+        const pro = uni.getStorageSync('ygxLogin')
+        pro['userName'] = _this.cardName;
+        uni.request({
+          url: _this.$webHost+'/api/v2/pay/bindCardToCodes',
+          method:'POST',
+          data:{
+            cardIdNo: _this.idCardNo,
+            customerId: pro.customerId,
+            cardName: _this.cardName,
+            cardNo: _this.cardIdNo,
+            cardPhone: _this.cardPhone,
+            cardNumber: _this.cardNumber,
+            bankName: _this.bankName,
+            preBindType: "prebc",
+            paymentMethod:paymentMethod,
+            againType : true
+          },
+          success(dt){
+            if(dt.data.code === 401){
+              _this.getUserInfo()
+              return;
+            }
+            const res = dt.data.data;
+            if(!res){
+              return;
+            }
+            _this.callbackData = res;
+            _this.bindCardId = res;
+            uni.showToast({
+              title: "验证码已发送",
+              icon: "none",
+            });
+            // 设置倒计时功能
+            let count = 60;
+
+            const timer = setInterval(() => {
+              count--;
+              if (count <= 0) {
+                clearInterval(timer);
+                _this.$set(_this, "isCounting_A", false);
+              } else {
+                _this.$set(_this, "isCounting_A", true);
+                _this.$set(_this, "countText_A", `${count}秒后重新获取`);
+              }
+            }, 1000);
           }
-          _this.callbackData = res;
-          _this.bindCardId = res;
+        })
+      },
+
+      submitPlan(){
+
+        const _this = this;
+
+        if (!this.verificationCodeT) {
           uni.showToast({
-            title: "验证码已发送",
+            title: "请输入验证码",
             icon: "none",
           });
-          // 设置倒计时功能
-          let count = 60;
-
-          const timer = setInterval(() => {
-            count--;
-            if (count <= 0) {
-              clearInterval(timer);
-              _this.$set(_this, "isCounting_B", false);
-            } else {
-              _this.$set(_this, "isCounting_B", true);
-              _this.$set(_this, "countText_B", `${count}秒后重新获取`);
-            }
-          }, 1000);
+          return;
         }
-      })
-    },
-    submitPlan_san(){
 
-      const _this = this;
+        const callbackData = _this.callbackData;
+        const paymentMethod = _this.getPayBindCardInfo[1]['paymentMethod'];
 
 
-      if (!this.verificationCodeS) {
-        uni.showToast({
-          title: "请输入验证码",
-          icon: "none",
-        });
-        return;
-      }
+        uni.request({
+          url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
+          method:'POST',
+          data:{
+            ...callbackData,
 
-      const callbackData = _this.callbackData;
-      const paymentMethod = _this.getPayBindCardInfo[2]['paymentMethod'];
+            "customerId": uni.getStorageSync('ygxLogin').customerId,
+            "cardPhone" : _this.cardPhone,  //手机号
+
+            "cardNumber": _this.cardNumber, //卡号
+            paymentMethod:paymentMethod,
+            "cardName" : _this.cardName, // 名字
+            "cardIdNo" : _this.cardIdNo,
+            "bankName" : _this.bankName,
+            "cardNo" :  _this.cardNumber,
+
+            "verificationCode": _this.verificationCodeT,
+          },
+          success(dts){
+            if(dts.data.code!==200){
+              // _this.$util.Tips({
+              //   title: dts.data.data
+              // });
+			  uni.showToast({
+			    title: dts.data.data,
+			    icon: 'none'
+			  });
+              return
+            }
+
+            uni.request({
+              url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('ygxLogin').customerId}`,
+              method:'get',
+              success:function(res){
+                const  ls =  res.data.data;
+                _this.getPayBindCardInfo = res.data.data;
+                if(ls.length>2 && !ls[2].bindStatus){
+                  _this.isCounting_A = false;
+                  _this.countText_A = '';
+                  _this.$refs.codeUi.close()
+                  _this.$refs.setUi.open()
+                }
+
+                if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
 
 
-      uni.request({
-        url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
-        method:'POST',
-        data:{
-          ...callbackData,
 
-          "customerId": uni.getStorageSync('qxgLogin').customerId,
-          "cardPhone" : _this.cardPhone,  //手机号
 
-          "cardNumber": _this.cardNumber, //卡号
-          paymentMethod:paymentMethod,
-          "cardName" : _this.cardName, // 名字
-          "cardIdNo" : _this.cardIdNo,
-          "bankName" : _this.bankName,
-          "cardNo" :  _this.cardNumber,
 
-          "verificationCode": _this.verificationCodeS,
-        },
-        success(dts){
-          if(dts.data.code!==200){
-            _this.showToast({
-              title: dts.data.data
-            });
+              }
+
+            })
           }
+        })
 
-          uni.request({
-            url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
-            method:'get',
-            success:function(res){
-              const ls = res.data.data;
-              _this.getPayBindCardInfo = res.data.data;
-              _this.isCounting_B = false;
-              _this.countText_B = '';
-              _this.$refs.setUi.close()
-              _this.$refs.codeUi.close()
-              if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
-
-
+      },
+// 三次
+      getCode_san(){
+        if (this.isCounting_B) {
+          return;
+        }
+        const paymentMethod = this.getPayBindCardInfo[2]['paymentMethod'];
+        const _this = this;
+        const pro = uni.getStorageSync('ygxLogin')
+        pro['userName'] = _this.cardName;
+        uni.request({
+          url: _this.$webHost+'/api/v2/pay/bindCardToCodes',
+          method:'POST',
+          data:{
+            cardIdNo: _this.idCardNo,
+            customerId: pro.customerId,
+            cardName: _this.cardName,
+            cardNo: _this.cardIdNo,
+            cardPhone: _this.cardPhone,
+            cardNumber: _this.cardNumber,
+            bankName: _this.bankName,
+            preBindType: "prebc",
+            paymentMethod:paymentMethod,
+            againType : true
+          },
+          success(dt){
+            if(dt.data.code ==401){
+              _this.getUserInfo()
+              return;
             }
 
-          })
+            if(dt.data.code !==200){
+              uni.showToast({
+                title: dt.data.data,
+                icon: 'none'
+              })
+              return;
+            }
+
+            const res = dt.data.data;
+            if(!res){
+              return;
+            }
+            _this.callbackData = res;
+            _this.bindCardId = res;
+            uni.showToast({
+              title: "验证码已发送",
+              icon: "none",
+            });
+            // 设置倒计时功能
+            let count = 60;
+
+            const timer = setInterval(() => {
+              count--;
+              if (count <= 0) {
+                clearInterval(timer);
+                _this.$set(_this, "isCounting_B", false);
+              } else {
+                _this.$set(_this, "isCounting_B", true);
+                _this.$set(_this, "countText_B", `${count}秒后重新获取`);
+              }
+            }, 1000);
+          }
+        })
+      },
+      submitPlan_san(){
+
+        const _this = this;
+
+
+        if (!this.verificationCodeS) {
+          uni.showToast({
+            title: "请输入验证码",
+            icon: "none",
+          });
+          return;
         }
-      })
 
+        const callbackData = _this.callbackData;
+        const paymentMethod = _this.getPayBindCardInfo[2]['paymentMethod'];
+
+
+        uni.request({
+          url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
+          method:'POST',
+          data:{
+            ...callbackData,
+
+            "customerId": uni.getStorageSync('ygxLogin').customerId,
+            "cardPhone" : _this.cardPhone,  //手机号
+
+            "cardNumber": _this.cardNumber, //卡号
+            paymentMethod:paymentMethod,
+            "cardName" : _this.cardName, // 名字
+            "cardIdNo" : _this.cardIdNo,
+            "bankName" : _this.bankName,
+            "cardNo" :  _this.cardNumber,
+
+            "verificationCode": _this.verificationCodeS,
+          },
+          success(dts){
+            if(dts.data.code!==200){
+              // _this.$util.Tips({
+              //   title: dts.data.data
+              // });
+			  uni.showToast({
+			    title: dts.data.data,
+			    icon: 'none'
+			  });
+            }
+
+            uni.request({
+              url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('ygxLogin').customerId}`,
+              method:'get',
+              success:function(res){
+                const ls = res.data.data;
+                _this.getPayBindCardInfo = res.data.data;
+                _this.isCounting_B = false;
+                _this.countText_B = '';
+                _this.$refs.setUi.close()
+                _this.$refs.codeUi.close()
+                if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
+
+
+              }
+
+            })
+          }
+        })
+
+      },
+
+
+
+      getUserInfo() {
+
+        // const data =   uni.getStorageSync('LOGING_DATA')
+        // console.log(data);
+        // this.$store.commit("LOGIN", {
+        //   'token': data.token
+        // });
+        // this.$store.commit('UPDATE_USERINFO', {
+        //   avatar: data.avatar,
+        //   nickname: data.nickname,
+        //   phone: data.phone
+        // });
+        // this.$store.commit("SETUID", data.id)
+
+        uni.reLaunch({
+          url: '/pages/index/index'
+        });
+      },
+	  // 收件人所在地:弹窗选择城市
+		openProvincesCity() {
+			let defaultData = []
+			if(this.addressDetail.provinceCode && this.addressDetail.cityCode) {
+				defaultData = [this.addressDetail.provinceCode, this.addressDetail.cityCode]
+			}
+
+			this.$refs.provincesCity.open(defaultData)
+		},
+		// 弹窗选择城市回调
+		provincesCityChange(e) {
+			if(e.value.length > 0) {
+				this.addressDetail.provinceCode = e.value[0].code
+				this.addressDetail.provinceName = e.value[0].title
+
+				this.addressDetail.cityCode = e.value[1].code
+				this.addressDetail.cityName = e.value[1].title
+
+				if(e.value[2]) {
+					this.addressDetail.areaCode = e.value[2].code
+					this.addressDetail.areaName = e.value[2].title
+				} else {
+					this.addressDetail.areaCode = ""
+					this.addressDetail.areaName = ""
+				}
+			}
+		},
     },
-
-
-
-    getUserInfo() {
-
-
-
-      uni.reLaunch({
-        url: '/pages/index/index'
-      });
-    },
-  },
-  onUnload() {
+    onUnload() {
       clearInterval(this.interval);
     },
   }
 </script>
 
 <template>
-  <view style="background: #fff;padding-bottom: 20rpx;">
+  <view style="background: #F7F7F7;padding-bottom: 40rpx;">
     <view >
       <view class="top">为向您提供更好的安全保障,您需要提供银行卡号以完成信息核验</view>
     </view>
-
+    <view style="height: 20rpx;"></view>
 
     <view class="form">
-      <view class="clo" style="display: flex;background: white">
-        <view class="label">
-          <text>真实姓名</text>
-        </view>
-        <view class="inp_box">
-          <input  maxlength="8" style="width: 400rpx;"   v-model="cardName" class="inp" placeholder="请填写您的姓名" />
-        </view>
+		<view class="form-item-title" style="margin:  40rpx;font-size: 32rpx;color: #333333;font-weight: 600;">请输入您的真实身份</view>
+		<view class="form-item-ct">
+		  <view class="clo">
+			<view class="label">
+			  <text>持卡人姓名</text>
+			</view>
+			<view class="inp_box">
+			  <input  maxlength="8"   v-model="cardName" class="inp" placeholder="请输入持卡人姓名" />
+			</view>
 
-      </view>
-      <view class="clo" style="display: flex;background: white">
-        <view class="label">
-          <text>身份证号</text>
-        </view>
-        <view class="inp_box">
-          <input  maxlength="18" style="width: 400rpx;"   v-model="idCardNo" class="inp" placeholder="请填写您的身份证号" />
-        </view>
+		  </view>
+		  <view class="clo">
+			<view class="label">
+			  <text>身份证号</text>
+			</view>
+			<view class="inp_box">
+			  <input  maxlength="18"   v-model="idCardNo" class="inp" placeholder="请输入身份证号码" />
+			</view>
 
-      </view>
+		  </view>
+		</view>
+<!--      <view style="background: #F7F7F7;height: 20rpx;"></view>-->
+		<view class="form-item-title" style="margin:  40rpx;font-size: 32rpx;color: #333333;font-weight: 600;">请输入您的银行卡信息</view>
+		<view class="form-item-ct">
+			  <view class="clo">
+				<view class="label">
+				  <text>银行卡号</text>
+				</view>
+				<view class="inp_box">
+				  <input type="number" maxlength="30"  @blur="validateAndCacheCardInfo" v-model="cardNumber" class="inp" placeholder="请输入银行卡号" />
+				  <image @click="cardNumber=''" v-show="!bindStatus && cardNumber" :src="offIcon" style="width: 40rpx;height: 40rpx;position: absolute;right: 0rpx;top: 30rpx;"></image>
+				</view>
 
+			  </view>
+			  <view class="clo">
+				<view class="label">
+				  <text>银行卡名称</text>
+				</view>
+				<view class="inp_box" style="z-index: 1" >
+				  <view style="width: 606rpx;height: 100rpx;border-radius: 30rpx;padding-left: 20rpx;line-height: 100rpx;background-color: #F7F7F7;" :class="bankName?'':'a3'">{{bankName?bankName:'请输入银行卡名称'}}</view>
 
+				</view>
 
-      <view class="clo" style="display: flex">
-        <view class="label">
-          <text>银行卡号</text>
-        </view>
-        <view class="inp_box">
-          <input  maxlength="30" style="width: 400rpx;"   @blur="validateAndCacheCardInfo" v-model="cardNumber" class="inp" placeholder="请填写银行卡号" />
-          <image @click="cardNumber=''" v-show="!bindStatus && cardNumber" :src="offIcon" style="width: 40rpx;height: 40rpx;position: absolute;right: -40rpx;top: 0;"></image>
-        </view>
+			  </view>
+			  <view class="clo">
+				<view class="label">
+				  <view>预留手机号</view>
+				</view>
+				<view class="inp_box" style="position: relative;">
+				  <input  maxlength="11" v-model="cardPhone"  class="inp" placeholder="请输入银行预留手机号" />
+		<!--          <view class="code" style="position: absolute;top: 30rpx;right: 0;" @click="getSmsCode">-->
+		<!--            <text :class="isCounting?'code_k':'code_a'">{{ isCounting ? countText : '获取验证码' }}</text>-->
+		<!--          </view>-->
+				</view>
 
-      </view>
-      <view class="clo" style="display: flex">
-        <view class="label">
-          <text>所属银行</text>
-        </view>
-        <view class="inp_box" style="flex: 1;z-index: 1" >
-          <view :class="bankName?'':'a3'">{{bankName?bankName:'请输入所属银行'}}</view>
+			  </view>
+			  <view class="clo" v-if="getPayBindCardInfo.length && !getPayBindCardInfo[0].bindStatus">
+				<view class="label">
+				  <text>短信验证码</text>
+				</view>
+				<view class="inp_box" style="position: relative;">
+				  <input  maxlength="6" v-model="verificationCode" class="inp" type="number" placeholder="请输入手机短信验证码" />
 
-        </view>
+				  <view class="code" style="position: absolute;top: 30rpx;right: 0;" @click="getSmsCode">
+					<text :class="isCounting?'code_k':'code_a'">{{ isCounting ? countText : '获取验证码' }}</text>
+				  </view>
+				</view>
 
-      </view>
-      <view class="clo" style="display: flex">
-        <view class="label">
-          <view>手机号码</view>
-        </view>
-        <view class="inp_box" >
-          <input  maxlength="11" v-model="cardPhone"  class="inp" placeholder="请填写银行预留手机号" />
-        </view>
+			  </view>
+	  </view>
 
-      </view>
-      <view class="clo" style="display: flex" v-if="!getPayBindCardInfo[0].bindStatus">
-        <view class="label">
-          <text>验证码</text>
-        </view>
-        <view class="inp_box" style="display: flex;flex: 1">
-          <input  maxlength="6" v-model="verificationCode" class="inp" type="number" style="width: 200rpx" placeholder="请输入验证码" />
+		<view class="form-item-title" style="margin:  40rpx;font-size: 32rpx;color: #333333;font-weight: 600;">请输入您的收货地址</view>
+		<view class="form-item-ct">
+			<!-- 旧的地址弹窗 -->
+		  <!-- <view class="clo" @click="$refs.address.open()">
+			<view class="label" >
+			  <text>收货地址</text>
+			</view>
+			<view class="inp_box">
+			  <view style="font-size: 28rpx;width: 606rpx;height: 100rpx;border-radius: 20rpx;padding-left: 20rpx;line-height: 100rpx;background-color: #F7F7F7;" v-if="addressStr">{{addressStr}}</view>
+			  <view style="font-size: 28rpx;color: #BDBDBE;width: 606rpx;height: 100rpx;border-radius: 20rpx;padding-left: 20rpx;line-height: 100rpx;background-color: #F7F7F7;" v-else>请输入收货地址</view>
+			</view>
+		  </view> -->
+		  <!-- 新增的地址放外面了 -->
+		  <uv-form>
+			  <view class="clo">
+				<view class="label">
+				  <text>收件人姓名</text>
+				</view>
+				<view class="inp_box">
+				  <input maxlength="20" v-model="addressDetail.consignee" class="inp" placeholder="请输入收件人姓名" />
+				</view>
+			  </view>
+			  <view class="clo">
+				<view class="label">
+				  <text>收件人联系电话</text>
+				</view>
+				<view class="inp_box">
+				  <input maxlength="11" v-model="addressDetail.contactPhone" class="inp" placeholder="请输入收件人联系电话" />
+				</view>
+			  </view>
+			  <!-- <view class="clo" @click="openProvincesCity()">
+				<view class="label">
+				  <text>收件人所在地</text>
+				</view>
+				<view class="inp_box">
+				  <input disabled="true" v-model="provincesCityStr" class="inp" placeholder="请输入收件人所在地" />
+				</view>
+			  </view> -->
+			  
+			  <uv-form-item
+			  	@click="openProvincesCity()"
+			  >
+			  <view class="clo">
+				  <view class="label">
+				    <text>收件人所在地</text>
+				  </view>
+				  <view class="inp_box" style="position: relative;">
+					<uv-input
+					  class="inp"
+					  style="width: 610rpx;"
+					  :adjustPosition="true"
+					  :disabled="true"
+					  disabledColor="none"
+					  inputAlign="left"
+					  v-model="provincesCityStr"
+					  border="none"
+					  placeholder="请输入收件人所在地"
+					></uv-input>
+					<uv-icon name="arrow-down" style="position: absolute;top: 40rpx;right: 20rpx;"></uv-icon>
+					</view>
+				</view>
+			  </uv-form-item>
+			  
+			  
+			  <view class="clo">
+				<view class="label">
+				  <text>收件人详细地址</text>
+				</view>
+				<view class="inp_box">
+				  <input maxlength="30" v-model="addressDetail.detailAddr" class="inp" placeholder="请输入收件人详细地址" />
+				</view>
+			  </view>
+		  </uv-form>
+	  </view>
 
-          <view class="code" style="flex: 1;text-align: right" @click="getSmsCode">
-            <text :class="isCounting?'code_k':'code_a'">{{ isCounting ? countText : '获取验证码' }}</text>
+    </view>
+
+    <!--    <view class="xieyi">
+          <view style="display: flex">
+            <checkbox-group @change="checkboxChange">
+
+              <checkbox value="1"   activeBorderColor="none"  activeBackgroundColor="red" style="border-radius: 0"  color="#ffffff"/>
+            </checkbox-group>
+            <view style="margin-top: 2rpx;"> <text>我已同意</text>
+             </view>
           </view>
-        </view>
+        </view>-->
 
-      </view>
-
-      <view class="clo" style="display: flex;margin-bottom: 20rpx;" @click="$refs.address.open()">
-        <view class="label" >
-          <text>收货地址</text>
-        </view>
-        <view class="inp_box">
-          <view style="font-size: 28rpx;" v-if="addressStr">{{addressStr}}</view>
-          <view style="font-size: 28rpx;color: #BDBDBE;" v-else>请填写您的详细地址</view>
-        </view>
-
-      </view>
-
-    </view>
-
-
-    <view style=" padding: 0 30rpx;margin-left: 20rpx;">
-      <view style="display: flex;">
-        <image @click="agreeClick" style="width: 50rpx;height: 50rpx;" :src="!loginAct ? '/static/imgs/check.png' : '/static/imgs/checked.png'" ></image>
-        <text class="protocol-text" style="line-height: 50rpx" >
-          我已阅读并同意<text style="font-size: 24rpx;color: #4766FE" class="link-text"  @click="$refs.agreement.open()">《相关协议》</text>
-        </text>
-
-      </view>
-
-    </view>
+    
     <view class="sub" v-if="show">
-      <button  :class="loginAct?'':'nots'" class="sub_btn" @click="submit">提交</button>
+      <button  :class="protocolChecked[0]?'':'nots'" class="sub_btn" @click="submit">提交</button>
     </view>
+	<view style=" padding: 0 30rpx;margin-top: 30rpx;">
+	  <view style="display: flex;font-size: 28rpx;align-items: center;">
+	    <uv-checkbox-group
+			style="align-items: center;"
+	        activeColor="#4766FE"
+	        shape="circle"
+	        v-model="protocolChecked">
+	      <uv-checkbox size="22" :name="1" iconSize="20">
+			我已阅读并同意
+	      </uv-checkbox>
+	      <text class="protocol-text" >
+	        <text style="font-size: 28rpx;" class="link-text"  @click="$refs.agreement.open()">《相关协议》</text>
+	      </text>
+	    </uv-checkbox-group>
+	
+	  </view>
+	
+	</view>
 
     <agreement ref="agreement"></agreement>
     <uni-popup ref="popup" type="bottom" >
@@ -891,20 +1258,44 @@
 
     </uni-popup>
 
-    <uv-popup mode="center" round="20" ref="codeUi" :closeOnClickOverlay="false" bgColor="">
+    <uv-popup mode="center" round="20" ref="codeUi" :closeOnClickOverlay="false" >
 
-      <view style="padding: 40rpx;width:calc( 100% - 120rpx);margin: auto;border-radius: 40rpx 40rpx 40rpx 40rpx;background-image: url('/static/imgs/codeUiBACK.png');background-repeat: no-repeat;background-size: 100% 100%;padding-top: 60rpx;">
-
+      <view style="padding: 40rpx;width: 690rpx;background: url('/static/img/smsBg.png') no-repeat top center; background-size: 100%;height: 650rpx;position: relative;">
+		  <image
+		        @click="$refs.codeUi.close()"
+		        src="@/static/img/off.png"
+		        style="
+		    width: 50rpx;
+		    height: 50rpx;
+		    position: absolute;
+		    left: 320rpx;
+		    bottom: -70rpx;
+		    z-index: 6;
+		  "
+		    ></image>
+        <view class="head">
+          <view
+              style="
+          text-align: center;
+          font-weight: bold;
+          font-size: 36rpx;
+          position: relative;
+          height: 30rpx;
+        "
+          >
+          </view>
+        </view>
         <view  style="
           font-weight: bold;
           font-size: 36rpx;
           position: relative;
          margin-bottom: 12rpx;
+         text-align: left;
 
         ">短信确认</view>
-        <view style="font-size: 28rpx;color: #666666;">为确保安全到账,需再次对您的收款账户进行短信验证</view>
+        <view style="font-size: 28rpx;color: #252938;text-align: left;">为确保安全到账,需再次对您的收款账户进行短信验证</view>
 
-        <view class="content" style="margin-top: 40rpx;">
+        <view class="content">
           <uv-form
               :labelStyle="lstyle"
               labelPosition="left"
@@ -917,10 +1308,9 @@
                 class="item"
                 label=""
                 prop="repayTermStr"
-
+				style="position: relative;"
             >
               <uv-input
-                  shape="circle"
                   :adjustPosition="true"
                   readonly
                   v-model="cardPhone"
@@ -930,16 +1320,16 @@
 
                   border="none"
                   placeholder="请输入手机号"
+                  style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 50rpx;"
               ></uv-input>
+			  <image src="/static/img/phoneIcon.png" style="width: 44rpx;height: 44rpx;position: absolute;left: 10rpx;"></image>
             </uv-form-item>
-
-            <view style="height: 20rpx;"></view>
 
             <uv-form-item
                 class="item"
                 label=""
                 prop="needVerify"
-
+				style="position: relative;"
             >
               <uv-input
                   :adjustPosition="true"
@@ -947,52 +1337,73 @@
                   v-model="verificationCodeT"
                   border="none"
                   placeholder="请输入验证码"
+				  type="number"
+                  style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 50rpx;"
               >
                 <template #suffix>
                   <text
                       class="code"
+                      style="color: #4766FE;"
                       :class="isCounting_A ? 'ks' : ''"
                       @click="getCode"
                   >{{ isCounting_A ? countText_A : "获取验证码" }}</text
                   >
                 </template>
               </uv-input>
+			  <image src="/static/img/codeIcon.png" style="width: 44rpx;height: 44rpx;position: absolute;left: 10rpx;"></image>
             </uv-form-item>
             <uv-form-item >
-              <view class="but" style="width: 100%;margin-top: 20rpx;font-weight: 600;">
+              <view class="but" style="width: 100%;">
                 <uv-button
                     :customStyle="customStyle"
-
+                    shape="circle"
                     @click="submitPlan"
-                >确定</uv-button
+                >确认</uv-button
                 >
               </view>
             </uv-form-item>
           </uv-form>
         </view>
       </view>
-      <view style="text-align: center;margin-top: 40rpx;">
-        <image
-            @click="$refs.codeUi.close()"
-            src="@/static/imgs/closeA.png"
-            style="  width: 50rpx; height: 50rpx; "
-        ></image>
-      </view>
     </uv-popup>
-    <uv-popup mode="center" round="20" ref="setUi" :closeOnClickOverlay="false"  bgColor="" z-index="999">
+    <uv-popup mode="center" round="20" ref="setUi" :closeOnClickOverlay="false" >
 
-      <view style="padding: 40rpx;width:calc( 100% - 120rpx);margin: auto;border-radius: 40rpx 40rpx 40rpx 40rpx;background-image: url('/static/imgs/codeUiBACK.png');background-repeat: no-repeat;background-size: 100% 100%;padding-top: 60rpx;">
-
+      <view style="padding: 40rpx;width: 690rpx;background: url('/static/img/smsBg.png') no-repeat top center; background-size: 100%;height: 650rpx;position: relative;">
+		<image
+			@click="$refs.setUi.close()"
+			src="@/static/img/off.png"
+			style="
+		width: 50rpx;
+		height: 50rpx;
+		position: absolute;
+		left: 320rpx;
+		bottom: -70rpx;
+		z-index: 6;
+	  "
+		></image>
+        <view class="head">
+          <view
+              style="
+          text-align: center;
+          font-weight: bold;
+          font-size: 36rpx;
+          position: relative;
+          height: 30rpx;
+        "
+          >
+          </view>
+        </view>
         <view  style="
           font-weight: bold;
           font-size: 36rpx;
           position: relative;
          margin-bottom: 12rpx;
+         text-align: left;
 
         ">本人提交确认</view>
-        <view style="font-size: 28rpx;color: #666666;">根据合规要求我们将进行本人提交意愿确认的短信校验,请注意查看短信验证码</view>
+        <view style="font-size: 28rpx;color: #252938;text-align: left;">根据合规要求我们将进行本人提交意愿确认的短信校验,请注意查看短信验证码</view>
 
-        <view class="content" style="margin-top: 40rpx;">
+        <view class="content">
           <uv-form
               :labelStyle="lstyle"
               labelPosition="left"
@@ -1005,7 +1416,7 @@
                 class="item"
                 label=""
                 prop="repayTermStr"
-
+				style="position: relative;"
             >
               <uv-input
                   :adjustPosition="true"
@@ -1017,14 +1428,16 @@
 
                   border="none"
                   placeholder="请输入手机号"
+                  style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 50rpx;"
               ></uv-input>
+			  <image src="/static/img/phoneIcon.png" style="width: 44rpx;height: 44rpx;position: absolute;left: 10rpx;"></image>
             </uv-form-item>
-            <view style="height: 20rpx;"></view>
+
             <uv-form-item
                 class="item"
                 label=""
                 prop="needVerify"
-
+				style="position: relative;"
             >
               <uv-input
                   :adjustPosition="true"
@@ -1032,51 +1445,50 @@
                   v-model="verificationCodeS"
                   border="none"
                   placeholder="请输入验证码"
+				  type="number"
+                  style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 50rpx;"
               >
                 <template #suffix>
                   <text
                       class="code"
+                      style="color: #4766FE;"
                       :class="isCounting_B ? 'ks' : ''"
                       @click="getCode_san"
                   >{{ isCounting_B ? countText_B : "获取验证码" }}</text
                   >
                 </template>
               </uv-input>
+			  <image src="/static/img/codeIcon.png" style="width: 44rpx;height: 44rpx;position: absolute;left: 10rpx;"></image>
             </uv-form-item>
             <uv-form-item >
-              <view class="but" style="width: 100%;margin-top: 20rpx;font-weight: 600;">
+              <view class="but" style="width: 100%;">
                 <uv-button
                     :customStyle="customStyle"
+                    shape="circle"
                     @click="submitPlan_san"
-                >确定</uv-button
+                >确认</uv-button
                 >
               </view>
             </uv-form-item>
           </uv-form>
         </view>
       </view>
-
-      <view style="text-align: center;margin-top: 40rpx;">
-        <image
-            @click="$refs.setUi.close()"
-            src="@/static/imgs/closeA.png"
-            style="  width: 50rpx; height: 50rpx; "
-        ></image>
-      </view>
     </uv-popup>
 
     <uv-popup mode="bottom" round="20" ref="address" >
       <addAddress :addressDetail="addressDetail" @off="$refs.address.close()" @submit="e => addressDetail = e"></addAddress>
     </uv-popup>
-
+	
+	<provincesCity ref="provincesCity" @confirm="provincesCityChange" />
 
     <text-box v-if="showTextBox" ref="textBox" :getPlatformProtocolNewList="getPlatformProtocolNewList"></text-box>
-
-
   </view>
 </template>
 
 <style scoped lang="scss">
+::v-deep .uv-popup .uv-popup__content {
+	overflow: visible;
+}
 .a3{
   color: #BDBDBE;
   font-size: 30rpx;
@@ -1090,18 +1502,25 @@
 
 }
 .form{
-  background: #FFFFFF;
-  padding-top: 40rpx;
+	.form-item-ct{
+		 margin: 0 40rpx;
+		 background-color: #ffffff;
+		 padding: 30rpx;
+		 border-radius: 50rpx;
+	}
+	.form-item-title{
+		  border-left: 8rpx solid #4766FE; /* 定义左边框 */
+		  padding-left: 20rpx;
+	}
   .clo{
-    display: flex;
-    background: #FBFBFB !important;
-    border-radius: 24rpx 24rpx 24rpx 24rpx;
-    border: 2rpx solid #EEEEEE;
-    padding: 30rpx 20rpx;
-    margin: 0 40rpx 40rpx;
-
+    //display: flex;
+    //padding: 30rpx 0rpx;
+    padding-bottom: 30rpx;
+    // margin: 0 40rpx;
+    //border-bottom: 1rpx solid #E7E9ED;
+    background: #FFFFFF;
     .label{
-      width: 160rpx;
+      width: 460rpx;
       height: 40rpx;
 
       font-weight: 600;
@@ -1112,13 +1531,18 @@
 
     .inp_box{
       position: relative;
+      margin-top: 30rpx;
       .inp{
         &::placeholder{
           color: #999999;
           font-size: 30rpx;
         }
-        height: 42rpx;
-
+        width: 596rpx;
+        height: 100rpx;
+        // border: 1px solid #EEEEEE;
+		background-color: #F7F7F7;
+        border-radius: 30rpx;
+        padding-left: 20rpx !important;
         font-weight: 400;
         font-size: 30rpx;
         color: #333333;
@@ -1130,14 +1554,16 @@
 .code_a{
 
   font-weight: 400;
-  font-size: 24rpx;
-  color: #FF1472;
+  font-size: 28rpx;
+  color: #4766FE;
   padding: 16rpx 20rpx;
+  //border: 1rpx solid #EE2626;
+  //border-radius: 8rpx 8rpx 8rpx 8rpx;
 
 }
 .code_k{
   font-weight: 400;
-  font-size: 30rpx;
+  font-size: 28rpx;
   color: #999999;
 }
 
@@ -1154,12 +1580,12 @@
 
 .sub{
 
-
+  width: 100%;
   bottom: 50rpx;
-  padding: 0 10rpx;
-  margin-top: 50rpx;
+  padding: 0 30rpx;
+  margin-top: 40rpx;
   .sub_btn{
-    background: #FF1472;
+    background: #4766FE;
     border-radius: 50rpx 50rpx 50rpx 50rpx;
     padding: 10rpx;
 
@@ -1169,13 +1595,7 @@
 
   }
 }
-.item{
 
-  background: #FBFBFB;
-  border-radius: 24rpx 24rpx 24rpx 24rpx;
-  border: 2rpx solid #EEEEEE;
-  padding: 0 40rpx;
-}
 ::v-deep  .uni-checkbox-input{
   border-radius: 0;
   transform: scale(0.7);
@@ -1188,7 +1608,7 @@
   color: #BDBDBE;
 }
 .protocol-text {
-  width: calc( 100% - 44rpx);
+  // width: calc( 100% - 44rpx);
   font-size: 24rpx;
   color: #8B8D96;
   line-height: 28rpx;
@@ -1199,8 +1619,5 @@
 }
 .nots{
   opacity: 0.5;
-}
-.code{
-  color: #FF1472;
 }
 </style>

--
Gitblit v1.9.3