<template>
|
<div class="createUser">
|
<main>
|
<div class="mainContent">
|
<el-form ref="user" label-width="140px" :rules="createCarRules" autoComplete="on" :model="car"
|
label-position="right">
|
<!-- 车牌号 -->
|
<el-form-item class="optionItem" label="车牌号:" prop="carNumber">
|
<el-input v-model="car.carNumber" placeholder="请填写车牌号"></el-input>
|
</el-form-item>
|
<!-- 车型 -->
|
<el-form-item class="optionItems" label="车型:" prop="carModel">
|
<el-select v-model="car.carModel" placeholder="请选择车型">
|
<el-option v-for="item in carTypeList" :key="item.value" :label="item.label"
|
:value="item.label">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
<!-- 车主姓名 -->
|
<el-form-item class="optionItem" label="车主姓名:" prop="carUser">
|
<el-input v-model="car.ownerName" placeholder="请输入车主姓名"></el-input>
|
</el-form-item>
|
<!-- 车辆使用人员 -->
|
<el-form-item class="optionItem" label="车辆使用人员:" prop="vehicleUser">
|
<el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员"></el-input>
|
</el-form-item>
|
<!-- 联系方式 -->
|
<el-form-item class="optionItem" label="联系方式:" prop="contact">
|
<el-input v-model="car.contact" placeholder="请输入车主手机号码"></el-input>
|
</el-form-item>
|
<!-- 施工单位 -->
|
<el-form-item class="optionItems" label="施工单位:" prop="constructionOrg">
|
<el-input v-model="car.constructionOrg" placeholder="请填写施工单位"></el-input>
|
</el-form-item>
|
<!-- 施工地址 -->
|
<el-form-item class="optionItems" label="施工地址:" prop="geographicPosition">
|
<el-input v-model="car.geographicPosition" placeholder="请填写施工地址"></el-input>
|
</el-form-item>
|
<el-form-item>
|
<div class="optionBtn">
|
<el-button type="primary" class="btn submit" @click.native.prevent="handleCar">确认
|
</el-button>
|
<el-button class="btn cancel" @click.native.prevent="handleStop">
|
取消
|
</el-button>
|
</div>
|
</el-form-item>
|
</el-form>
|
|
</div>
|
</main>
|
</div>
|
</template>
|
<script>
|
import {validateName,validatePhone,validateCarNum} from '@/utils/validate'
|
export default {
|
data() {
|
const checkCarNum = (rule, value, callback) => {
|
if (value) {
|
if(validateCarNum(value)){
|
callback();
|
}else{
|
callback(new Error('请输入正确的车牌号'));
|
}
|
} else {
|
callback(new Error('车牌号不能为空'));
|
}
|
}
|
const checkName = (rule, value, callback) => {
|
if (value) {
|
if(validateName(value)){
|
callback();
|
}else{
|
callback(new Error('请输入正确的车主姓名'))
|
}
|
} else {
|
callback(new Error('车主姓名不能为空'));
|
}
|
}
|
const checkUser = (rule, value, callback) => {
|
if (value) {
|
if(validateName(value)){
|
callback();
|
}else{
|
callback(new Error('请正确输入车辆使用人员'))
|
}
|
} else {
|
callback(new Error('车辆使用人员不能为空'));
|
}
|
}
|
const checkPhone = (rule, value, callback) => {
|
if (value) {
|
if(validatePhone(value)){
|
callback();
|
}else{
|
callback(new Error('请输入正确的手机号'))
|
}
|
} else {
|
callback(new Error('手机号码不能为空'));
|
}
|
}
|
const checkCarModel = (rule, value, callback) => {
|
if (value) {
|
callback();
|
} else {
|
callback(new Error('车辆型号不能为空'));
|
}
|
}
|
const checkOrg = (rule, value, callback) => {
|
if (value) {
|
callback();
|
} else {
|
callback(new Error('施工单位不能为空'));
|
}
|
}
|
const checkPosition = (rule, value, callback) => {
|
if (value) {
|
callback();
|
} else {
|
callback(new Error('施工地址不能为空'));
|
}
|
}
|
return {
|
car: {
|
carNumber: "",
|
contact: "",
|
belong: "",
|
// id: 0,
|
ownerName: "",
|
trajectory: "",
|
vehicleUser: "",
|
constructionOrg: '',
|
},
|
createCarRules: {
|
carNumber: [
|
{
|
required: true, trigger:'blur', validator: checkCarNum
|
}
|
],
|
carModel: [
|
{
|
required: true, trigger:'change',validator: checkCarModel
|
}
|
],
|
contact: [
|
{
|
required: true,trigger:'blur', validator: checkPhone
|
}
|
],
|
// id: 0,
|
ownerName: [
|
{
|
required: true,trigger:'blur', validator: checkName
|
}
|
],
|
vehicleUser: [
|
{
|
required: true, trigger:'blur',validator: checkUser
|
}
|
],
|
constructionOrg: [
|
{
|
required: true,trigger:'blur', validator: checkOrg
|
}
|
],
|
geographicPosition: [
|
{
|
required: true, trigger:'blur',validator: checkPosition
|
}
|
]
|
},
|
carTypeList: [
|
{
|
label: '大型',
|
value: 1,
|
},
|
{
|
label: '中型',
|
value: 2,
|
},
|
{
|
label: '小型',
|
value: 3,
|
},
|
]
|
}
|
},
|
created() {
|
},
|
methods: {
|
// 添加车辆
|
handleCar() {
|
console.log(this.car);
|
this.$refs.user.validate((valid) => {
|
if (valid) {
|
const { car } = this;
|
this.$axios({
|
method: 'post',
|
url: 'sccg/car_Manage/addition_slag',
|
data: {
|
carNumber: car.carNumber,
|
carModel:car.carModel,
|
carPhoto:'',
|
constructionOrg:car.constructionOrg,
|
geographicPosition:car.geographicPosition,
|
// contact: car.contact,
|
// belong: car.belong,
|
// id: 0,
|
// ownerName: car.ownerName,
|
trajectory: car.trajectory,
|
// vehicleUser: car.vehicleUser,
|
}
|
})
|
.then(res => {
|
console.log(res);
|
if (res.code === 200) {
|
this.$message({
|
type: 'success',
|
message: '新增车辆成功',
|
})
|
this.$emit('closeDialog', { flag: false,index:1 });
|
} else {
|
this.$message({
|
type: 'error',
|
message: res.message,
|
})
|
}
|
})
|
} else {
|
return false;
|
}
|
})
|
},
|
handleStop(){
|
this.$emit('closeDialog', { flag: false,index:0 });
|
}
|
|
},
|
props: ['closeDialog']
|
}
|
</script>
|
<style lang="scss" scoped>
|
.createUser {
|
border-radius: 1px;
|
background-color: #09152f;
|
|
main {
|
// border: 1px solid #fff;
|
text-align: left;
|
padding: 0 55px;
|
background-color: #09152f;
|
padding-bottom: 50px;
|
|
.mainContent {
|
display: flex;
|
justify-content: center;
|
padding-top: 50px;
|
|
.el-form-item__content {
|
width: 400px;
|
|
.el-select {
|
width: 100%;
|
}
|
}
|
|
.optionHandleSp {
|
display: flex;
|
|
.areaNumber,
|
.moreNumber {
|
flex: 1;
|
}
|
|
.telNumber {
|
flex: 2;
|
}
|
}
|
|
.optionBtn {
|
display: flex;
|
margin-top: 20px;
|
|
.btn {
|
padding: 12px 50px;
|
}
|
}
|
|
}
|
}
|
|
&::v-deep .el-textarea__inner {
|
background-color: #09152f;
|
border: 1px solid #17324c;
|
}
|
|
::v-deep .el-form-item__label {
|
color: #4b9bb7;
|
}
|
|
::v-deep .el-input__inner {
|
background-color: #09152f;
|
border: 1px solid #17324c;
|
}
|
}
|
</style>
|