|
|
@@ -14,10 +14,37 @@
|
|
|
<script src="../../static/kj/layer/layer.js"></script>
|
|
|
<script src="../../static/sa.js"></script>
|
|
|
<script src="../../static/kj/upload-util.js"></script>
|
|
|
+ <script src="../../static/kj/validator.js"></script>
|
|
|
|
|
|
<style type="text/css">
|
|
|
- .c-panel .el-form .c-label{width: 7em !important;}
|
|
|
+ .c-panel .el-form .c-label{width: 9em !important;}
|
|
|
.c-panel .el-form .el-input, .c-panel .el-form .el-textarea__inner{width: 250px;}
|
|
|
+
|
|
|
+ table {
|
|
|
+ font-family: arial, sans-serif;
|
|
|
+ border-collapse: collapse;
|
|
|
+ width: 100%;
|
|
|
+ margin-top: 22px;
|
|
|
+ margin-bottom: 22px;
|
|
|
+ margin-left: auto;
|
|
|
+ margin-right: auto;
|
|
|
+ }
|
|
|
+
|
|
|
+ th {
|
|
|
+ border: 1px solid darkgray;
|
|
|
+ text-align: left;
|
|
|
+ height: 22px;
|
|
|
+ padding: 8px;
|
|
|
+ background-color: #dddddd;
|
|
|
+ }
|
|
|
+
|
|
|
+ td {
|
|
|
+ border: 1px solid darkgray;
|
|
|
+ text-align: left;
|
|
|
+ padding: 8px;
|
|
|
+ }
|
|
|
+ .image-box{ display: flex;}
|
|
|
+
|
|
|
</style>
|
|
|
</head>
|
|
|
<body>
|
|
|
@@ -28,38 +55,133 @@
|
|
|
<div class="c-title" v-if="id == 0">数据添加</div>
|
|
|
<div class="c-title" v-else>数据修改</div>
|
|
|
<el-form v-if="m">
|
|
|
- <el-row :gutter="50">
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="车牌" v-model="m.vehiclePlate" br></sa-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="所有人" v-model="m.owner" br></sa-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-row :gutter="50">
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="车辆类型" v-model="m.vehicleType" br></sa-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="车辆尺寸" v-model="m.vehicleSize" br></sa-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-row :gutter="50">
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="车辆品牌型号" v-model="m.vehicleModel" br></sa-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="核定载质量" v-model="m.vehicleLoad" br></sa-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-row :gutter="50">
|
|
|
- <el-col :span="12">
|
|
|
- <sa-item type="text" name="车辆自重" v-model="m.vehicleWeight" br></sa-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
+ <h3>车辆基本信息</h3>
|
|
|
+ <table>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>车牌号</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.vehiclePlate"></el-input>
|
|
|
+ </td>
|
|
|
+ <th>颜色</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.color"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>车架号</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.vin"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>发动机号</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.engineNo"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>品牌型号</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.vehicleModel"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>车辆类型</th>
|
|
|
+ <td>
|
|
|
+ <el-select v-model="m.vehicleType" placeholder="请选择" filterable size="mini">
|
|
|
+ <el-option v-for="(item,index) in catList" :key="item.id" :label="item.dictName" :value="item.id"> </el-option>
|
|
|
+ </el-select>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>轴数</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.axle"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>载重(t)</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.vehicleLoad"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>尺寸(m)</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.vehicleSize"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>容积</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.volume"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>年检有效期至</th>
|
|
|
+ <td colspan="3">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="m.validityPeriod"
|
|
|
+ type="date"
|
|
|
+ format="yyyy-MM-dd"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="请选择日期" >
|
|
|
+ </el-date-picker>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>车辆正面照</th>
|
|
|
+ <td>
|
|
|
+ <sa-item type="img-list" v-model="m.carImg"></sa-item>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>行驶证照</th>
|
|
|
+ <td>
|
|
|
+ <sa-item type="img-list" v-model="m.licenseImg"></sa-item>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>年检证照</th>
|
|
|
+ <td colspan="3">
|
|
|
+ <sa-item type="img-list" v-model="m.inspectionImg"></sa-item>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+
|
|
|
+ <h3>车辆所有人信息</h3>
|
|
|
+ <table>
|
|
|
+ <tr>
|
|
|
+ <th><label style="color: red">*</label>所属</th>
|
|
|
+ <td>
|
|
|
+ <sa-item type="enum" v-model="m.ownership" :jv="{'self': '自有', 'affiliated': '挂靠'}" jtype="3"></sa-item>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label><span v-if="m.ownership=='affiliated'">公司名称</span><span v-else>车主姓名</span></th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.owner"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr v-if="m.ownership=='affiliated'">
|
|
|
+ <th><label style="color: red">*</label>公司法人</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.legalPerson"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>联系电话</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.ownerPhone"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr v-if="m.ownership=='affiliated'">
|
|
|
+ <th><label style="color: red">*</label>统一社会征信码</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.ownerCert"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>营业执照</th>
|
|
|
+ <td>
|
|
|
+ <sa-item type="img-list" v-model="m.ownerLicense"></sa-item>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr v-if="m.ownership=='self'">
|
|
|
+ <th><label style="color: red">*</label>联系电话</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.ownerPhone"></el-input>
|
|
|
+ </td>
|
|
|
+ <th><label style="color: red">*</label>身份证号</th>
|
|
|
+ <td>
|
|
|
+ <el-input size="mini" v-model="m.ownerCert"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
|
|
|
<!-- <sa-item type="text" name="类型父id" v-model="m.parentId" br></sa-item> -->
|
|
|
|
|
|
@@ -89,6 +211,7 @@
|
|
|
data: {
|
|
|
id: sa.p('id', 0), // 获取超链接中的id参数(0=添加,非0=修改)
|
|
|
m: null, // 实体对象
|
|
|
+ catList: [], //车型
|
|
|
},
|
|
|
methods: {
|
|
|
// 创建一个 默认Model
|
|
|
@@ -98,45 +221,90 @@
|
|
|
owner: '', // 所有人
|
|
|
vehicleType: '', // 车辆类型
|
|
|
// parentId: '', // 类型父id
|
|
|
+ axle: '', // 轴数
|
|
|
vehicleSize: '', // 车辆尺寸
|
|
|
vehicleModel: '', // 车辆品牌型号
|
|
|
vehicleLoad: '', // 核定载质量
|
|
|
vehicleWeight: '', // 车辆自重
|
|
|
+ volume: '', // 容积
|
|
|
// auditStatus: '', // 审核状态(0=待审核,1=已通过,2=不通过)
|
|
|
// auditBy: '', // 审核人
|
|
|
// nopassReason: '', // 审核不通过原因
|
|
|
// auditTime: '', // 审核时间
|
|
|
}
|
|
|
},
|
|
|
+ // 车型列表
|
|
|
+ getCatList() {
|
|
|
+ sa.ajax('/transport-server/TbDictInfo/getList', {
|
|
|
+ code:'vehicle_type',
|
|
|
+ pageSize: 100,
|
|
|
+ pageNo: 1
|
|
|
+ }, function(resp) {
|
|
|
+ let list=resp.data;
|
|
|
+ this.catList = list;
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
// 提交数据
|
|
|
ok: function(){
|
|
|
// 表单校验
|
|
|
let m = this.m;
|
|
|
- sa.checkNull(m.vehiclePlate, '请输入 [车牌]');
|
|
|
- sa.checkNull(m.owner, '请输入 [所有人]');
|
|
|
- sa.checkNull(m.vehicleType, '请输入 [车辆类型]');
|
|
|
- // sa.checkNull(m.parentId, '请输入 [类型父id]');
|
|
|
- sa.checkNull(m.vehicleSize, '请输入 [车辆尺寸]');
|
|
|
- sa.checkNull(m.vehicleModel, '请输入 [车辆品牌型号]');
|
|
|
- sa.checkNull(m.vehicleLoad, '请输入 [核定载质量]');
|
|
|
- sa.checkNull(m.vehicleWeight, '请输入 [车辆自重]');
|
|
|
- // sa.checkNull(m.deleteStatus, '请输入 [删除状态]');
|
|
|
- // sa.checkNull(m.auditStatus, '请输入 [审核状态]');
|
|
|
- // sa.checkNull(m.auditBy, '请输入 [审核人]');
|
|
|
- // sa.checkNull(m.nopassReason, '请输入 [审核不通过原因]');
|
|
|
- // sa.checkNull(m.auditTime, '请输入 [审核时间]');
|
|
|
-
|
|
|
- // 开始增加或修改
|
|
|
- this.m.createTime = undefined; // 不提交属性:创建时间
|
|
|
- this.m.updateTime = undefined; // 不提交属性:更新时间
|
|
|
+ sa.checkNull(m.vehiclePlate, '请输入 [车牌号]');
|
|
|
+
|
|
|
+ if(!validatePlate(m.vehiclePlate)){
|
|
|
+ sa.errorMsg('请输入正确的车牌号');
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ sa.checkNull(m.vin, '请输入 [车架号]');
|
|
|
+ sa.checkNull(m.engineNo, '请输入 [发动机号]');
|
|
|
+
|
|
|
+ sa.checkNull(m.vehicleModel, '请输入 [品牌型号]');
|
|
|
+ sa.checkNull(m.vehicleType, '请选择 [车辆类型]');
|
|
|
+ sa.checkInt(m.axle, '请输入正确的 [轴数],轴数必须是正整数');
|
|
|
+ sa.checkPositive(m.vehicleLoad, '请输入 [载重],载重必须是正数');
|
|
|
+ sa.checkPositive(m.vehicleSize, '请输入正确的 [尺寸],尺寸必须是正数');
|
|
|
+ sa.checkPositive(m.volume, '请输入正确的 [容积],容积必须是正数');
|
|
|
+
|
|
|
+ sa.checkNull(m.validityPeriod, '请填写 [年检有效期]');
|
|
|
+
|
|
|
+ sa.checkNull(m.carImg, '请上传 [车辆正面照]');
|
|
|
+ sa.checkNull(m.licenseImg, '请上传 [行驶证照]');
|
|
|
+ sa.checkNull(m.inspectionImg, '请上传 [年检证照]');
|
|
|
+
|
|
|
+ sa.checkNull(m.ownership, '请选择车辆所属[自有还是挂靠]');
|
|
|
+
|
|
|
+ sa.checkNull(m.ownerPhone, '请输入 [联系电话]');
|
|
|
+ if(validatePhone(m.ownerPhone)==false){
|
|
|
+ sa.errorMsg('联系电话格式不正确'); return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if(m.ownership=='self'){
|
|
|
+ sa.checkNull(m.owner, '请输入 [车主姓名]');
|
|
|
+ sa.checkNull(m.ownerCert, '请输入 [身份证号]');
|
|
|
+
|
|
|
+ if(validateIDCard(m.ownerCert)==false){
|
|
|
+ sa.errorMsg('身份证号格式不正确'); return;
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ sa.checkNull(m.owner, '请输入 [公司名称]');
|
|
|
+ sa.checkNull(m.legalPerson, '请输入 [公司法人]');
|
|
|
+ sa.checkNull(m.ownerCert, '请输入 [统一社会征信码]');
|
|
|
+ sa.checkNull(m.ownerLicense, '请上传 [营业执照]');
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
if(this.id <= 0) { // 添加
|
|
|
sa.ajax('/transport-server/TbVehicle/add', m, function(res){
|
|
|
sa.alert('增加成功', this.clean);
|
|
|
}.bind(this));
|
|
|
} else { // 修改
|
|
|
- sa.ajax('/transport-server/TbVehicle/update', m, function(res){
|
|
|
- sa.alert('修改成功', this.clean);
|
|
|
+ sa.confirm('信息修改后需要重新审核,您确定要修改吗?', function () {
|
|
|
+ sa.ajax('/transport-server/TbVehicle/update', m, function(res){
|
|
|
+ sa.alert('信息已修改,待审核', this.clean);
|
|
|
+ }.bind(this));
|
|
|
+
|
|
|
}.bind(this));
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
// 添加/修改 完成后的动作
|
|
|
@@ -150,12 +318,14 @@
|
|
|
}
|
|
|
},
|
|
|
mounted: function(){
|
|
|
+ this.getCatList();
|
|
|
// 初始化数据
|
|
|
if(this.id <= 0) {
|
|
|
this.m = this.createModel();
|
|
|
} else {
|
|
|
sa.ajax('/transport-server/TbVehicle/getById?id=' + this.id, function(res) {
|
|
|
this.m = res.data;
|
|
|
+ this.m.vehicleType = res.data.vehicleType+'';
|
|
|
if(res.data == null) {
|
|
|
sa.alert('未能查找到 id=' + this.id + " 详细数据");
|
|
|
}
|