<style> .aviation .addCompany {width: 440px;} </style> <template> <div class="flexOne aviation"> <div class="query-box"> <ul> <li> <span> <em>{{$t('system.query_templateName')}}</em> <el-input placeholder="" v-model="msg.TempName" maxlength="20" @keyup.native.enter="initTableInfo"></el-input> </span> </li> <li> <span> <em>{{$t('system.query_airCompanyName')}}</em> <el-select filterable clearable v-model='msg.AirLineId' :placeholder="$t('pub.unlimitedSel')"> <el-option :label="$t('pub.unlimitedSel')" value='0'></el-option> <el-option v-for='item in airlineList' :label='item.AlName' :value='item.AirLineId' :key='item.AirLineId'> </el-option> </el-select> </span> </li> <li> <button class="hollowFixedBtn" @click="resetPageIndex(),initTableInfo()">{{$t('pub.searchBtn')}}</button> <button class="normalBtn" @click="outerVisible=true,dialogTitle='添加航空模板信息'">{{$t('pub.addBtn')}}</button> </li> </ul> </div> <table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading"> <tr> <th>{{$t('system.query_airCompanyName')}}</th> <th width="300">{{$t('system.query_templateName')}}</th> <th>{{$t('system.table_uniqueMark')}}</th> <th>{{$t('system.table_operation')}}</th> </tr> <tr v-for="item in tableInfo" :key="item.subCode"> <td>{{item.AirLineName}}</td> <td>{{item.TempName}}</td> <td>{{item.TempCode}}</td> <td> <el-tooltip class="item" effect="dark" content="修改" placement="top-start"> <el-button type="primary" @click="updateInfo(item.Id),outerVisible=true,dialogTitle='修改航空模板信息'" icon="el-icon-edit" circle></el-button> </el-tooltip> <el-tooltip class="item" effect="dark" content="删除" placement="top-start"> <el-button type="danger" icon="el-icon-delete" @click="isdelete(item.Id)" circle></el-button> </el-tooltip> </td> </tr> </table> <el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total> </el-pagination> <el-dialog custom-class='addCompany' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie"> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px" > <el-form-item :label="$t('system.query_airCompanyName')" prop="AirLineId"> <el-select v-model="addMsg.AirLineId" filterable :placeholder="$t('pub.pleaseSel')" class="w210"> <el-option v-for='item in airlineList' :label='item.AlName' :value='item.AirLineId' :key='item.AirLineId'> </el-option> </el-select> </el-form-item> <el-form-item :label="$t('system.query_templateName')" prop="TempName"> <el-input type="text" v-model="addMsg.TempName" class="w210" maxlength="20"></el-input> </el-form-item> <el-form-item :label="$t('system.table_uniqueMark')" prop="TempCode"> <el-input type="text" v-model="addMsg.TempCode" maxlength="10" class="w210"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> <button class="hollowFixedBtn" @click="resetForm('addMsg'),outerVisible = false">{{$t('pub.cancelBtn')}}</button> </div> </el-dialog> </div> </template> <script> export default { data() { return { msg:{ pageIndex:1, pageSize:10, TempName:'', AirLineId:'', }, addMsg:{ Id:'0', TempName:'', AirLineId:'', TempCode:'' }, total:0, currentPage: 1, loading:true, airlineList:'', tableInfo:'', outerVisible: false, isDeleteNote:true, dialogTitle: '', deleteID:'', rules: {//表单必填验证 AirLineId: [ { required: true, message: '请选择航空公司', trigger: 'change' } //{ min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' } ], TempName: [ { required: true, message: '请填写模板名称', trigger: 'blur' } ], TempCode:[ { required: true, message: '请填写唯一标识', trigger: 'blur' } ] } } }, methods: { initAirlines(){ //初始化航空公司下拉 let msg= {} this.apipost('airline_post_GetList', msg, res => { if(res.data.resultCode == 1) { this.airlineList = res.data.data } else { alert(res.data.message) } }, err => {}) }, initTableInfo(){ if(this.msg.AirLineId==""){ this.msg.AirLineId='0'; } this.loading = true; this.apipost('airlinetemplate_get_GetPageList', this.msg, res => { this.loading = false; if(res.data.resultCode == 1) { this.tableInfo = res.data.data.pageData; this.total = res.data.data.count; } else { this.innerVisible = true; this.isDeleteNote = true; this.insideDialogTxt = res.data.message; } }, err => {}) }, handleCurrentChange(val) { this.msg.pageIndex = val; this.initTableInfo(); }, resetPageIndex(){ this.msg.pageIndex=1; this.currentPage = 1 }, addFlightmodule(){ //添加模板信息 this.apipost('airlinetemplate_post_Set', this.addMsg, res => { if(res.data.resultCode == 1) { this.Success('保存成功'); this.outerVisible = false; this.initAddMsg(); this.initTableInfo(); } else { this.Error(res.data.message); } }, err => {}) }, updateInfo(ID){ //修改模板信息 let msg = { ID:ID } this.apipost('airlinetemplate_get_Get', msg, res => { if(res.data.resultCode == 1) { this.addMsg = res.data.data; } }, err => {}) }, isdelete(ID){ this.deleteID = ID; this.$confirm('是否删除?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { this.$message({ type: 'success', message: '删除成功!' }); this.delInfo(); }).catch(() => { this.$message({ type: 'info', message: '已取消删除' }); }); }, delInfo(){ let msg = { ID:this.deleteID } this.apipost('airlinetemplate_post_Remove', msg, res => { if(res.data.resultCode == 1) { this.Success('删除成功'); this.initTableInfo(); } else { this.Error(res.data.message); } }, err => {}) }, submitForm(addMsg) {//提交创建、修改表单 let that = this; that.$refs[addMsg].validate((valid) => { if (valid) { that.addFlightmodule() } else { return false; } }); }, closeChangeMachie(done){//弹出框关闭初始化弹框内表单 done(); this.resetForm('addMsg'); }, resetForm(formName) {//弹出框取消 初始化谈框内表单 this.$refs[formName].resetFields(); this.initAddMsg(); }, initAddMsg(){ this.addMsg = { Id:'0', TempName:'', AirLineId:'', TempCode:'' } }, }, mounted(){ this.initAirlines(); //初始化航空公司下拉 this.initTableInfo(); //初始化表格 } } </script>