From 7f594b32345b5547d73d92ab6995eb5c69f357b9 Mon Sep 17 00:00:00 2001 From: yangan <yangan0921@163.com> Date: 星期一, 17 三月 2025 17:40:17 +0800 Subject: [PATCH] feat:注册车牌号校验修改 --- pages/register/register.vue | 124 +++++++++++++++++++++++++++++++++++++--- 1 files changed, 113 insertions(+), 11 deletions(-) diff --git a/pages/register/register.vue b/pages/register/register.vue index 518ddf2..31ea002 100644 --- a/pages/register/register.vue +++ b/pages/register/register.vue @@ -51,7 +51,7 @@ placeholder="璇疯緭鍏ュ唴瀹�" clearable></u--input> </u-form-item> - <u-form-item prop="password" + <u-form-item prop="password" label="瀵嗙爜" labelWidth="22%" borderBottom @@ -138,7 +138,7 @@ <u--input v-model="registerFormModel.totalLoad" @change="inputchange($event,5)" placeholder="璇疯緭鍏ュ唴瀹�" - clearable></u--input> + clearable></u--input><span style="position: absolute;right: 120rpx;line-height: 40px">鍚�</span> </u-form-item> <u-form-item prop="maximumPayload" label="鏈�澶ц浇閲�" @@ -148,6 +148,40 @@ required> <u--input v-model="registerFormModel.maximumPayload" @change="inputchange($event,4)" + placeholder="璇疯緭鍏ュ唴瀹�" + clearable></u--input><span style="position: absolute;right: 120rpx;line-height: 40px">鍚�</span> + </u-form-item> + + <u-form-item prop="axleNum" + label="杞﹁酱鏁�" + labelWidth="22%" + borderBottom + v-if="radiovalue1 == '鍙告満'" + required> + <u--input v-model="registerFormModel.axleNum" + @change="inputchange($event,6)" + placeholder="璇疯緭鍏ュ唴瀹�" + clearable></u--input> + </u-form-item> + + <u-form-item prop="certification" + label="浠庝笟璧勬牸璇佸彿" + labelWidth="22%" + borderBottom + v-if="radiovalue1 == '鍙告満'" + required> + <u--input v-model="registerFormModel.certification" + placeholder="璇疯緭鍏ュ唴瀹�" + clearable></u--input> + </u-form-item> + + <u-form-item prop="freightCompany" + label="鎵胯繍鍗曚綅" + labelWidth="22%" + borderBottom + v-if="radiovalue1 == '鍙告満'" + > + <u--input v-model="registerFormModel.freightCompany" placeholder="璇疯緭鍏ュ唴瀹�" clearable></u--input> </u-form-item> @@ -322,6 +356,28 @@ callback(); } }; + //楠岃瘉鏈�澶ф�婚噸涓嶈兘瓒呰繃杞﹁揣杞介噸 + const maxVstotalFun1 = (rule, value, callback) =>{ + console.log('瑙﹀彂',this.registerFormModel.maximumPayload ,this.registerFormModel.totalLoad,this.registerFormModel.maximumPayload <= this.registerFormModel.totalLoad) + if(!value || !this.registerFormModel.maximumPayload)callback() + if(Number(value) >= Number(this.registerFormModel.maximumPayload)){ + callback() + }else{ + callback(new Error("杞﹁揣鎬婚噸涓嶈兘灏忎簬鏈�澶ц浇閲�")) + } + + } + + const maxVstotalFun2 = (rule, value, callback) =>{ + console.log('瑙﹀彂',this.registerFormModel.maximumPayload ,this.registerFormModel.totalLoad,this.registerFormModel.maximumPayload <= this.registerFormModel.totalLoad) + if(!value || !this.registerFormModel.totalLoad)callback() + if(Number(value) <= Number(this.registerFormModel.totalLoad)){ + callback() + }else{ + callback(new Error("鏈�澶ц浇閲嶄笉鑳借秴杩囪溅璐ф�婚噸")) + } + + } const checkPassword = (rule, value, callback) => { // let roles = this.$store.getters.roles;//褰撳墠鐢ㄦ埛瑙掕壊id // let passL = 8; @@ -345,7 +401,7 @@ const regex2 = /^[A-Za-z]+$/ // 鏍¢獙绗﹀彿 const regex3 = - /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�乚+$/ + /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�乚+$/; if(regex1.test(value)) { this.level.push('low') return callback('瀵嗙爜寮哄害杩囦綆') @@ -414,7 +470,11 @@ isNonCoal: [], isCoalCar: 1, //鏄惁涓虹叅鐐溅杈�(鍙告満浣跨敤瀛楁) 1 鏄� 2 涓嶆槸 inventoryImg: '', - countryNumberCar: 0, //杞﹁締绫诲瀷;鍥戒簲 1锛屽浗鍏� 2 + countryNumberCar: 0, //杞﹁締绫诲瀷;鍥戒簲 1锛屽浗鍏� 2, + certification:'', + freightCompany:'', + axleNum:"", + }, fileList1: [], fileList2: [], @@ -492,7 +552,16 @@ return String(value); }, validator: (rule, value, callback) => { - return uni.$u.test.carNo(value); + // 鏂拌兘婧愯溅鐗� + const xreg = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}(([0-9]{5,6}[A-Z]$)|([A-Z][A-HJ-NP-Z0-9][0-9]{4,5}$))/ + // 鏃ц溅鐗� + const creg = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9鎸傚璀︽腐婢砞{1}$/ + if (value.length === 7) { + return creg.test(value) + } if (value.length === 8) { + return xreg.test(value) + } + return false }, message: '璇疯緭鍏ユ纭殑杞︾墝鍙�', trigger: ['change', 'blur'] @@ -543,15 +612,35 @@ maximumPayload: { type: 'number', required: true, - message: '璇疯緭鍏ユ渶澶ц浇閲�', + // message: '璇疯緭鍏ユ渶澶ц浇閲�', + validator: maxVstotalFun2, trigger: ['blur', 'change'] }, totalLoad:{ type: 'number', required: true, - message: '璇疯緭鍏ヨ溅璐ф�婚噸', + // message: '璇疯緭鍏ヨ溅璐ф�婚噸', + validator: maxVstotalFun1, trigger: ['blur', 'change'] - } + }, + axleNum:{ + type: 'number', + required: false, + message: '璇疯緭鍏ヨ溅杞存暟', + trigger: ['blur', 'change'] + }, + freightCompany:{ + type: 'string', + required: false, + message: '璇疯緭鍏ユ壙杩愬崟浣�', + trigger: ['blur', 'change'] + }, + certification:{ + type: 'string', + required: false, + message: '璇疯緭鍏ヤ粠涓氳祫鏍艰瘉鍙�', + trigger: ['blur', 'change'] + }, }, radiolist1: [{ name: '鍙告満', @@ -640,16 +729,28 @@ this.$nextTick(() => { this.registerFormModel.totalLoad = e.replace(inputType, ''); }) + break; + case 6: + this.$nextTick(() => { + this.registerFormModel.axleNum = e.replace(inputType, ''); + }) } }, registerClick() { this.$refs.regesterFormRef .validate() .then(res => { - this.registerClickloading = true; - this.registerFormModel.username = this.registerFormModel.phone; - apiRegister(this.registerFormModel) + if(this.radiovalue1 === '鍙告満' && this.registerFormModel.totalLoad<=this.registerFormModel.maximumPayload){ + uni.showToast({ + title: '杞﹁揣鎬婚噸闇�瑕佸ぇ浜庢渶澶ц浇閲�', + icon: 'none', + duration: 2000 + }); + }else{ + this.registerClickloading = true; + this.registerFormModel.username = this.registerFormModel.phone; + apiRegister(this.registerFormModel) .then(res => { this.registerClickloading = false; if (res.data.code == 0) { @@ -668,6 +769,7 @@ .catch(err => { console.log('閿欒', err); }); + } }) .catch(err => { console.log('err', err); -- Gitblit v1.9.1