✨ 新增/编辑车辆表单补「所有人」与「车辆识别代号」

车辆表新增这两列(所有人:行驶证登记的单位名称,与「所属组织」是两个字段;
车辆识别代号:司机端车辆认证一直在收这个值,此前车辆档案里没有对应列,
只存在于认证快照中)。管理端表单同步补上,否则两个入口建出来的车字段不一致。

所有人为必填(行驶证上的登记主体),车辆识别代号选填、填了校验 17 位。
This commit is contained in:
2026-10-03 16:34:59 +08:00
parent 715c0dc00c
commit ce54d21344
+40
View File
@@ -168,6 +168,24 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="所有人" prop="ownerName">
<el-input
v-model="vehicleForm.ownerName"
maxlength="100"
placeholder="行驶证登记的单位名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="车辆识别代号" prop="vin">
<el-input
v-model="vehicleForm.vin"
maxlength="17"
placeholder="选填,17位车架号"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="外廓尺寸">
<div class="dimension-group">
@@ -560,8 +578,10 @@ const emptyForm = () => ({
organizationName: '',
useDepartment: '',
plateNo: '',
ownerName: '',
plateColor: '',
vehicleType: '',
vin: '',
outerLength: undefined,
outerWidth: undefined,
outerHeight: undefined,
@@ -650,6 +670,8 @@ export default {
{ validator: this.validatePlateNo, trigger: 'change' },
],
vehicleType: [{ required: true, message: '请选择车辆类型', trigger: 'change' }],
ownerName: [{ required: true, message: '请输入所有人', trigger: 'blur' }],
vin: [{ validator: this.validateVin, trigger: 'blur' }],
approvedLoadKg: [{ required: true, message: '请输入核定载质量', trigger: 'blur' }],
businessRelation: [{ required: true, message: '请选择业务关系', trigger: 'change' }],
energyType: [{ required: true, message: '请选择能源类型', trigger: 'change' }],
@@ -783,6 +805,24 @@ export default {
}
callback();
},
// 车辆识别代号(车架号)为选填:留空放行,填了就必须是 17 位
validateVin(rule, value, callback) {
const vin = String(value || '')
.trim()
.toUpperCase();
if (!vin) {
callback();
return;
}
if (!/^[A-HJ-NPR-Z0-9]{17}$/.test(vin)) {
callback(new Error('车架号必须是17位字母数字(不含 I、O、Q)'));
return;
}
if (this.vehicleForm.vin !== vin) {
this.vehicleForm.vin = vin;
}
callback();
},
validateAnnualReviewEndDate(rule, value, callback) {
if (this.vehicleForm.annualReviewLongTerm !== 1 && !value) {
callback(new Error('请选择道路运输年审有效期'));