审查视图

src/views/airtransport/departure.vue 8.6 KB
小范 authored
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
<template>
    <el-container>
        <el-main>
            <el-row class="row-bg">
                <el-col :span="24">
                    <div class="grid-content content">出港预报申报</div>
                </el-col>
            </el-row>
            <el-row>
                <el-form :model="departure" :rules="rules" ref="departure" label-width="100%" class="demo-ruleForm">
                    <el-col :span="8">
                        <el-form-item label="航空器注册编码" prop="aircraftNo" label-width="120px">
                            <el-input v-model="departure.aircraftNo"></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="航班号" prop="flightNo" label-width="120px">
                            <el-input v-model="departure.flightNo"></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="航班日期" prop="flightDate" label-width="120px">
                            <el-date-picker
                                    v-model="departure.flightDate"
                                    type="date"
小范 authored
26 27
                                    value-format="yyyyMMdd"
                                    format="yyyyMMdd"
小范 authored
28 29 30 31 32 33 34
                                    style="width:275px"
                                    placeholder="选择日期">
                            </el-date-picker>
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="出发港" prop="departurePort" label-width="120px">
小范 authored
35 36
                            <el-input v-model="departure.departurePort" @input="e => departure.departurePort=inputMe(e)"
                                      maxLength='3'></el-input>
小范 authored
37 38 39 40
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="目的港" prop="arrivalPort" label-width="120px">
小范 authored
41 42
                            <el-input v-model="departure.arrivalPort" @input="e => departure.arrivalPort=inputMe(e)"
                                      maxLength='3'></el-input>
小范 authored
43 44 45 46
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="关区代码" prop="customDistrictNo" label-width="120px">
小范 authored
47 48
                            <el-input v-model="departure.customDistrictNo" oninput="value=value.replace(/[^\d]/g,'')"
                                      maxLength='4'></el-input>
小范 authored
49 50 51 52
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="预计离港时间" prop="departuredatetime" label-width="120px">
小范 authored
53 54 55 56 57 58
                            <el-input v-model="departure.departuredatetime"
                                      type="date"
                                      format="yyyyMMdd"
                                      value-format="yyyyMMdd"
                                      style="width:100%"
                                      placeholder="任意时间点">></el-input>
小范 authored
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
                        </el-form-item>
                    </el-col>
                    <el-col :span="8">
                        <el-form-item label="停靠机坪" prop="stayid" label-width="120px">
                            <el-input v-model="departure.stayid"></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="备注" prop="meno" label-width="120px">
                            <el-input v-model="departure.meno"></el-input>
                        </el-form-item>
                    </el-col>
                </el-form>
            </el-row>
            <el-row style="margin-left: 120px">
                <el-col :span="24">   <el-button type="primary" @click="submitForm('departure')">保 存</el-button>
                    <el-button type="success">保存并发送</el-button></el-col>
            </el-row>
小范 authored
77 78 79 80 81 82 83 84 85 86 87 88 89 90
            <!--对话提示框-->
            <el-row>
                <el-dialog
                        title="系统提示"
                        :visible.sync="centerDialogVisible"
                        width="30%"
                        center>
                    <span>{{msg}}</span>
                    <span slot="footer" class="dialog-footer">
                          <el-button @click="centerDialogVisible = false">取 消</el-button>
                        <el-button type="primary" @click="centerDialogVisible = false">确 定</el-button>
                      </span>
                </el-dialog>
            </el-row>
小范 authored
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
        </el-main>
    </el-container>
</template>
<style scoped>
    .grid-content {
        height: 36px;
        line-height: 36px;
    }
    .el-dialog__body{text-align: center}
    .content {
        border-left: 4px #409EFF solid;
        padding-left: 10px;
        background-color: #f9fafc;
        margin-bottom: 2px
    }

    .row-bg{
        background-color: white;
    }
    .el-col{margin-right: 0px;}
</style>
<script>
小范 authored
113 114
    import {addPrediction} from "../../api/transport";
小范 authored
115 116 117 118 119 120 121 122 123 124 125 126 127
    export default {
        data(){
            return{
                departure:{
                    aircraftNo:undefined,
                    flightNo:undefined,
                    flightDate:undefined,
                    departurePort:undefined,
                    arrivalPort:undefined,
                    customDistrictNo:undefined,
                    stayid:undefined,
                    departuredatetime:undefined,
                    meno:undefined,
小范 authored
128
                    accessFlag:'1'
小范 authored
129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
                },
                rules: {
                    aircraftNo: [
                        {required: true, message: '请输入', trigger: 'blur'}
                    ],
                    flightNo: [
                        {required: true, message: '请输入', trigger: 'blur'}
                    ],
                    flightDate: [
                        {type: 'date',required: true, message: '请选择', trigger: 'change'}
                    ],
                    departurePort: [
                        {required: true, message: '请输入(三字码)', trigger: 'blur'},
                        {min: 3, max: 3, message: '长度在 3 个字符', trigger: 'blur'}
                    ],
                    arrivalPort: [
                        {required: true, message: '请输入(三字码)', trigger: 'blur'},
                        {min: 3, max: 3, message: '长度在 3 个字符', trigger: 'blur'}
                    ],
                    customDistrictNo: [
                        {required: true, message: '请选择', trigger: 'blur'}
                    ],
                    departuredatetime: [
                        {required: true, message: '请选择', trigger: 'blur'}
                    ],
                    stayid: [
                        {required: true, message: '请输入', trigger: 'blur'}
                    ],
                },
小范 authored
158 159 160
                tableData:[],
                centerDialogVisible:false,
                msg:undefined,
小范 authored
161 162 163
            }
        },
        methods:{
小范 authored
164
            //新增出港预报申报(保存按钮)
小范 authored
165 166 167
            submitForm(formName) {
                this.$refs[formName].validate((valid) => {
                    if (valid) {
小范 authored
168 169 170 171 172 173 174 175 176 177
                        addPrediction(this.departure).then(res=>{
                            let response=res.data;
                            if(response.code=='200'){
                                this.centerDialogVisible=true;
                                this.msg=response.msg;
                                this.$router.push({path:'/queryDeparture',query:{flightNo:this.departure.flightNo,flightDate:this.departure.flightDate}});
                            }else{
                                this.msg=response.msg;
                            }
                        });
小范 authored
178 179 180 181 182 183
                    } else {
                        console.log('error submit!!');
                        return false;
                    }
                });
            },
小范 authored
184 185 186
            //加载默认值
            defaultData(){
                if(this.$route.query!=null){
小范 authored
187
                    Object.assign(this.departure, this.$route.query);
小范 authored
188
                }
小范 authored
189
            },
小范 authored
190 191 192 193 194 195 196
            // 过滤中英文
            inputMe(e){
                return e.replace(/[^a-zA-Z]/g,'').toUpperCase();
            }
        },
        mounted(){
            this.defaultData();
小范 authored
197 198 199
        }
    }
</script>