郑永安
2023-06-19 2befd4a5d3733520b69ed97da88e675b6b086a3c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<template>
    <el-dialog
        :visible.sync="carrierFormVisible"
        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="companyname" >
                <el-input v-model="dataForm.companyname"/>
            </el-form-item>
            <el-form-item label="危险货物道路运输资质证号:" prop="number">
                <el-input v-model="dataForm.number"/>
            </el-form-item>
            <el-form-item label="地址:" prop="address">
                <el-input v-model="dataForm.address"/>
            </el-form-item>
            <el-form-item label="负责人姓名:" prop="name">
                <el-input v-model="dataForm.name"/>
            </el-form-item>
            <el-form-item label="负责人联系电话:" prop="phone">
                <el-input v-model="dataForm.phone"/>
            </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>
    </el-dialog>
 
</template>
 
<script>
import {addCarrier , updateCarrier} from "../../../api/carrier";
import { parseError } from '@/utils/messageDialog'
 
export default {
    name: "carrierForm",
    data(){
        return{
            title:'',
            carrierFormVisible:false,
            dataForm:{
                id:0,
                companyname:'',
                name:'',
                address:'',
                number:'',
                phone:'',
                validtime:'',
            },
            dataFormRules:{},
        }
    },
    methods:{
        showCarrierForm(title,value){
            this.title = title
            this.carrierFormVisible = true
            if(this.title == '新增'){
                this.dataForm = {
                    id:0,
                    companyname:'',
                    name:'',
                    address:'',
                    number:'',
                    phone:'',
                    validtime:'',
                }
            }else{
                this.dataForm = value
            }
        },
        async submitCarrier(){
            if(this.title === '新增'){
                let res = await addCarrier(this.dataForm)
                if(res.data.code === "200"){
                    this.$emit('getinfo')
                    this.carrierFormVisible = false
                    this.$notify({
                        type:'success',
                        duration:2000,
                        message:'成功',
                        title:'成功',
                    })
                }else {
                    parseError({ error: res.data.message, vm: this })
                }
            }else{
                let res = await updateCarrier(this.dataForm)
                if(res.data.code === "200") {
                    this.$emit('getinfo')
                    this.carrierFormVisible = false
                    this.$notify({
                        type: 'success',
                        duration: 2000,
                        message: '成功',
                        title: '成功',
                    })
                }
            }
        }
    }
}
</script>
 
<style scoped>
/deep/ .el-input__inner {
    width:300px;
}
/deep/ .el-form-item__label{
    width:200px;
}
</style>