From 25ee0fc249a081bb7bc4b485708c3e1afd3b07d1 Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期四, 18 九月 2025 14:13:17 +0800 Subject: [PATCH] 商品兑换卷调整以及绑定电话号码调整 --- pages.json | 14 ++++++- pages/order/claim-coupon/claim-coupon.vue | 45 ++++++++++++++++++---- pages/mine/set/personMsg.vue | 13 ++++++ pages/mine/set/securityCenter/bindMobile.vue | 19 +++++++-- 4 files changed, 75 insertions(+), 16 deletions(-) diff --git a/pages.json b/pages.json index 2dfbb3c..080939b 100644 --- a/pages.json +++ b/pages.json @@ -1553,7 +1553,17 @@ { "path": "complain/complain", "style": { - "navigationBarTitleText": "璁㈠崟鍟嗗搧鎶曡瘔" + "navigationBarTitleText": "璁㈠崟鍟嗗搧鎶曡瘔", + "componentPlaceholder": { + "u-popup": "view", + "u-icon": "view", + "u-line": "view", + "u-image": "view", + "u-select": "view", + "u-input": "view", + "u-upload": "view" + + } } }, { @@ -1803,7 +1813,7 @@ "path" : "claim-coupon/claim-coupon", "style" : { - "navigationBarTitleText" : "浼樻儬鍒搁鍙�", + "navigationBarTitleText" : "鍟嗗搧鍏戞崲鍒搁鍙�", "enablePullDownRefresh" : true, "componentPlaceholder": { "u-image": "view", diff --git a/pages/mine/set/personMsg.vue b/pages/mine/set/personMsg.vue index 7f42ea7..16543c8 100644 --- a/pages/mine/set/personMsg.vue +++ b/pages/mine/set/personMsg.vue @@ -124,6 +124,19 @@ showBirthday: false, //鏄剧ず鐢熸棩鏃ユ湡 }; }, + onShow() { + this.form = { + nickName: storage.getUserInfo().nickName || "", + birthday: storage.getUserInfo().birthday || "", + face: storage.getUserInfo().face, //榛樿澶村儚 + regionId: [], //鍦板潃Id + region: storage.getUserInfo().region || [], //鍦板潃 + sex: storage.getUserInfo().sex, //鎬у埆 + ___path: storage.getUserInfo().region, + mobile: storage.getUserInfo().mobile, + username: storage.getUserInfo().username, + } + }, onLoad() { this.initCOS() this.getMemberTag() diff --git a/pages/mine/set/securityCenter/bindMobile.vue b/pages/mine/set/securityCenter/bindMobile.vue index 2bdf4f8..ee8431a 100644 --- a/pages/mine/set/securityCenter/bindMobile.vue +++ b/pages/mine/set/securityCenter/bindMobile.vue @@ -10,15 +10,15 @@ <u-form :model="codeForm" ref="validateCodeForm"> <view v-if="!validateFlage"> <u-form-item label-width="120" label="鎵嬫満鍙�" prop="mobile"> - <u-input maxlength="11" v-model="codeForm.mobile" placeholder="璇疯緭鍏ユ偍鐨勬墜鏈哄彿" /> + <u-input maxlength="15" v-model="codeForm.mobile" placeholder="璇疯緭鍏ユ偍鐨勬墜鏈哄彿" /> </u-form-item> - <u-form-item class="sendCode" label-width="120" prop="code" label="楠岃瘉鐮�"> + <!-- <u-form-item class="sendCode" label-width="120" prop="code" label="楠岃瘉鐮�"> <u-input v-model="codeForm.code" placeholder="璇疯緭鍏ラ獙璇佺爜" /> <u-verification-code unique-key="page-edit" :seconds="seconds" @end="end" @start="start" ref="uCode" @change="codeChange"></u-verification-code> <view @tap="getCode" class="text-tips">{{ tips }}</view> - </u-form-item> + </u-form-item> --> <view class="submit" @click="validatePhone">缁戝畾</view> <myVerification keep-running @send="verification" class="verification" ref="verification" @@ -35,7 +35,7 @@ sendMobile, bindMobile } from "@/api/login"; - + import storage from "@/utils/storage.js"; import myVerification from "@/pages/mine/verification/verification.vue"; //楠岃瘉 import uuid from "@/utils/uuid.modified.js"; export default { @@ -50,7 +50,7 @@ flage: false, //鏄惁楠岃瘉鐮侀獙璇� codeForm: { mobile: "", //鎵嬫満鍙� - code: "", //楠岃瘉鐮� + code: "111111", //楠岃瘉鐮� username: "", //鐢ㄦ埛鍚� }, tips: "", //鎻愮ず @@ -109,6 +109,12 @@ } } }, + 'codeForm.mobile': function(newVal, oldVal) { + // 褰撴墜鏈哄彿鍙樺寲鏃讹紝鑷姩鍘婚櫎绌烘牸 + if (newVal && typeof newVal === 'string') { + this.codeForm.mobile = newVal.replace(/\s/g, ''); + } + } }, methods: { @@ -130,6 +136,9 @@ duration: 2000, icon: "none", }); + let userInfo = storage.getUserInfo() + userInfo.mobile = this.codeForm.mobile; + storage.setUserInfo(userInfo) setTimeout(() => { uni.navigateBack({ delta: 1, diff --git a/pages/order/claim-coupon/claim-coupon.vue b/pages/order/claim-coupon/claim-coupon.vue index 4e26ca6..0f7a359 100644 --- a/pages/order/claim-coupon/claim-coupon.vue +++ b/pages/order/claim-coupon/claim-coupon.vue @@ -2,8 +2,8 @@ <view class="container"> <!-- 椤堕儴鏍囬 --> <view class="header"> - <text class="title">浼樻儬鍒搁鍙�</text> - <text class="subtitle">棰嗗彇鎮ㄧ殑涓撳睘浼樻儬鍒�</text> + <text class="title">鍟嗗搧鍏戞崲鍒搁鍙�</text> + <text class="subtitle">棰嗗彇鎮ㄧ殑涓撳睘鍟嗗搧鍏戞崲鍒�</text> </view> <!-- 鍗曚釜浼樻儬鍒稿睍绀� --> @@ -104,15 +104,42 @@ if (options.id) { this.cardId = options.id this.loadCouponInfo(options.id); - } else { + }else if(options.q) { + // 鍙岄噸瑙g爜锛氬井淇″URL杩涜浜嗕袱娆$紪鐮� + const decodedUrl = decodeURIComponent(decodeURIComponent(options.q)); + console.log('鍘熷URL:', decodedUrl); + + // 瑙f瀽URL涓殑鏌ヨ鍙傛暟 + const params = this.parseUrlParams(decodedUrl); + this.cardId = params.id; + this.loadCouponInfo(this.cardId); + } + else { // 濡傛灉娌℃湁浼犻�扞D锛屾樉绀虹┖鐘舵�� uni.showToast({ - title: '缂哄皯浼樻儬鍒窱D鍙傛暟', + title: '缂哄皯鍏戞崲鍒窱D鍙傛暟', icon: 'none' }); } }, methods: { + // 瑙f瀽URL鍙傛暟 + parseUrlParams(url) { + const params = {}; + // 澶勭悊鍙兘瀛樺湪鐨刪ash锛堝鏋滄湁鐨勮瘽锛� + const cleanUrl = url.split('#')[0]; + const queryStr = cleanUrl.split('?')[1] || ''; + + queryStr.split('&').forEach(pair => { + const [key, value] = pair.split('='); + if (key) { + // 濡傛灉鍊煎瓨鍦紝鍒欒В鐮侊紝鍚﹀垯璁句负绌哄瓧绗︿覆 + params[key] = value ? decodeURIComponent(value) : ''; + } + }); + + return params; + }, // 鍔犺浇鎸囧畾ID鐨勪紭鎯犲埜淇℃伅 async loadCouponInfo(id) { if (this.loading) return; @@ -125,12 +152,12 @@ if (res.data.code===200) { this.couponInfo = res.data.data; } else { - throw new Error(res.message || '鑾峰彇浼樻儬鍒稿け璐�'); + throw new Error(res.message || '鑾峰彇鍏戞崲鍒稿け璐�'); } } catch (err) { - console.error('鑾峰彇浼樻儬鍒镐俊鎭け璐�:', err); + console.error('鑾峰彇鍏戞崲鍒镐俊鎭け璐�:', err); uni.showToast({ - title: err.message || '鑾峰彇浼樻儬鍒稿け璐�', + title: err.message || '鑾峰彇鍏戞崲鍒稿け璐�', icon: 'none' }); } finally { @@ -142,7 +169,7 @@ async claimCoupon() { if (!this.couponInfo || this.couponInfo.claimStatus === 'CLAIM') { uni.showToast({ - title: '璇ヤ紭鎯犲埜宸查鍙�', + title: '璇ュ厬鎹㈠埜宸查鍙�', icon: 'none' }); return; @@ -174,7 +201,7 @@ } } catch (err) { uni.hideLoading(); - console.error('棰嗗彇浼樻儬鍒稿け璐�:', err); + console.error('棰嗗彇鍏戞崲鍒稿け璐�:', err); uni.showToast({ title: err.message || '棰嗗彇澶辫触', icon: 'none' -- Gitblit v1.8.0