From fc4c8b7e4f9d926a43903389afb21d5a09208f8e Mon Sep 17 00:00:00 2001
From: yangan <yangan0921@163.com>
Date: 星期四, 13 二月 2025 16:41:30 +0800
Subject: [PATCH] feat:承运单位改为非必填样式

---
 pages/register/register.vue |  262 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 241 insertions(+), 21 deletions(-)

diff --git a/pages/register/register.vue b/pages/register/register.vue
index 774d10c..f65c092 100644
--- a/pages/register/register.vue
+++ b/pages/register/register.vue
@@ -4,7 +4,7 @@
 			<u--form :rules="rules"
 				:model="registerFormModel"
 				ref="regesterFormRef">
-				<u-form-item labelWidth="20%"
+				<u-form-item labelWidth="22%"
 					label="閫夋嫨韬唤"
 					borderBottom
 					ref="roleRef"
@@ -26,7 +26,7 @@
 				</u-form-item>
 				<u-form-item prop="name"
 					label="濮撳悕"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					required>
 					<u--input v-model="registerFormModel.name"
@@ -35,7 +35,7 @@
 				</u-form-item>
 				<u-form-item prop="idCard"
 					label="韬唤璇�"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					required>
 					<u--input v-model="registerFormModel.idCard"
@@ -44,7 +44,7 @@
 				</u-form-item>
 				<u-form-item prop="phone"
 					label="鎵嬫満鍙�"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					required>
 					<u--input v-model="registerFormModel.phone"
@@ -53,7 +53,7 @@
 				</u-form-item>
 				<u-form-item prop="password"
 					label="瀵嗙爜"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					required>
 					<u--input v-model="registerFormModel.password"
@@ -78,7 +78,7 @@
         </view>
 				<u-form-item prop="confirmPassword"
 					label="纭瀵嗙爜"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					required>
 					<u--input v-model="registerFormModel.confirmPassword"
@@ -88,7 +88,7 @@
 				</u-form-item>
 				<u-form-item prop="carNo"
 					label="杞︾墝鍙�"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					v-if="radiovalue1 == '鍙告満'"
 					required>
@@ -96,9 +96,99 @@
 						placeholder="璇疯緭鍏ュ唴瀹�"
 						clearable></u--input>
 				</u-form-item>
+				<u-form-item prop="truckLength"
+					label="杞﹂暱"
+					labelWidth="22%"
+					borderBottom
+					v-if="radiovalue1 == '鍙告満'"
+					required>
+					<u--input v-model="registerFormModel.truckLength"
+						@change="inputchange($event,1)"
+						placeholder="璇疯緭鍏ュ唴瀹�"
+						clearable></u--input>
+				</u-form-item>
+				<u-form-item prop="truckWidth"
+					label="杞﹀"
+					labelWidth="22%"
+					borderBottom
+					v-if="radiovalue1 == '鍙告満'"
+					required>
+					<u--input v-model="registerFormModel.truckWidth"
+						placeholder="璇疯緭鍏ュ唴瀹�"
+						@change="inputchange($event,2)"
+						clearable></u--input>
+				</u-form-item>
+				<u-form-item prop="truckHeight"
+					label="杞﹂珮"
+					labelWidth="22%"
+					borderBottom
+					v-if="radiovalue1 == '鍙告満'"
+					required>
+					<u--input v-model="registerFormModel.truckHeight"
+						placeholder="璇疯緭鍏ュ唴瀹�"
+						@change="inputchange($event,3)"
+						clearable></u--input>
+				</u-form-item>
+				<u-form-item prop="totalLoad"
+					label="杞﹁揣鎬婚噸"
+					labelWidth="22%"
+					borderBottom
+					v-if="radiovalue1 == '鍙告満'"
+					required>
+					<u--input v-model="registerFormModel.totalLoad"
+						@change="inputchange($event,5)"
+						placeholder="璇疯緭鍏ュ唴瀹�"
+						clearable></u--input><span style="position: absolute;right: 120rpx;line-height: 40px">鍚�</span>
+				</u-form-item>
+				<u-form-item prop="maximumPayload"
+					label="鏈�澶ц浇閲�"
+					labelWidth="22%"
+					borderBottom
+					v-if="radiovalue1 == '鍙告満'"
+					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>
+				
 				<u-form-item prop="carImg"
 					label="杞﹁締鐓х墖"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					v-if="radiovalue1 == '鍙告満'"
 					required
@@ -117,7 +207,7 @@
 				</u-form-item>
 				<u-form-item prop="drivingImg"
 					label="琛岄┒璇�"
-					labelWidth="20%"
+					labelWidth="22%"
 					borderBottom
 					v-if="radiovalue1 == '鍙告満'"
 					required
@@ -204,7 +294,7 @@
 						</u-checkbox>
 					</u-checkbox-group>
 				</u-form-item>
-				<u-form-item labelWidth="20%"
+				<u-form-item labelWidth="22%"
 					v-if="radiovalue1 == '鍙告満'"
 					label="杞﹁締绫诲瀷"
 					borderBottom
@@ -266,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;
@@ -289,7 +401,7 @@
         const regex2 = /^[A-Za-z]+$/
         // 鏍¢獙绗﹀彿
         const regex3 =
-            /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�乚+$/
+            /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�乚+$/;
         if(regex1.test(value)) {
           this.level.push('low')
           return callback('瀵嗙爜寮哄害杩囦綆')
@@ -302,7 +414,7 @@
         }else if(/^[A-Za-z\d]+$/.test(value)) {
           this.level.push('low')
           this.level.push('middle')
-          return callback()
+          return callback('瀵嗙爜寮哄害杩囦綆')
         }else if(
             /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�乗d]+$/.test(
                 value
@@ -310,7 +422,7 @@
         ) {
           this.level.push('low')
           this.level.push('middle')
-          return callback()
+          return callback('瀵嗙爜寮哄害杩囦綆')
         }else if(
             /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�丄-Za-z]+$/.test(
                 value
@@ -318,7 +430,7 @@
         ) {
           this.level.push('low')
           this.level.push('middle')
-          return callback()
+          return callback('瀵嗙爜寮哄害杩囦綆')
         } else if (
             /^[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]路~锛丂#锟�%鈥︹��&*锛堬級鈥斺�擻-+={}|銆娿�嬶紵锛氣�溾�濄�愩�戙�侊紱鈥�'锛屻�傘�丄-Za-z\d]+$/.test(
                 value
@@ -344,6 +456,11 @@
 					type: 3,
 					idCard: '',
 					carNo: '',
+					truckLength:null,
+					truckWidth:null,
+					truckHeight:null,
+					maximumPayload:null,
+					totalLoad:null,
 					carImg: '',
 					drivingImg: '',
 					tuiJianMa: '',
@@ -353,7 +470,11 @@
 					isNonCoal: [],
 					isCoalCar: 1, //鏄惁涓虹叅鐐溅杈�(鍙告満浣跨敤瀛楁) 1 鏄� 2 涓嶆槸
 					inventoryImg: '',
-					countryNumberCar: 0, //杞﹁締绫诲瀷;鍥戒簲 1锛屽浗鍏� 2
+					countryNumberCar: 0, //杞﹁締绫诲瀷;鍥戒簲 1锛屽浗鍏� 2,
+					certification:'',
+					freightCompany:'',
+					axleNum:"",
+					
 				},
 				fileList1: [],
 				fileList2: [],
@@ -461,6 +582,56 @@
 						message: '璇蜂笂浼犱粠涓氳祫鏍艰瘉鐓х墖',
 						trigger: ['blur', 'change']
 					},
+					truckLength: {
+						type: 'number',
+						required: true,
+						message: '璇疯緭鍏ヨ溅闀�',
+						trigger: ['blur', 'change']
+					},
+					truckWidth: {
+						type: 'number',
+						required: true,
+						message: '璇疯緭鍏ヨ溅瀹�',
+						trigger: ['blur', 'change']
+					},
+					truckHeight: {
+						type: 'number',
+						required: true,
+						message: '璇疯緭鍏ヨ溅楂�',
+						trigger: ['blur', 'change']
+					},
+					maximumPayload: {
+						type: 'number',
+						required: true,
+						// message: '璇疯緭鍏ユ渶澶ц浇閲�',
+						validator: maxVstotalFun2,
+						trigger: ['blur', 'change']
+					},
+					totalLoad:{
+						type: 'number',
+						required: true,
+						// 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: '鍙告満',
@@ -498,7 +669,9 @@
 		watch: {
 			radiovalue1(newV) {
 				if (this.registerFormModel.name || this.registerFormModel.idCard || this.registerFormModel.phone || this
-					.registerFormModel.carNo || this.registerFormModel.password) {
+					.registerFormModel.carNo || this.registerFormModel.password || this.registerFormModel.truckLength
+					 || this.registerFormModel.truckWidth || this.registerFormModel.truckHeight || this.registerFormModel.maximumPayload
+					 ||this.registerFormModel.totalLoad ) {
 					if (this.editRoleModelShow == true) {
 						this.editRoleModelShow = false;
 					} else {
@@ -520,14 +693,55 @@
 		},
 		methods: {
 			...mapMutations(['changeisUploadimg']),
+			inputchange(e, num) {
+				const inputType =/[^\d.]/g
+				switch (num) {
+					case 1:
+						this.$nextTick(() => {
+							this.registerFormModel.truckLength = e.replace(inputType, '');
+						})
+						break;
+					case 2:
+						this.$nextTick(() => {
+							this.registerFormModel.truckWidth = e.replace(inputType, '');
+						})
+						break;
+					case 3:
+						this.$nextTick(() => {
+							this.registerFormModel.truckHeight = e.replace(inputType, '');
+						})
+						break;
+					case 4:
+						this.$nextTick(() => {
+							this.registerFormModel.maximumPayload = e.replace(inputType, '');
+						})
+						break;
+					case 5:
+						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 => {
-              console.log(this.registerFormModel);
-              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) {
@@ -546,6 +760,7 @@
                   .catch(err => {
                     console.log('閿欒', err);
                   });
+			  }
             })
             .catch(err => {
               console.log('err', err);
@@ -560,7 +775,12 @@
 					this.registerFormModel.idCard == '' &&
 					this.registerFormModel.phone == '' &&
 					this.registerFormModel.carNo == '' &&
-					this.registerFormModel.password == ''
+					this.registerFormModel.password == '' &&
+					this.registerFormModel.truckLength == '' &&
+					this.registerFormModel.truckWidth == '' &&
+					this.registerFormModel.truckHeight == '' &&
+					this.registerFormModel.maximumPayload == '' &&
+					this.registerFormModel.totalLoad == ''
 				) {
 					this.$refs.regesterFormRef.clearValidate();
 					this.beforeChangeValue = e;

--
Gitblit v1.9.1