From 7e4fa7d43d84b4faea0fca20ed6dc5e20637aa0e Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期一, 20 十月 2025 16:36:01 +0800 Subject: [PATCH] fix: bug --- apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.vue | 17 +++++ apps/cMiniApp/src/constants/router.ts | 1 apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.config.ts | 3 + apps/cMiniApp/src/app.config.ts | 1 apps/cMiniApp/src/subpackages/wallet/unboundAlipay/InnerPage.vue | 99 +++++++++++++++++++++++++++++++++ 5 files changed, 121 insertions(+), 0 deletions(-) diff --git a/apps/cMiniApp/src/app.config.ts b/apps/cMiniApp/src/app.config.ts index a8ac25a..5d8277b 100644 --- a/apps/cMiniApp/src/app.config.ts +++ b/apps/cMiniApp/src/app.config.ts @@ -90,6 +90,7 @@ 'mineWallet/mineWallet', 'bindBankCard/bindBankCard', 'unboundBankCard/unboundBankCard', + 'unboundAlipay/unboundAlipay', 'incomeDetail/incomeDetail', 'incomeDetailInfo/incomeDetailInfo', 'withdraw/withdraw', diff --git a/apps/cMiniApp/src/constants/router.ts b/apps/cMiniApp/src/constants/router.ts index bf56af1..114b98d 100644 --- a/apps/cMiniApp/src/constants/router.ts +++ b/apps/cMiniApp/src/constants/router.ts @@ -41,6 +41,7 @@ mineWallet = '/subpackages/wallet/mineWallet/mineWallet', unboundBankCard = '/subpackages/wallet/unboundBankCard/unboundBankCard', + unboundAlipay = '/subpackages/wallet/unboundBankCard/unboundAlipay', bindBankCard = '/subpackages/wallet/bindBankCard/bindBankCard', incomeDetail = '/subpackages/wallet/incomeDetail/incomeDetail', incomeDetailInfo = '/subpackages/wallet/incomeDetailInfo/incomeDetailInfo', diff --git a/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/InnerPage.vue b/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/InnerPage.vue new file mode 100644 index 0000000..0356fc6 --- /dev/null +++ b/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/InnerPage.vue @@ -0,0 +1,99 @@ +<template> + <ContentScrollView :paddingH="false"> + <nut-form :model-value="form" ref="formRef" :rules="rules"> + <nut-form-item label="鏀粯瀹濇埛鍚�:" class="bole-form-item" prop="name"> + <nut-input v-model.trim="form.name" placeholder="璇疯緭鍏ユ敮浠樺疂鎴峰悕" readonly /> + </nut-form-item> + <nut-form-item label="鏀粯瀹濊处鍙�:" class="bole-form-item" prop="code"> + <nut-input v-model.trim="form.code" placeholder="璇疯緭鍏ユ敮浠樺疂璐﹀彿" /> + </nut-form-item> + </nut-form> + </ContentScrollView> + <PageFooter> + <PageFooterBtn type="primary" @click="handleConfirm">缁戝畾鏀粯瀹�</PageFooterBtn> + </PageFooter> +</template> + +<script setup lang="ts"> +import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; +import { ProFormCaptcha } from 'senin-mini/components'; +import { FormValidator, Message } from '@12333/utils'; +import * as userServices from '@12333/services/apiV2/user'; +import Taro from '@tarojs/taro'; +import { useQueryClient } from '@tanstack/vue-query'; +import { EnumUserBankCardAccess } from '@12333/constants'; + +const { userDetail } = useUser(); +const switchTab = useSwitchTab(); +defineOptions({ + name: 'InnerPage', +}); + +const form = reactive({ + name: userDetail.value?.name ?? '', + identity: userDetail.value?.identity ?? '', + phoneNumber: '', + code: '', + bank: '', + bankBranch: '', + verifyCode: '', +}); + +const rules = reactive<FormRules>({ + code: [ + { required: true, message: '璇疯緭鍏ラ摱琛屽崱鍙�' }, + { message: '璇疯緭鍏ユ纭殑閾惰鍗″彿', validator: FormValidator.validatorBankCard }, + ], + bank: [{ required: true, message: '璇疯緭鍏ュ紑鎴疯' }], + phoneNumber: [ + { required: true, message: '璇峰~鍐欐墜鏈哄彿鐮�' }, + { message: '璇疯緭鍏ユ纭殑鎵嬫満鍙风爜', validator: FormValidator.validatorPhoneNumber }, + ], + verifyCode: [{ required: true, message: '璇疯緭鍏ラ獙璇佺爜' }], +}); + +async function onGetCaptcha(phoneNumber: string) { + await userServices.sendSavePersonalUserBankCardVerifyCode( + { + phoneNumber: form.phoneNumber, + }, + { showLoading: false } + ); +} + +const formRef = ref<any>(null); +function handleConfirm() { + if (!formRef.value) return; + formRef.value.validate().then(({ valid, errors }: any) => { + if (valid) { + confirm(); + } + }); +} + +async function confirm() { + try { + let params: API.SavePersonalUserBankCardCommand = { + code: form.code, + bank: form.bank, + phoneNumber: form.phoneNumber, + verifyCode: form.verifyCode, + access: EnumUserBankCardAccess.Bank, + }; + let res = await userServices.savePersonalUserBankCard(params); + if (res) { + Message.success('缁戝畾鎴愬姛', { + onClosed() { + switchTab({ + url: RouterPath.mine, + }); + }, + }); + } + } catch (error) {} +} +</script> + +<style lang="scss"> +@import '@/styles/common.scss'; +</style> diff --git a/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.config.ts b/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.config.ts new file mode 100644 index 0000000..305fdb1 --- /dev/null +++ b/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.config.ts @@ -0,0 +1,3 @@ +export default definePageConfig({ + disableScroll: true, +}); diff --git a/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.vue b/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.vue new file mode 100644 index 0000000..c79ecde --- /dev/null +++ b/apps/cMiniApp/src/subpackages/wallet/unboundAlipay/unboundAlipay.vue @@ -0,0 +1,17 @@ +<template> + <PageLayout class="unboundBankCard-page-wrapper" title="缁戝畾鏀粯瀹�" has-border> + <InnerPage></InnerPage> + </PageLayout> +</template> + +<script setup lang="ts"> +import InnerPage from './InnerPage.vue'; + +defineOptions({ + name: 'unboundAlipay', +}); +</script> + +<style lang="scss"> +@import '@/styles/common.scss'; +</style> -- Gitblit v1.9.1