<template>
|
<el-dialog
|
:visible.sync="driverFormVisible"
|
append-to-body
|
:title="title"
|
:close-on-click-modal="false"
|
width="600px"
|
>
|
<el-form ref="dataForm" :rules="dataFormRules" :model="dataForm" label-position="right" label-width="140px" width="600px">
|
<el-form-item label="隶属承运人:" prop="belongname" >
|
<el-row>
|
<el-col :span="18">
|
<el-input style="display:inline-block;text-align: left" class="driver_input" v-model="dataForm.belongname" readonly/>
|
</el-col>
|
<el-col :span="4">
|
<a @click="selectCarrier" style="color:blue" >选择</a>
|
</el-col>
|
</el-row>
|
</el-form-item>
|
<el-form-item label="类别:" prop="type" >
|
<el-select v-model="dataForm.type">
|
<el-option
|
v-for="item in typeList"
|
:key="item.id"
|
:value="item.name"
|
:label="item.name"
|
>
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="姓名:" prop="name">
|
<el-input v-model="dataForm.name" class="driver_input"/>
|
</el-form-item>
|
<el-form-item label="身份证号:" prop="identify">
|
<el-input v-model="dataForm.identify" class="driver_input"/>
|
</el-form-item>
|
<el-form-item label="联系电话:" prop="phone">
|
<el-input v-model="dataForm.phone" class="driver_input"/>
|
</el-form-item>
|
<el-form-item label="资格证号:" prop="certificate">
|
<el-input v-model="dataForm.certificate" class="driver_input"/>
|
</el-form-item>
|
<el-form-item label="资格证有效期:" prop="validtime">
|
<el-date-picker
|
value-format="yyyy-MM-dd HH:mm:ss"
|
v-model="dataForm.validtime"
|
type="date"
|
placeholder="选择日期时间">
|
</el-date-picker>
|
</el-form-item>
|
</el-form>
|
<div align="right">
|
<el-button @click="carrierFormVisible = false">取消</el-button>
|
<el-button type="primary" @click="submitCarrier()">确认</el-button>
|
</div>
|
<carrier-select-form ref="carrierSelectForm" @giveCarrier="changeCarrier"></carrier-select-form>
|
</el-dialog>
|
|
</template>
|
|
<script>
|
import carrierSelectForm from "./components/carrierSelectForm";
|
import { addDriver , updateDriver} from "../../../api/driver";
|
import { parseError } from '@/utils/messageDialog'
|
|
export default {
|
name: "carrierForm",
|
data(){
|
return{
|
title:'',
|
carrierVisible:false,
|
driverFormVisible:false,
|
dataForm:{
|
id:0,
|
belongname:'',
|
name:'',
|
type:'驾驶员',
|
phone:'',
|
validtime:'',
|
identify:'',
|
certificate:''
|
},
|
typeList:[
|
{id:1,name:'驾驶员'}
|
],
|
dataFormRules:{},
|
}
|
},
|
components:{
|
carrierSelectForm
|
},
|
methods:{
|
showDriverForm(title,value){
|
this.title = title
|
this.driverFormVisible = true
|
if(this.title == '新增'){
|
this.dataForm = {
|
id:0,
|
belongname:'',
|
name:'',
|
phone:'',
|
type:'驾驶员',
|
validtime:'',
|
identify:'',
|
certificate:''
|
}
|
}else{
|
this.dataForm = value
|
}
|
},
|
async submitCarrier(){
|
if(this.title === '新增'){
|
let res = await addDriver(this.dataForm)
|
if(res.data.code === "200"){
|
this.$emit('getinfo')
|
this.driverFormVisible = false
|
this.$notify({
|
type:'success',
|
duration:2000,
|
message:'成功',
|
title:'成功',
|
})
|
}else {
|
parseError({ error: res.data.message, vm: this })
|
}
|
}else{
|
let res = await updateDriver(this.dataForm)
|
if(res.data.code === "200") {
|
this.$emit('getinfo')
|
this.driverFormVisible = false
|
this.$notify({
|
type: 'success',
|
duration: 2000,
|
message: '成功',
|
title: '成功',
|
})
|
}
|
}
|
},
|
selectCarrier(){
|
this.$refs.carrierSelectForm.showCarrierSelectForm()
|
},
|
changeCarrier(value){
|
this.dataForm.belongname = value.companyname
|
this.dataForm.belongid = value.id
|
}
|
}
|
}
|
</script>
|
|
<style scoped>
|
/deep/ .driver_input{
|
width:300px;
|
}
|
</style>
|