zhb před 2 měsíci
rodič
revize
5eb4351d2a
1 změnil soubory, kde provedl 143 přidání a 50 odebrání
  1. 143 50
      pages/customer/withdrawal.vue

+ 143 - 50
pages/customer/withdrawal.vue

@@ -29,7 +29,7 @@
             </view>
             <view v-if="step3" class="reselect-btn">
               <button class="s-btn reselect" type="primary" @click="showTable">{{ t('Custom.Deposit.Reselect')
-              }}</button>
+                }}</button>
             </view>
           </view>
         </view>
@@ -117,7 +117,7 @@
                     <text>{{ t('Custom.Withdraw.addBank') }}</text>
                     <text class="add-btn crm-cursor" @click="openAddBankCard('add_bankCard')">{{
                       t('Custom.Withdraw.addBank1')
-                      }}</text>
+                    }}</text>
                   </view>
                   <view class="add-back" v-else-if="channelData.type === 'CHANNEL_TYPE_CARD'">
                     <text>{{ t('PersonalManagement.Label.addCreditCard') }}</text>
@@ -213,8 +213,9 @@
                   <checkbox-group :value="form.agree2 ? ['1'] : []" @change="onAgree2Change">
                     <label class="checkbox">
                       <checkbox value="1" />
-                      <text class="crm-cursor" style="text-decoration: underline;" @click="dialogCheckTip = true">{{
-                        t('Custom.Withdraw.Des') }}</text>
+                      <text class="crm-cursor" style="text-decoration: underline;"
+                        @click.stop="dialogCheckTip = true">{{
+                          t('Custom.Withdraw.Des') }}</text>
                     </label>
                   </checkbox-group>
                 </uni-forms-item>
@@ -243,7 +244,7 @@
         :userName="userName" :dialogCheckConfirm_form="dialogCheckConfirm_form" :login="loginValue" @confirm="submit" />
       <!-- 协议弹窗 -->
       <cwg-tips-popup v-model:visible="dialogCheckTip"
-        introduce="isZh.value ? introduce.introduce : introduce.enIntroduce" />
+        :introduce="isZh.value ? introduce.introduce : introduce.enIntroduce" />
       <!-- 等待弹窗 -->
       <cwg-wait-popup v-model:visible="dialogCheckWait" type="center" :mask-click="false" :showFooters="false" />
       <!-- 最后失败弹窗 -->
@@ -274,6 +275,7 @@ import Config from "@/config/index"
 import Decimal from "decimal.js"
 import QrCode from "@/components/QRCode.vue"
 // import logoImage from "@/assets/images/MTBG.jpg"
+import AddBankDialog from '@/components/AddBankDialog.vue';
 import PaymentMethodsList from './components/PaymentMethodsList.vue'
 import CwgCheckConfirmPopup from './components/WithdrawCheckConfirmPopup.vue'
 import CwgKycPopup from './components/KycPopup.vue'
@@ -690,53 +692,144 @@ function selectChange() {
   // proxy.$forceUpdate();
 }
 //新增
+// function openAddBankCard(type) {
+//   if (type == "add_bankCard") {
+//     if (ruleForm.bankInfo.length == 2) {
+//       proxy.$pigeon.MessageConfirm(
+//         t("Msg.UnionPayCARDS"),
+//         t("Msg.SystemPrompt"),
+//         t("Btn.Confirm"),
+//         t("Btn.Cancel"),
+//         async function () { },
+//         function () { }
+//       );
+//     } else {
+//       openType.value = "add_bankCard";
+//       dialogInfoTradingAdd.value = true;
+//     }
+//   } else if (type == "add_wireTransfer") {
+//     if (ruleForm.bankWrit.length == 2) {
+//       proxy.$pigeon.MessageConfirm(
+//         t("Msg.WireTransfers"),
+//         t("Msg.SystemPrompt"),
+//         t("Btn.Confirm"),
+//         t("Btn.Cancel"),
+//         async function () { },
+//         function () { }
+//       );
+//     } else {
+//       openType.value = "add_wireTransfer";
+//       dialogInfoTradingAdd.value = true;
+//     }
+//   } else if (type == "add_CreditCard") {
+//     openType.value = "add_CreditCard";
+//     dialogInfoTradingAdd.value = true;
+//   } else if (type == "add_bankBlockchain") {
+//     if (ruleForm.bankBlockchain.length == 2) {
+//       proxy.$pigeon.MessageConfirm(
+//         t("blockchain.item9"),
+//         t("Msg.SystemPrompt"),
+//         t("Btn.Confirm"),
+//         t("Btn.Cancel"),
+//         async function () { },
+//         function () { }
+//       );
+//     } else {
+//       openType.value = "add_bankBlockchain";
+//       dialogInfoTradingAdd.value = true;
+//     }
+//   }
+// }
+// 新增银行信息
+const addBankDialogRef = ref(null);
 function openAddBankCard(type) {
-  if (type == "add_bankCard") {
-    if (ruleForm.bankInfo.length == 2) {
-      proxy.$pigeon.MessageConfirm(
-        t("Msg.UnionPayCARDS"),
-        t("Msg.SystemPrompt"),
-        t("Btn.Confirm"),
-        t("Btn.Cancel"),
-        async function () { },
-        function () { }
-      );
-    } else {
-      openType.value = "add_bankCard";
-      dialogInfoTradingAdd.value = true;
-    }
-  } else if (type == "add_wireTransfer") {
-    if (ruleForm.bankWrit.length == 2) {
-      proxy.$pigeon.MessageConfirm(
-        t("Msg.WireTransfers"),
-        t("Msg.SystemPrompt"),
-        t("Btn.Confirm"),
-        t("Btn.Cancel"),
-        async function () { },
-        function () { }
-      );
-    } else {
-      openType.value = "add_wireTransfer";
-      dialogInfoTradingAdd.value = true;
-    }
-  } else if (type == "add_CreditCard") {
-    openType.value = "add_CreditCard";
-    dialogInfoTradingAdd.value = true;
-  } else if (type == "add_bankBlockchain") {
-    if (ruleForm.bankBlockchain.length == 2) {
-      proxy.$pigeon.MessageConfirm(
-        t("blockchain.item9"),
-        t("Msg.SystemPrompt"),
-        t("Btn.Confirm"),
-        t("Btn.Cancel"),
-        async function () { },
-        function () { }
-      );
-    } else {
-      openType.value = "add_bankBlockchain";
-      dialogInfoTradingAdd.value = true;
-    }
+  console.log(type, 121212)
+  switch (type) {
+    case 'add_bankBlockchain':
+      openAddCrypto()
+      break;
+    case 'add_bankCard':
+      openAddUnionpay()
+      break;
+    case 'add_wireTransfer':
+      openAddBank()
+      break;
+    case 'add_CreditCard':
+      openAddCredit()
+      break;
+  }
+}
+function openAddCrypto() {
+  const wallets = bankCardOptions.value || []
+  // 1️⃣ 没有钱包
+  if (wallets.length === 0) {
+    addBankDialogRef.value?.open(4);
+    return;
+  }
+  // 2️⃣ 是否存在未认证钱包
+  const hasUnAuth = wallets.some(
+    item => item.authStatus === 0 || item.approveStatus === 1
+  );
+  if (hasUnAuth) {
+    uni.showToast({
+      title: "加密钱包未认证",
+      icon: "none"
+    });
+    return;
+  }
+  // 3️⃣ 是否达到上限
+  if (wallets.length >= 2) {
+    uni.showToast({
+      title: t('blockchain.item9'),
+      icon: "none"
+    });
+    return;
+  }
+  // 4️⃣ 正常打开
+  addBankDialogRef.value?.open(4);
+}
+function openAddUnionpay() {
+  const wallets = bankCardOptions.value || []
+  if (wallets.length === 0) {
+    addBankDialogRef.value?.open(1);
+    return;
+  }
+  if (wallets.length >= 2) {
+    uni.showToast({
+      title: t('Msg.UnionPayCARDS'),
+      icon: "none"
+    });
+    return;
+  }
+  addBankDialogRef.value?.open(1);
+}
+function openAddBank() {
+  const wallets = bankCardOptions.value || []
+  console.log(wallets, 121212)
+  if (wallets.length === 0) {
+    addBankDialogRef.value?.open(2);
+    return;
   }
+  if (wallets.length >= 2) {
+    uni.showToast({
+      title: t('Msg.WireTransfers'),
+      icon: "none"
+    });
+    return;
+  }
+  addBankDialogRef.value?.open(2);
+}
+function openAddCredit() {
+  const wallets = bankCardOptions.value || []
+  if (wallets.length === 0) {
+    addBankDialogRef.value?.open(3);
+    return;
+  }
+  addBankDialogRef.value?.open(3);
+}
+// 新增银行信息成功回调
+const addSuccess = (e) => {
+  getBankInfo();
 }
 function closeDiaAdd() {
   dialogInfoTradingAdd.value = false;