lx
yfx
2026-04-01 02d7e1b64cca1fef88a4810ab3588b6b5eebe545
lx
1 files modified
617 ■■■■■ changed files
pages/quanyi/add.vue 617 ●●●●● patch | view | raw | blame | history
pages/quanyi/add.vue
@@ -1,25 +1,26 @@
<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 leftIcon from '@/static/imgs/icons/left.png'
import kkIcon from '@/static/imgs/icons/kk.png'
import addAddress from "@/pages/quanyi/components/addAddress";
import agreement from "@/pages/quanyi/components/agreement";
import textBox from "@/components/textBox/index.vue";
export default {
  name: "add",
  components: {
    addAddress,agreement,textBox
    addAddress, agreement, textBox
  },
  data() {
    return {
      getPlatformProtocolNewList:[],
      getPlatformProtocolNewList: [],
      showTextBox: false,
      loginAct: false,
      $webHost:'https://rbb98765.zrgy-bbg.com',
      $webHost: 'https://rbb98765.zrgy-bbg.com',
      protocolChecked: [1],
      offIcon,leftIcon,kkIcon,
      callbackData:{},
      offIcon, leftIcon, kkIcon,
      callbackData: {},
      addressDetail: {
        consignee: '',
        contactPhone: '',
@@ -31,14 +32,14 @@
        areaCode: '',
        areaName: '',
      },
      show:true,
      isCounting:false,
      isCounting_A:false,
      isCounting_B:false,
      countText:'',
      countText_A:'',
      countText_B:'',
      checked:true,
      show: true,
      isCounting: false,
      isCounting_A: false,
      isCounting_B: false,
      countText: '',
      countText_A: '',
      countText_B: '',
      checked: true,
      idCardNo: '',
      verificationCode: '',
      verificationCodeT: '',
@@ -49,20 +50,20 @@
      bankName: '',
      // 手机
      cardPhone: '',
      bankList:[],
      cardIdNo:'',
      cardName:'',
      bindCardId:'',
      bankList: [],
      cardIdNo: '',
      cardName: '',
      bindCardId: '',
      windowHeight: 0,
      interval: null,
      bankCode:"",
      getPayBindCardInfo:[],
      bankCode: "",
      getPayBindCardInfo: [],
      lstyle: {
        color: "#333333",
        fontSize: "30rpx",
        fontWeight: "bold",
      },
      bindStatus:false
      bindStatus: false
    };
@@ -70,7 +71,7 @@
  computed: {
    addressStr() {
      if(this.addressDetail.provinceName || this.addressDetail.cityName || this.addressDetail.areaName) {
      if (this.addressDetail.provinceName || this.addressDetail.cityName || this.addressDetail.areaName) {
        return `${this.addressDetail.provinceName}${this.addressDetail.cityName}${this.addressDetail.areaName}${this.addressDetail.detailAddr}`
      } else {
        return ''
@@ -96,10 +97,9 @@
    const _this = this
    uni.request({
      url: _this.$webHost+'/api/v2/customer/getCstAddress',
      data:{
      url: _this.$webHost + '/api/v2/customer/getCstAddress',
      data: {
        customerId: uni.getStorageSync('qxgLogin').customerId,
        sourceId: uni.getStorageSync('qxgLogin').appId
      },
@@ -110,25 +110,25 @@
    uni.request({
      url: _this.$webHost+'/api/v2/xinheyuan/bank/list/fake/'+uni.getStorageSync('qxgLogin').customerId,
      success(res){
      url: _this.$webHost + '/api/v2/xinheyuan/bank/list/fake/' + uni.getStorageSync('qxgLogin').customerId,
      success(res) {
        console.log(res.data.data);
        this.bankList = res.data.data;
        uni.setStorageSync('bankList', res.data.data)
      }
    })
    uni.setStorageSync('windowHeight',uni.getSystemInfoSync().windowHeight)
    uni.setStorageSync('windowHeight', uni.getSystemInfoSync().windowHeight)
    uni.request({
      url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
      method:'get',
      success:function(res){
      url: _this.$webHost + `/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
      method: 'get',
      success: function (res) {
        const dy = res.data.data[0];
        _this.queryBind = dy;
        _this.getPayBindCardInfo = res.data.data;
        if(dy.bindStatus){
        if (dy.bindStatus) {
          _this.bindStatus = true;
          _this.cardNumber = dy.cardNumber;
          _this.bankName = dy.bankName;
@@ -141,7 +141,7 @@
    })
    uni.request( {
    uni.request({
      url: _this.$webHost + "/api/v2/renpin/H5/getPlatformProtocolNew",
      data: {
        customerId: uni.getStorageSync('qxgLogin').customerId,
@@ -158,11 +158,11 @@
    })
  },
  methods: {
    kk(){
    kk() {
      const _this = this;
      if(this.addressStr.length < 8){
      if (this.addressStr.length < 8) {
        uni.showToast({
          title: '请输入详细地址',
          icon: 'none'
@@ -172,18 +172,18 @@
      uni.request({
        url: _this.$webHost+'/api/v2/sign/signed/'+uni.getStorageSync('qxgLogin').customerId,
        method:'POST',
        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:{
        url: _this.$webHost + '/api/v2/pay/memberPurchaseBenefitsPays',
        method: 'POST',
        data: {
          customerId: uni.getStorageSync('qxgLogin').customerId,
          memberPeriodConfigId: uni.getStorageSync('memberPeriodConfigInfo').id
        },
        success(){
        success() {
          _this.getUserInfo()
        }
      })
@@ -194,11 +194,11 @@
      this.show = this.windowHeight > uni.getStorageSync('windowHeight') - 100;
      // 在这里处理高度变化后的逻辑
    },
    setbankName(e){
    setbankName(e) {
      this.bankName = e;
      this.$refs.popup.close()
    },
    open(){
    open() {
      this.$refs.popup.open()
    },
@@ -206,16 +206,16 @@
      const _this = this;
      if(!_this.cardNumber.length || _this.cardNumber.length<14 ){
      if (!_this.cardNumber.length || _this.cardNumber.length < 14) {
        return
      }
      uni.request({
        url: _this.$webHost+'/api/v2/pay/getBankCardArea/'+_this.cardNumber,
        method:'POST',
        url: _this.$webHost + '/api/v2/pay/getBankCardArea/' + _this.cardNumber,
        method: 'POST',
        success(res){
          if(res.data.code==200){
        success(res) {
          if (res.data.code == 200) {
            _this.bankCode = res.data.data.bankCode;
            _this.bankName = res.data.data.bankName;
          } else {
@@ -231,29 +231,32 @@
    },
    submit() {
      const _this = this;
      if(!this.loginAct){uni.showToast({title: '请阅读并同意相关协议', icon: 'none'});return;}
      if(!_this.cardName){
      if (!this.loginAct) {
        uni.showToast({title: '请阅读并同意相关协议', icon: 'none'});
        return;
      }
      if (!_this.cardName) {
        uni.showToast({
          title: "请填写您的姓名",
          icon: "none",
        });
        return;
      }
      if(!_this.idCardNo){
      if (!_this.idCardNo) {
        uni.showToast({
          title: "请填写您的身份证号",
          icon: "none",
        });
        return;
      }
      if(!_this.cardNumber){
      if (!_this.cardNumber) {
        uni.showToast({
          title: "请填写银行卡号",
          icon: "none",
        });
        return;
      }
      if(!_this.cardPhone){
      if (!_this.cardPhone) {
        uni.showToast({
          title: "请输入手机号码",
          icon: "none",
@@ -261,7 +264,7 @@
        return;
      }
      if(!_this.verificationCode && !_this.getPayBindCardInfo[0].bindStatus){
      if (!_this.verificationCode && !_this.getPayBindCardInfo[0].bindStatus) {
        uni.showToast({
          title: "请输入验证码",
          icon: "none",
@@ -269,7 +272,7 @@
        return
      }
      if(!_this.addressStr){
      if (!_this.addressStr) {
        uni.showToast({
          title: "请填写您的详细地址",
          icon: "none",
@@ -278,14 +281,26 @@
      }
      if(_this.getPayBindCardInfo[0].bindStatus) {
      if (_this.getPayBindCardInfo[0].bindStatus) {
        if (!_this.getPayBindCardInfo[1].bindStatus) {
          _this.$refs.codeUi.open()
          if (_this.getPayBindCardInfo[1].bindCardH5Url) {
            _this.$refs.codeUi.class()
            uni.navigateTo({
              url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[1].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[1].bindCardId}`,
            })
          }
          return;
        }
        if (!_this.getPayBindCardInfo[2].bindStatus) {
          _this.$refs.setUi.open()
          _this.$refs.setUi.open();
          if (_this.getPayBindCardInfo[2].bindCardH5Url) {
            _this.$refs.setUi.class()
            uni.navigateTo({
              url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[2].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[2].bindCardId}`,
            })
          }
          return;
@@ -295,64 +310,78 @@
      uni.request({
        url:_this.$webHost+`/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
        method:'get',
        success:function(res){
        url: _this.$webHost + `/api/v2/pay/getPayBindCardInfo/${uni.getStorageSync('qxgLogin').customerId}`,
        method: 'get',
        success: function (res) {
          _this.getPayBindCardInfo = res.data.data;
        }
      })
      uni.request({
        url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
        method:'POST',
        data:{
        url: _this.$webHost + '/api/v2/pay/verifySMSCodes',
        method: 'POST',
        data: {
          ..._this.bindCardId,
          "customerId": uni.getStorageSync('qxgLogin').customerId,
          "cardPhone" : _this.cardPhone,  //手机号
          "cardPhone": _this.cardPhone,  //手机号
          "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){
        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;
            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;}
              if (!ls || !ls.some(item => item.bindStatus == 0)) {
                _this.kk();
                return;
              }
              if(ls.length>1 && !ls[1].bindStatus){
              if (ls.length > 1 && !ls[1].bindStatus) {
                _this.$refs.codeUi.open()
                if (_this.getPayBindCardInfo[1].bindCardH5Url) {
                  _this.$refs.codeUi.class()
                  uni.navigateTo({
                    url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[1].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[1].bindCardId}`,
                  })
                }
                _this.isCounting = false;
                _this.countText = '';
                return;
              }
              if(ls.length>2 && !ls[2].bindStatus){
              if (ls.length > 2 && !ls[2].bindStatus) {
                _this.$refs.setUi.open();
                if (_this.getPayBindCardInfo[2].bindCardH5Url) {
                  _this.$refs.setUi.class()
                  uni.navigateTo({
                    url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[2].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[2].bindCardId}`,
                  })
                }
                _this.isCounting = false;
                _this.countText = '';
                return;
              }
              if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
              if (!ls || !ls.some(item => item.bindStatus == 0)) {
                _this.kk();
                return;
              }
            }
@@ -363,83 +392,94 @@
    },
    agreeClick () {
    agreeClick() {
      this.loginAct = !this.loginAct
    },
    getSmsCode(){
      const that = this;
      console.log(that.getPayBindCardInfo[0].paymentMethod);
      if(this.isCounting){
    getSmsCode() {
      const _this = this;
      console.log(_this.getPayBindCardInfo[0].paymentMethod);
      if (this.isCounting) {
        return
      }
      if(that.getPayBindCardInfo[0].bindStatus){
        if(!that.getPayBindCardInfo[1].bindStatus){
          that.$refs.codeUi.open();
      if (_this.getPayBindCardInfo[0].bindStatus) {
        if (!_this.getPayBindCardInfo[1].bindStatus) {
          _this.$refs.codeUi.open();
          if (_this.getPayBindCardInfo[1].bindCardH5Url) {
            _this.$refs.setUi.class()
            uni.navigateTo({
              url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[1].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[1].bindCardId}`,
            })
          }
          return
        }
        if(!that.getPayBindCardInfo[2].bindStatus){
          that.$refs.setUi.open();
        if (!_this.getPayBindCardInfo[2].bindStatus) {
          _this.$refs.setUi.open();
          if (_this.getPayBindCardInfo[2].bindCardH5Url) {
            _this.$refs.setUi.class()
            uni.navigateTo({
              url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[2].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[2].bindCardId}`,
            })
          }
        }
        return
      }
      if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(that.cardPhone)) return that.$util.Tips({
      if (!/^1(3|4|5|7|8|9|6)\d{9}$/i.test(_this.cardPhone)) return _this.$util.Tips({
        title: '请输入正确的手机号码'
      });
      that.isCounting = true;
      _this.isCounting = true;
      uni.request({
        url: that.$webHost+'/api/v2/xinheyuan/bankcard/save',
        method:'POST',
        data:{
        url: _this.$webHost + '/api/v2/xinheyuan/bankcard/save',
        method: 'POST',
        data: {
          "customerId": uni.getStorageSync('qxgLogin').customerId,
          "nameReal": that.cardName, // 名字
          "cardNo":that.cardNumber,
          "idCard": that.idCardNo,
          "nameReal": _this.cardName, // 名字
          "cardNo": _this.cardNumber,
          "idCard": _this.idCardNo,
          "bankPhoneNo":that.cardPhone,
          "bankCode": that.bankCode,
          "bankName": that.bankName,
          "phone":  that.cardPhone,  //手机号
          "paymentMethod":  that.getPayBindCardInfo[0].paymentMethod ,
          "bankPhoneNo": _this.cardPhone,
          "bankCode": _this.bankCode,
          "bankName": _this.bankName,
          "phone": _this.cardPhone,  //手机号
          "paymentMethod": _this.getPayBindCardInfo[0].paymentMethod,
          "preBindType": "prebc",
          "bankId": "1",
        },
        success(){
        success() {
          uni.request({
            url: that.$webHost+'/api/v2/pay/bindCardToCodes',
            method:'POST',
            data:{
            url: _this.$webHost + '/api/v2/pay/bindCardToCodes',
            method: 'POST',
            data: {
              "customerId": uni.getStorageSync('qxgLogin').customerId,
              "cardName": that.cardName, // 名字
              "cardIdNo": that.idCardNo,
              "cardName": _this.cardName, // 名字
              "cardIdNo": _this.idCardNo,
              "cardNumber":that.cardNumber,
              "bankPhoneNo":that.cardPhone,
              "bankCode": that.bankCode,
              "bankName": that.bankName,
              "cardPhone":  that.cardPhone,  //手机号
              "paymentMethod":  that.getPayBindCardInfo[0].paymentMethod ,
              "cardNumber": _this.cardNumber,
              "bankPhoneNo": _this.cardPhone,
              "bankCode": _this.bankCode,
              "bankName": _this.bankName,
              "cardPhone": _this.cardPhone,  //手机号
              "paymentMethod": _this.getPayBindCardInfo[0].paymentMethod,
              "preBindType": "prebc",
              "bankId": "1",
            },
            success(res){
              if(res.data.code === 401){
                that.getUserInfo()
            success(res) {
              if (res.data.code === 401) {
                _this.getUserInfo()
                return;
              }
              if(res.data.code !==200){
              if (res.data.code !== 200) {
                uni.showToast({
                  title: res.data.data,
                  icon: 'none'
@@ -447,31 +487,32 @@
                return;
              }
              if(res.data.code === 200){
                that.bindCardId = res.data.data;
              if (res.data.code === 200) {
                _this.bindCardId = res.data.data;
              } else {
                that.isCounting = false;
                that.countText = '';
                _this.isCounting = false;
                _this.countText = '';
                uni.showToast({
                  title: res.data.data,
                  icon: 'none'
                });
                if(!that.getPayBindCardInfo[0].bindStatus){
                if (!_this.getPayBindCardInfo[0].bindStatus) {
                  return;
                }
                if(!that.getPayBindCardInfo[1].bindStatus){
                  that.$refs.codeUi.open()
                  that.isCounting = false;
                  that.countText = '';
                if (!_this.getPayBindCardInfo[1].bindStatus) {
                  _this.$refs.codeUi.open()
                  _this.isCounting = false;
                  _this.countText = '';
                  return
                } if(!that.getPayBindCardInfo[2].bindStatus){
                  that.isCounting = false;
                  that.countText = '';
                  that.$refs.setUi.open()
                }
                if (!_this.getPayBindCardInfo[2].bindStatus) {
                  _this.isCounting = false;
                  _this.countText = '';
                  _this.$refs.setUi.open()
                  return
                }
              }
@@ -480,22 +521,22 @@
          })
          let count = 60;
          that.countText = `${count}s秒后重新获取`;
          _this.countText = `${count}s秒后重新获取`;
          const timer = setInterval(() => {
            count--;
            that.countText = `${count}s秒后重新获取`;
            _this.countText = `${count}s秒后重新获取`;
            if (count <= 0) {
              clearInterval(timer);
              that.isCounting = false;
              that.countText = '';
              _this.isCounting = false;
              _this.countText = '';
            }
          },1000)
          }, 1000)
        },
        fail(err){
          that.isCounting = false;
          that.countText = '';
        fail(err) {
          _this.isCounting = false;
          _this.countText = '';
          uni.showToast({
            title: err,
            icon: 'none'
@@ -504,17 +545,9 @@
      })
    },
// 二次获取
    getCode(){
    getCode() {
      if (this.isCounting_A) {
        return;
      }
@@ -523,9 +556,9 @@
      const pro = uni.getStorageSync('qxgLogin')
      pro['userName'] = _this.cardName;
      uni.request({
        url: _this.$webHost+'/api/v2/pay/bindCardToCodes',
        method:'POST',
        data:{
        url: _this.$webHost + '/api/v2/pay/bindCardToCodes',
        method: 'POST',
        data: {
          cardIdNo: _this.idCardNo,
          customerId: pro.customerId,
          cardName: _this.cardName,
@@ -534,16 +567,16 @@
          cardNumber: _this.cardNumber,
          bankName: _this.bankName,
          preBindType: "prebc",
          paymentMethod:paymentMethod,
          againType : true
          paymentMethod: paymentMethod,
          againType: true
        },
        success(dt){
          if(dt.data.code === 401){
        success(dt) {
          if (dt.data.code === 401) {
            _this.getUserInfo()
            return;
          }
          const res = dt.data.data;
          if(!res){
          if (!res) {
            return;
          }
          _this.callbackData = res;
@@ -569,7 +602,7 @@
      })
    },
    submitPlan(){
    submitPlan() {
      const _this = this;
@@ -586,43 +619,52 @@
      uni.request({
        url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
        method:'POST',
        data:{
        url: _this.$webHost + '/api/v2/pay/verifySMSCodes',
        method: 'POST',
        data: {
          ...callbackData,
          "customerId": uni.getStorageSync('qxgLogin').customerId,
          "cardPhone" : _this.cardPhone,  //手机号
          "cardPhone": _this.cardPhone,  //手机号
          "cardNumber": _this.cardNumber, //卡号
          paymentMethod:paymentMethod,
          "cardName" : _this.cardName, // 名字
          "cardIdNo" : _this.cardIdNo,
          "bankName" : _this.bankName,
          "cardNo" :  _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){
        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;
            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){
              if (ls.length > 2 && !ls[2].bindStatus) {
                _this.isCounting_A = false;
                _this.countText_A = '';
                _this.$refs.codeUi.close()
                _this.$refs.setUi.open()
                _this.$refs.setUi.open();
                if (_this.getPayBindCardInfo[2].bindCardH5Url) {
                  _this.$refs.setUi.class()
                  uni.navigateTo({
                    url: `/pages/web/polling?url=${encodeURIComponent(_this.getPayBindCardInfo[2].bindCardH5Url)}&bindCardId=${_this.getPayBindCardInfo[2].bindCardId}`,
                  })
                }
                return;
              }
              if(!ls || !ls.some(item => item.bindStatus == 0)) {_this.kk();return;}
              if (!ls || !ls.some(item => item.bindStatus == 0)) {
                _this.kk();
                return;
              }
            }
@@ -632,7 +674,7 @@
    },
// 三次
    getCode_san(){
    getCode_san() {
      if (this.isCounting_B) {
        return;
      }
@@ -641,9 +683,9 @@
      const pro = uni.getStorageSync('qxgLogin')
      pro['userName'] = _this.cardName;
      uni.request({
        url: _this.$webHost+'/api/v2/pay/bindCardToCodes',
        method:'POST',
        data:{
        url: _this.$webHost + '/api/v2/pay/bindCardToCodes',
        method: 'POST',
        data: {
          cardIdNo: _this.idCardNo,
          customerId: pro.customerId,
          cardName: _this.cardName,
@@ -652,16 +694,16 @@
          cardNumber: _this.cardNumber,
          bankName: _this.bankName,
          preBindType: "prebc",
          paymentMethod:paymentMethod,
          againType : true
          paymentMethod: paymentMethod,
          againType: true
        },
        success(dt){
          if(dt.data.code ==401){
        success(dt) {
          if (dt.data.code == 401) {
            _this.getUserInfo()
            return;
          }
          if(dt.data.code !==200){
          if (dt.data.code !== 200) {
            uni.showToast({
              title: dt.data.data,
              icon: 'none'
@@ -670,7 +712,7 @@
          }
          const res = dt.data.data;
          if(!res){
          if (!res) {
            return;
          }
          _this.callbackData = res;
@@ -695,7 +737,7 @@
        }
      })
    },
    submitPlan_san(){
    submitPlan_san() {
      const _this = this;
@@ -713,41 +755,44 @@
      uni.request({
        url: _this.$webHost+'/api/v2/pay/verifySMSCodes',
        method:'POST',
        data:{
        url: _this.$webHost + '/api/v2/pay/verifySMSCodes',
        method: 'POST',
        data: {
          ...callbackData,
          "customerId": uni.getStorageSync('qxgLogin').customerId,
          "cardPhone" : _this.cardPhone,  //手机号
          "cardPhone": _this.cardPhone,  //手机号
          "cardNumber": _this.cardNumber, //卡号
          paymentMethod:paymentMethod,
          "cardName" : _this.cardName, // 名字
          "cardIdNo" : _this.cardIdNo,
          "bankName" : _this.bankName,
          "cardNo" :  _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){
        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){
            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;}
              if (!ls || !ls.some(item => item.bindStatus == 0)) {
                _this.kk();
                return;
              }
            }
@@ -759,9 +804,7 @@
    },
    getUserInfo() {
      uni.reLaunch({
@@ -770,14 +813,14 @@
    },
  },
  onUnload() {
      clearInterval(this.interval);
    },
  }
    clearInterval(this.interval);
  },
}
</script>
<template>
  <view style="background: #fff;padding-bottom: 20rpx;">
    <view >
    <view>
      <view class="top">为向您提供更好的安全保障,您需要提供银行卡号以完成信息核验</view>
    </view>
@@ -788,7 +831,7 @@
          <text>真实姓名</text>
        </view>
        <view class="inp_box">
          <input  maxlength="8" style="width: 400rpx;"   v-model="cardName" class="inp" placeholder="请填写您的姓名" />
          <input maxlength="8" style="width: 400rpx;" v-model="cardName" class="inp" placeholder="请填写您的姓名"/>
        </view>
      </view>
@@ -797,11 +840,10 @@
          <text>身份证号</text>
        </view>
        <view class="inp_box">
          <input  maxlength="18" style="width: 400rpx;"   v-model="idCardNo" class="inp" placeholder="请填写您的身份证号" />
          <input maxlength="18" style="width: 400rpx;" v-model="idCardNo" class="inp" placeholder="请填写您的身份证号"/>
        </view>
      </view>
      <view class="clo" style="display: flex">
@@ -809,8 +851,10 @@
          <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>
          <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>
@@ -818,8 +862,8 @@
        <view class="label">
          <text>所属银行</text>
        </view>
        <view class="inp_box" style="flex: 1;z-index: 1" >
          <view :class="bankName?'':'a3'">{{bankName?bankName:'请输入所属银行'}}</view>
        <view class="inp_box" style="flex: 1;z-index: 1">
          <view :class="bankName?'':'a3'">{{ bankName ? bankName : '请输入所属银行' }}</view>
        </view>
@@ -828,8 +872,8 @@
        <view class="label">
          <view>手机号码</view>
        </view>
        <view class="inp_box" >
          <input  maxlength="11" v-model="cardPhone"  class="inp" placeholder="请填写银行预留手机号" />
        <view class="inp_box">
          <input maxlength="11" v-model="cardPhone" class="inp" placeholder="请填写银行预留手机号"/>
        </view>
      </view>
@@ -838,7 +882,8 @@
          <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="请输入验证码" />
          <input maxlength="6" v-model="verificationCode" class="inp" type="number" style="width: 200rpx"
                 placeholder="请输入验证码"/>
          <view class="code" style="flex: 1;text-align: right" @click="getSmsCode">
            <text :class="isCounting?'code_k':'code_a'">{{ isCounting ? countText : '获取验证码' }}</text>
@@ -848,11 +893,11 @@
      </view>
      <view class="clo" style="display: flex;margin-bottom: 20rpx;" @click="$refs.address.open()">
        <view class="label" >
        <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;" v-if="addressStr">{{ addressStr }}</view>
          <view style="font-size: 28rpx;color: #BDBDBE;" v-else>请填写您的详细地址</view>
        </view>
@@ -863,24 +908,31 @@
    <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>
        <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="loginAct?'':'nots'" class="sub_btn" @click="submit">提交</button>
    </view>
    <agreement ref="agreement"></agreement>
    <uni-popup ref="popup" type="bottom" >
      <view style="background: white;border-radius: 40rpx 40rpx 0 0 ;padding: 0 40rpx;padding-top: 48rpx;position: relative;z-index: 99">
        <view style="text-align: center;color: #252938;font-weight: 600;font-size: 36rpx;margin-bottom: 20rpx;">选择银行</view>
    <uni-popup ref="popup" type="bottom">
      <view
          style="background: white;border-radius: 40rpx 40rpx 0 0 ;padding: 0 40rpx;padding-top: 48rpx;position: relative;z-index: 99">
        <view style="text-align: center;color: #252938;font-weight: 600;font-size: 36rpx;margin-bottom: 20rpx;">
          选择银行
        </view>
        <view class="ul" style="max-height: 800rpx;overflow: scroll" v-if="bankList">
          <view v-for="(i,k) in bankList" :key="i.bankName" class="li" style="padding: 20rpx;border-bottom: 1rpx solid #E7E9ED" @click="setbankName(i.bankName)">
          <view v-for="(i,k) in bankList" :key="i.bankName" class="li"
                style="padding: 20rpx;border-bottom: 1rpx solid #E7E9ED" @click="setbankName(i.bankName)">
            <image :src="i.bankLogo" style="width: 50rpx;height: 30rpx;position: relative;top: 10rpx;"></image>
            <text style="color: #333333;font-size: 28rpx;margin-left: 22rpx;">{{ i.bankName }}</text>
          </view>
@@ -893,15 +945,17 @@
    <uv-popup mode="center" round="20" ref="codeUi" :closeOnClickOverlay="false" bgColor="">
      <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: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="
        <view style="
          font-weight: bold;
          font-size: 36rpx;
          position: relative;
         margin-bottom: 12rpx;
        ">短信确认</view>
        ">短信确认
        </view>
        <view style="font-size: 28rpx;color: #666666;">为确保安全到账,需再次对您的收款账户进行短信验证</view>
        <view class="content" style="margin-top: 40rpx;">
@@ -953,18 +1007,20 @@
                      class="code"
                      :class="isCounting_A ? 'ks' : ''"
                      @click="getCode"
                  >{{ isCounting_A ? countText_A : "获取验证码" }}</text
                  >{{ isCounting_A ? countText_A : "获取验证码" }}
                  </text
                  >
                </template>
              </uv-input>
            </uv-form-item>
            <uv-form-item >
            <uv-form-item>
              <view class="but" style="width: 100%;margin-top: 20rpx;font-weight: 600;">
                <uv-button
                    :customStyle="customStyle"
                    @click="submitPlan"
                >确定</uv-button
                >确定
                </uv-button
                >
              </view>
            </uv-form-item>
@@ -979,18 +1035,22 @@
        ></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" bgColor="" z-index="999">
      <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: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="
        <view style="
          font-weight: bold;
          font-size: 36rpx;
          position: relative;
         margin-bottom: 12rpx;
        ">本人提交确认</view>
        <view style="font-size: 28rpx;color: #666666;">根据合规要求我们将进行本人提交意愿确认的短信校验,请注意查看短信验证码</view>
        ">本人提交确认
        </view>
        <view style="font-size: 28rpx;color: #666666;">
          根据合规要求我们将进行本人提交意愿确认的短信校验,请注意查看短信验证码
        </view>
        <view class="content" style="margin-top: 40rpx;">
          <uv-form
@@ -1038,17 +1098,19 @@
                      class="code"
                      :class="isCounting_B ? 'ks' : ''"
                      @click="getCode_san"
                  >{{ isCounting_B ? countText_B : "获取验证码" }}</text
                  >{{ isCounting_B ? countText_B : "获取验证码" }}
                  </text
                  >
                </template>
              </uv-input>
            </uv-form-item>
            <uv-form-item >
            <uv-form-item>
              <view class="but" style="width: 100%;margin-top: 20rpx;font-weight: 600;">
                <uv-button
                    :customStyle="customStyle"
                    @click="submitPlan_san"
                >确定</uv-button
                >确定
                </uv-button
                >
              </view>
            </uv-form-item>
@@ -1065,8 +1127,9 @@
      </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 mode="bottom" round="20" ref="address">
      <addAddress :addressDetail="addressDetail" @off="$refs.address.close()"
                  @submit="e => addressDetail = e"></addAddress>
    </uv-popup>
@@ -1077,22 +1140,25 @@
</template>
<style scoped lang="scss">
.a3{
.a3 {
  color: #BDBDBE;
  font-size: 30rpx;
}
.top{
.top {
  background: #FFEBEB;
  font-size: 24rpx;
  color: #C21818;
  text-align: center ;
  text-align: center;
  padding: 20rpx 26rpx;
}
.form{
.form {
  background: #FFFFFF;
  padding-top: 40rpx;
  .clo{
  .clo {
    display: flex;
    background: #FBFBFB !important;
    border-radius: 24rpx 24rpx 24rpx 24rpx;
@@ -1100,7 +1166,7 @@
    padding: 30rpx 20rpx;
    margin: 0 40rpx 40rpx;
    .label{
    .label {
      width: 160rpx;
      height: 40rpx;
@@ -1110,13 +1176,15 @@
    }
    .inp_box{
    .inp_box {
      position: relative;
      .inp{
        &::placeholder{
      .inp {
        &::placeholder {
          color: #999999;
          font-size: 30rpx;
        }
        height: 42rpx;
        font-weight: 400;
@@ -1127,7 +1195,8 @@
    }
  }
}
.code_a{
.code_a {
  font-weight: 400;
  font-size: 24rpx;
@@ -1135,13 +1204,14 @@
  padding: 16rpx 20rpx;
}
.code_k{
.code_k {
  font-weight: 400;
  font-size: 30rpx;
  color: #999999;
}
.xieyi{
.xieyi {
  color: #8B8D96;
  padding-left: 40rpx;
  height: 34rpx;
@@ -1152,13 +1222,14 @@
}
.sub{
.sub {
  bottom: 50rpx;
  padding: 0 10rpx;
  margin-top: 50rpx;
  .sub_btn{
  .sub_btn {
    background: #FF1472;
    border-radius: 50rpx 50rpx 50rpx 50rpx;
    padding: 10rpx;
@@ -1169,38 +1240,46 @@
  }
}
.item{
.item {
  background: #FBFBFB;
  border-radius: 24rpx 24rpx 24rpx 24rpx;
  border: 2rpx solid #EEEEEE;
  padding: 0 40rpx;
}
::v-deep  .uni-checkbox-input{
::v-deep .uni-checkbox-input {
  border-radius: 0;
  transform: scale(0.7);
  &:before{
  &:before {
    top: 45% !important;
  }
}
::v-deep  .uni-input-placeholder{
::v-deep .uni-input-placeholder {
  color: #BDBDBE;
}
.protocol-text {
  width: calc( 100% - 44rpx);
  width: calc(100% - 44rpx);
  font-size: 24rpx;
  color: #8B8D96;
  line-height: 28rpx;
}
.link-text {
  color: #207ef5;
  display: inline;
}
.nots{
.nots {
  opacity: 0.5;
}
.code{
.code {
  color: #FF1472;
}
</style>