heyujie
2022-06-16 81ba0bc869ed0fd9974d5e47e194d5a3fc5d8224
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 = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领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 = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领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 = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领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 = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领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"]