From 81ba0bc869ed0fd9974d5e47e194d5a3fc5d8224 Mon Sep 17 00:00:00 2001 From: heyujie <516346543@qq.com> Date: 星期四, 16 六月 2022 16:57:42 +0800 Subject: [PATCH] check car no --- src/pages/library/components/carList.vue | 78 ++++++++++++++++++++++++++++----------- 1 files changed, 56 insertions(+), 22 deletions(-) diff --git a/src/pages/library/components/carList.vue b/src/pages/library/components/carList.vue index 41208c7..ac5ed39 100644 --- a/src/pages/library/components/carList.vue +++ b/src/pages/library/components/carList.vue @@ -394,12 +394,12 @@ :model="form" label-width="80px" style="margin-top: 20px; margin-bottom: 30px" - :rule="rules" + :rule="carRules" > <el-form-item label="杞︾墝鍙�" prop="carNo"> <el-input placeholder="璇疯緭鍏ヨ溅鐗屽彿" v-model="form.carNo" class="inputWidth"></el-input> </el-form-item> - <el-form-item label="杞﹁締绫诲瀷"> + <el-form-item label="杞﹁締绫诲瀷" prop="carType"> <el-select v-model="form.carType" placeholder="璇烽�夋嫨杞﹁締绫诲瀷" class="inputWidth"> <el-option v-for="item in VideoPhotoData.dictionary.CARTYPE" @@ -409,7 +409,7 @@ ></el-option> </el-select> </el-form-item> - <el-form-item label="杞﹁締鍝佺墝"> + <el-form-item label="杞﹁締鍝佺墝" prop="carBrand"> <el-select v-model="form.carBrand" placeholder="璇烽�夋嫨杞﹁締鍝佺墝" class="inputWidth"> <el-option v-for="item in VideoPhotoData.dictionary.BRAND" @@ -419,7 +419,7 @@ ></el-option> </el-select> </el-form-item> - <el-form-item label="杞﹁韩棰滆壊"> + <el-form-item label="杞﹁韩棰滆壊" prop="carColor"> <el-select v-model="form.carColor" placeholder="璇烽�夋嫨杞﹁韩棰滆壊" class="inputWidth"> <el-option v-for="item in VideoPhotoData.dictionary.nColor" @@ -429,33 +429,24 @@ ></el-option> </el-select> </el-form-item> - <el-form-item label="杞︿富濮撳悕"> + <el-form-item label="杞︿富濮撳悕" prop="personName"> <el-input v-model="form.personName" class="inputWidth"></el-input> </el-form-item> - <el-form-item label="杞︿富鎬у埆"> + <el-form-item label="杞︿富鎬у埆" prop="sex"> <el-radio-group v-model="form.sex"> <el-radio label="鐢�"></el-radio> <el-radio label="濂�"></el-radio> </el-radio-group> </el-form-item> - <el-form-item label="韬唤璇佸彿"> + <el-form-item label="韬唤璇佸彿" prop="idCard"> <el-input v-model="form.idCard" class="inputWidth"></el-input> </el-form-item> - <el-form-item label="鎵嬫満鍙�"> + <el-form-item label="鎵嬫満鍙�" prop="phoneNum"> <el-input v-model="form.phoneNum" class="inputWidth"></el-input> </el-form-item> - <el-form-item label="鍏朵粬"> + <el-form-item label="鍏朵粬" prop="reserved"> <el-input v-model="form.reserved" class="inputWidth"></el-input> </el-form-item> - <!-- <el-form-item style="text-align: tight"> - <el-button - type="primary" - @click="submitCar" - style="margin-left: 120px" - >淇濆瓨</el-button - > - <el-button @click="resetForm">鍙栨秷</el-button> - </el-form-item> --> </el-form> <div class="dialog-footer"> <el-button size="small" class="sure-btn" type="primary" @click="submitCar">纭� 瀹�</el-button> @@ -548,6 +539,27 @@ } }, data() { + var checkCar = (rule, value, callback) => { + debugger + if (!value) { + return callback() + } else { + var result = false + if (value.length === 7) { + var express = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9鎸傚璀︽腐婢砞{1}$/ + result = express.test(value) + } else if (value.length === 8) { + var express2 = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{5}[A-Z0-9鎸傚璀︽腐婢砞{1}$/ + result = express2.test(value) + } + if (result) { + callback() + } else { + callback(new Error('璇疯緭鍏ユ纭溅鐗屽彿鐮�')) + } + return result + } + } return { dialogFormVisible: false, addDrawer: false, @@ -598,8 +610,11 @@ enable: 0, reserved: "" }, - rules: { - carNo: [{ required: true, message: "璇疯緭鍏ヨ溅鐗屽彿", trigger: "change" }] + carRules: { + carNo: [ + { required: true, message: '璇疯緭鍏ユ椿鍔ㄥ悕绉�', trigger: 'blur' }, + // { validator: checkCar, trigger: 'blur' } + ] }, tableData: [], oldWidth: "", @@ -649,6 +664,17 @@ window.onresize = null }, methods: { + checkCarNo(value){ + var result = false + if (value.length === 7) { + var express = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9鎸傚璀︽腐婢砞{1}$/ + result = express.test(value) + } else if (value.length === 8) { + var express2 = /^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{5}[A-Z0-9鎸傚璀︽腐婢砞{1}$/ + result = express2.test(value) + } + return result + }, async handleDel() { this.delBtnLoading = true if (this.delType == "single") { @@ -1078,7 +1104,8 @@ }) } }, - async submitCar() { + submitCar() { + debugger this.$refs["formForCar"].validate(async (valid) => { if (valid) { let { ...json } = this.form @@ -1089,10 +1116,17 @@ json.carPicUrls += ";" + json.carUrls[index].url.substring(11) } } + if (!this.checkCarNo(json.carNo)) { + this.$notify({ + type: "warning", + message: "璇疯緭鍏ユ纭殑杞︾墝鍙�" + + }) + return + } json.carColor = parseInt(json.carColor) json.carType = parseInt(json.carType) json.carBrand = parseInt(json.carBrand) - debugger json.personPicUrl = json.faceUrl[0].url.substring(11) json.tableId = this.baseObject.id delete json["compareScore"] -- Gitblit v1.8.0