From 18b45638fe3aac07e65aeb5b1da337d4e4bdc87c Mon Sep 17 00:00:00 2001
From: 石广澎 <shiguangpeng@163.com>
Date: 星期日, 30 十一月 2025 18:24:36 +0800
Subject: [PATCH] fix(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