From 55ee7bd313c7d8030ce8c547b18ad5f19507afd2 Mon Sep 17 00:00:00 2001
From: 石广澎 <shiguangpeng@163.com>
Date: 星期日, 30 十一月 2025 16:12:37 +0800
Subject: [PATCH] feat(pay): 新增会员充值和次卡购买页面
---
pages/pay/addCardFirst.vue | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 113 insertions(+), 0 deletions(-)
diff --git a/pages/pay/addCardFirst.vue b/pages/pay/addCardFirst.vue
new file mode 100644
index 0000000..cbd756e
--- /dev/null
+++ b/pages/pay/addCardFirst.vue
@@ -0,0 +1,113 @@
+<template>
+ <view>
+ <view class="u-p-30 color-666">璇风粦瀹氭寔鍗′汉鏈汉鐨勯摱琛屽崱</view>
+ <u--form class="bg-fff u-p-h-30" labelWidth="80" :model="form" :rules="rules" ref="uForm">
+ <u-form-item label="鎸佸崱浜�" prop="acctName" borderBottom>
+ <u--input v-model="form.acctName" border="none" placeholder="璇疯緭鍏ユ寔鍗′汉濮撳悕"></u--input>
+ </u-form-item>
+ <u-form-item label="鍗″彿" prop="cardNo">
+ <u--input v-model="form.cardNo" border="none" placeholder="璇疯緭鍏ュ崱鍙�"></u--input>
+ </u-form-item>
+ </u--form>
+ <view class="u-p-40">
+ <u-button @click="doNext" :loading="loading" :disabled="loading" type="error" text="涓嬩竴姝�"></u-button>
+ </view>
+
+ </view>
+</template>
+
+<script>
+ import {
+ isContain,
+ } from '@/common/api/index'
+ const bankName = require("@/common/bankName.js");
+ export default {
+ data() {
+ return {
+ loading: false,
+ form: {
+ acctName: '',
+ cardNo: ''
+ },
+ rules: {
+ acctName: [{
+ required: true,
+ message: '鎸佸崱浜哄鍚嶄笉鑳戒负绌�',
+ trigger: 'blur'
+ }, {
+ // 鑷畾涔夐獙璇佸嚱鏁帮紝瑙佷笂璇存槑
+ validator: (rule, value, callback) => {
+ // 涓婇潰鏈夎锛岃繑鍥瀟rue琛ㄧず鏍¢獙閫氳繃锛岃繑鍥瀎alse琛ㄧず涓嶉�氳繃
+ // uni.$u.test.mobile()灏辨槸杩斿洖true鎴栬�協alse鐨�
+ return uni.$u.test.rangeLength(value, [2, 6]) && uni.$u.test.chinese(value);
+ },
+ message: '鎸佸崱浜哄鍚嶄笉姝g‘',
+ trigger: 'change'
+ }],
+ cardNo: [{
+ required: true,
+ message: '鍗″彿涓嶈兘涓虹┖',
+ trigger: 'blur'
+ }, {
+ // 鑷畾涔夐獙璇佸嚱鏁帮紝瑙佷笂璇存槑
+ validator: (rule, value, callback) => {
+ // 涓婇潰鏈夎锛岃繑鍥瀟rue琛ㄧず鏍¢獙閫氳繃锛岃繑鍥瀎alse琛ㄧず涓嶉�氳繃
+ // uni.$u.test.mobile()灏辨槸杩斿洖true鎴栬�協alse鐨�
+ return this.$utils.verifyBankCard(value);
+ },
+ message: '鍗″彿涓嶆纭�',
+ trigger: 'change'
+ }]
+ }
+ };
+ },
+ onReady() {
+ //濡傛灉闇�瑕佸吋瀹瑰井淇″皬绋嬪簭锛屽苟涓旀牎楠岃鍒欎腑鍚湁鏂规硶绛夛紝鍙兘閫氳繃setRules鏂规硶璁剧疆瑙勫垯銆�
+ this.$refs.uForm.setRules(this.rules)
+ },
+ methods: {
+ doNext() {
+ this.$refs.uForm.validate().then(res => {
+ this.loading = true
+ isContain({
+ cardNum: this.form.cardNo
+ }).then(res => {
+ uni.request({
+ url: 'https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_charset=utf-8&cardBinCheck=true&cardNo=' +
+ this.form.cardNo,
+ method: "GET",
+ complete: (res) => {
+ this.loading = false
+ if (res.statusCode == 200) {
+ if (res.data.validated) {
+ const bank = bankName.bankName[res.data.bank]
+ const params = uni.$u.deepClone(this.form);
+ params.cardType = res.data.cardType
+ params.bankName = bank
+ uni.$u.route({
+ url: '/pages/pay/addCardSecond',
+ params: params
+ })
+ } else {
+ uni.$u.toast("鍗″彿涓嶆纭紒");
+ }
+ } else {
+ uni.$u.toast("鍗$被鍨嬭幏鍙栧け璐ワ紒");
+ }
+ }
+ })
+ }).catch(() => {
+ this.loading = false
+ })
+
+ }).catch(errors => {
+
+ })
+ }
+ }
+ }
+</script>
+
+<style lang="scss">
+
+</style>
--
Gitblit v1.9.1