Merge branch 'flightplan2.0'
# Conflicts: # src/routes.js # src/views/nav3/Way.vue
正在显示
26 个修改的文件
包含
2790 行增加
和
242 行删除
@@ -32,6 +32,9 @@ export const addTeleAddr = params => {return axios.post(`${base1}/teleaddr/addTe | @@ -32,6 +32,9 @@ export const addTeleAddr = params => {return axios.post(`${base1}/teleaddr/addTe | ||
32 | export const delTeleAddr = params => {return http.get(`${base1}/teleaddr/delTeleAddr`, params);}; | 32 | export const delTeleAddr = params => {return http.get(`${base1}/teleaddr/delTeleAddr`, params);}; |
33 | export const ediTeleAddr = params => {return axios.post(`${base1}/teleaddr/ediTeleAddr`, params);}; | 33 | export const ediTeleAddr = params => {return axios.post(`${base1}/teleaddr/ediTeleAddr`, params);}; |
34 | export const selectLists = params => {return http.get(`${base1}/teleaddr/selectLists`, params);}; | 34 | export const selectLists = params => {return http.get(`${base1}/teleaddr/selectLists`, params);}; |
35 | +//结算统计 | ||
36 | +export const selectStatistics = params => {return http.get(`${base1}/efre/selectStatistics`, params);}; | ||
37 | + | ||
35 | 38 | ||
36 | 39 | ||
37 | 40 |
src/api/transport/transport2.0.js
0 → 100644
1 | +import http from "../http"; | ||
2 | + | ||
3 | +let baseUrl = 'air-server-transport' | ||
4 | +let baseUrlResultMsg = 'air-server-transport/transport/returnmsg' | ||
5 | +//查询海关代码,机场代码 | ||
6 | +export const selectBycustomcode = params => { return http.get(`${baseUrl}/transport/customcode/selectBycustomcode`, params); }; | ||
7 | +export const selectByairportcode = params => { return http.get(`${baseUrl}/transport/airportcode/selectByairportcode`, params); }; | ||
8 | +//在港动态信息 | ||
9 | +export const insertSelective = params => { return http.post(`${baseUrl}/transport/aircraftStaying/insertSelective`, params); }; | ||
10 | +export const updateByPrimaryKeySelective = params => { return http.post(`${baseUrl}/transport/aircraftStaying/updateByPrimaryKeySelective`, params); }; | ||
11 | +export const selectLists = params => { return http.get(`${baseUrl}/transport/aircraftStaying/selectLists`, params); }; | ||
12 | +export const sendAircraftstaying = params => { return http.post(`${baseUrl}/transport/aircraftStaying/sendAircraftstaying`, params); }; | ||
13 | + | ||
14 | + | ||
15 | +//查询回执列表 | ||
16 | +export const selectReturnMsgList=params=>{return http.get(`${baseUrlResultMsg}/selectReturnMsg`, params);}; | ||
17 | + | ||
18 | +//单证申报 | ||
19 | +export const selectBillLists = params => { return http.get(`${baseUrl}/transport/bill/selectBillLists`, params); }; | ||
20 | +export const insertSelectiveBill = params => { return http.post(`${baseUrl}/transport/bill/insertSelectiveBill`, params); }; | ||
21 | +export const updateByPrimaryKeySelectiveBill = params => { return http.post(`${baseUrl}/transport/bill/updateByPrimaryKeySelectiveBill`, params); }; | ||
22 | +export const sendBillSdeclare = params => { return http.post(`${baseUrl}/transport/bill/sendBillSdeclare`, params); }; | ||
23 | +export const batchJZImport = params => { return http.postExcelData(`${baseUrl}/transport/bill/batchJZImport`, params); }; | ||
24 | + | ||
25 | + | ||
26 | +//预确报申报 | ||
27 | +export const selectPreList = params => { return http.get(`${baseUrl}/transport/prediction/selectList`, params); }; | ||
28 | +export const insertSelectivePre = params => { return http.post(`${baseUrl}/transport/prediction/insertSelective`, params); }; | ||
29 | +export const updateByPrimaryKeySelectivePre = params => { return http.post(`${baseUrl}/transport/prediction/updateByPrimaryKeySelective`, params); }; | ||
30 | +export const sendPrediction = params => { return http.post(`${baseUrl}/transport/prediction/sendPrediction`, params); }; | ||
31 | +export const canclePre = params => { return http.post(`${baseUrl}/transport/prediction/canclePre`, params); }; | ||
32 | + | ||
33 | + | ||
34 | + | ||
35 | + | ||
36 | + | ||
37 | + | ||
38 | + | ||
39 | + | ||
40 | + | ||
41 | + | ||
42 | + | ||
43 | + |
@@ -189,6 +189,7 @@ import TeleAddr from "./views/nav3/TeleAddr.vue"; | @@ -189,6 +189,7 @@ import TeleAddr from "./views/nav3/TeleAddr.vue"; | ||
189 | //朱总让做的网页在线客服 | 189 | //朱总让做的网页在线客服 |
190 | import Webdialog from './views/bus/Webdialog.vue' | 190 | import Webdialog from './views/bus/Webdialog.vue' |
191 | import C6Way from './views/nav3/C6Way.vue' | 191 | import C6Way from './views/nav3/C6Way.vue' |
192 | +import DBstatistics from './views/nav3/statistics.vue' | ||
192 | 193 | ||
193 | //转运申请 | 194 | //转运申请 |
194 | import Transport from './views/nav4/Transport.vue' | 195 | import Transport from './views/nav4/Transport.vue' |
@@ -210,6 +211,12 @@ import ManagerWaybill from "./views/exportorder/ManagerWaybill.vue"; | @@ -210,6 +211,12 @@ import ManagerWaybill from "./views/exportorder/ManagerWaybill.vue"; | ||
210 | import ZhiDan from './views/zhidan/zhidan.vue' | 211 | import ZhiDan from './views/zhidan/zhidan.vue' |
211 | import Rate from './views/zhidan/rate.vue' | 212 | import Rate from './views/zhidan/rate.vue' |
212 | 213 | ||
214 | +//运输工具2.0 | ||
215 | +import zaigang from './views/airtransport/zaigang.vue' | ||
216 | +import gongtui from './views/airtransport/gongtui.vue' | ||
217 | +import danzheng from './views/airtransport/danzheng.vue' | ||
218 | +import yqdeclare from './views/airtransport/yqdeclare.vue' | ||
219 | + | ||
213 | // 邮件风控 | 220 | // 邮件风控 |
214 | import MailRisk from './views/mail_risk/index.vue' | 221 | import MailRisk from './views/mail_risk/index.vue' |
215 | 222 | ||
@@ -279,6 +286,7 @@ let routes = [ | @@ -279,6 +286,7 @@ let routes = [ | ||
279 | {path: '/Webdialog', component: Webdialog, name: '在线客服'}, | 286 | {path: '/Webdialog', component: Webdialog, name: '在线客服'}, |
280 | {path: '/TeleAddr', component: TeleAddr, name: '电报地址'}, | 287 | {path: '/TeleAddr', component: TeleAddr, name: '电报地址'}, |
281 | {path: '/C6Way', component: C6Way, name: 'C6货运单'}, | 288 | {path: '/C6Way', component: C6Way, name: 'C6货运单'}, |
289 | + {path: '/DBstatistics', component: DBstatistics, name: '结算统计'}, | ||
282 | ] | 290 | ] |
283 | }, | 291 | }, |
284 | { | 292 | { |
@@ -675,11 +683,11 @@ let routes = [ | @@ -675,11 +683,11 @@ let routes = [ | ||
675 | { | 683 | { |
676 | path: '/at', | 684 | path: '/at', |
677 | component: HomeNew, | 685 | component: HomeNew, |
678 | - name: '在港动态', | 686 | + name: '在港申报', |
679 | iconCls:'el-icon-goods', | 687 | iconCls:'el-icon-goods', |
680 | children:[ | 688 | children:[ |
681 | - {path:'/dynamics',component:dynamics,name:'在港动态信息'}, | ||
682 | - {path:'/matter',component:matter,name:'物料申报管理'} | 689 | + {path:'/dynamics',component:dynamics,name:'在港动态申报'}, |
690 | + {path:'/matter',component:matter,name:'供退物料申报'} | ||
683 | ] | 691 | ] |
684 | }, | 692 | }, |
685 | { | 693 | { |
@@ -783,6 +791,18 @@ let routes = [ | @@ -783,6 +791,18 @@ let routes = [ | ||
783 | { path: '/page6', component: Page6, name: '综合楼空调站' }, | 791 | { path: '/page6', component: Page6, name: '综合楼空调站' }, |
784 | ] | 792 | ] |
785 | }, | 793 | }, |
794 | + { | ||
795 | + path: '/zg', | ||
796 | + component: HomeNew, | ||
797 | + name: '在港申报2.0', | ||
798 | + iconCls:'el-icon-goods', | ||
799 | + children:[ | ||
800 | + {path:'/gongtui',component:gongtui,name:'供退物料申报'}, | ||
801 | + {path:'/zaigang',component:zaigang,name:'在港动态申报'}, | ||
802 | + {path:'/danzheng',component:danzheng,name:'单证申报'}, | ||
803 | + {path:'/yqdeclare',component:yqdeclare,name:'预确报申报'} | ||
804 | + ] | ||
805 | + }, | ||
786 | 806 | ||
787 | { | 807 | { |
788 | path: '*', | 808 | path: '*', |
@@ -282,7 +282,6 @@ | @@ -282,7 +282,6 @@ | ||
282 | this.loading = true; | 282 | this.loading = true; |
283 | selectCountry(params).then(res =>{ | 283 | selectCountry(params).then(res =>{ |
284 | if (res!=null) { | 284 | if (res!=null) { |
285 | - console.log(res.data.data) | ||
286 | setTimeout(() => { | 285 | setTimeout(() => { |
287 | this.loading = false; | 286 | this.loading = false; |
288 | this.countryOptions=res.data.data; | 287 | this.countryOptions=res.data.data; |
@@ -300,7 +299,6 @@ | @@ -300,7 +299,6 @@ | ||
300 | this.loading = true; | 299 | this.loading = true; |
301 | selectCreden(params).then(res =>{ | 300 | selectCreden(params).then(res =>{ |
302 | if (res!=null) { | 301 | if (res!=null) { |
303 | - console.log(res.data.data) | ||
304 | setTimeout(() => { | 302 | setTimeout(() => { |
305 | this.loading = false; | 303 | this.loading = false; |
306 | this.certOptions=res.data.data; | 304 | this.certOptions=res.data.data; |
@@ -318,8 +316,9 @@ | @@ -318,8 +316,9 @@ | ||
318 | addAircraft(this.aircraft).then(res=>{ | 316 | addAircraft(this.aircraft).then(res=>{ |
319 | let response=res.data; | 317 | let response=res.data; |
320 | if(response.code=='200'){ | 318 | if(response.code=='200'){ |
321 | - this.centerDialogVisible=true; | ||
322 | - this.msg=response.msg; | 319 | + //this.centerDialogVisible=true; |
320 | + //this.msg=response.msg; | ||
321 | + this.$message.success(response.msg) | ||
323 | this.$router.push({path:'/queryAircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo}}); | 322 | this.$router.push({path:'/queryAircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo}}); |
324 | }else{ | 323 | }else{ |
325 | this.msg=response.msg; | 324 | this.msg=response.msg; |
@@ -338,17 +337,16 @@ | @@ -338,17 +337,16 @@ | ||
338 | this.aircraft.createBy=loginUserInfo.username | 337 | this.aircraft.createBy=loginUserInfo.username |
339 | sendAircraft(this.aircraft).then(res=>{ | 338 | sendAircraft(this.aircraft).then(res=>{ |
340 | let response=res.data; | 339 | let response=res.data; |
341 | - console.log(response); | ||
342 | if(response.code=='200'){ | 340 | if(response.code=='200'){ |
343 | - this.centerDialogVisible=true; | ||
344 | - this.msg=response.msg; | 341 | + //this.centerDialogVisible=true; |
342 | + //this.msg=response.msg; | ||
345 | this.$router.push({path:'/queryAircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo}}); | 343 | this.$router.push({path:'/queryAircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo}}); |
344 | + this.$message.success(response.msg) | ||
346 | }else{ | 345 | }else{ |
347 | - this.msg=response.msg; | 346 | + this.$message.error(response.msg) |
348 | } | 347 | } |
349 | }); | 348 | }); |
350 | } else { | 349 | } else { |
351 | - console.log('error submit!!'); | ||
352 | return false; | 350 | return false; |
353 | } | 351 | } |
354 | }); | 352 | }); |
@@ -368,7 +366,7 @@ | @@ -368,7 +366,7 @@ | ||
368 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 366 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
369 | } | 367 | } |
370 | }, | 368 | }, |
371 | - mounted(){ | 369 | + activated(){ |
372 | this.defaultData(); | 370 | this.defaultData(); |
373 | } | 371 | } |
374 | } | 372 | } |
@@ -241,15 +241,15 @@ | @@ -241,15 +241,15 @@ | ||
241 | submitForm(formName) { | 241 | submitForm(formName) { |
242 | this.$refs[formName].validate((valid) => { | 242 | this.$refs[formName].validate((valid) => { |
243 | if (valid) { | 243 | if (valid) { |
244 | - console.log(this.arrival) | ||
245 | addPrediction(this.arrival).then(res=>{ | 244 | addPrediction(this.arrival).then(res=>{ |
246 | let response=res.data; | 245 | let response=res.data; |
247 | if(response.code=='200'){ | 246 | if(response.code=='200'){ |
248 | - this.centerDialogVisible=true; | ||
249 | - this.msg=response.msg; | 247 | + // this.centerDialogVisible=true; |
248 | + //this.msg=response.msg; | ||
250 | this.$router.push({path:'/queryArrival',query:{flightNo:this.arrival.flightNo,flightDate:this.arrival.flightDate}}); | 249 | this.$router.push({path:'/queryArrival',query:{flightNo:this.arrival.flightNo,flightDate:this.arrival.flightDate}}); |
250 | + this.$message.success(response.msg) | ||
251 | }else{ | 251 | }else{ |
252 | - this.msg=response.msg; | 252 | + this.$message.error(response.msg) |
253 | } | 253 | } |
254 | } | 254 | } |
255 | ); | 255 | ); |
@@ -292,7 +292,7 @@ | @@ -292,7 +292,7 @@ | ||
292 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 292 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
293 | } | 293 | } |
294 | }, | 294 | }, |
295 | - mounted(){ | 295 | + activated(){ |
296 | this.defaultData(); | 296 | this.defaultData(); |
297 | } | 297 | } |
298 | } | 298 | } |
@@ -641,8 +641,9 @@ background-color: white; | @@ -641,8 +641,9 @@ background-color: white; | ||
641 | addBillPerson(this.billperson).then(res=>{ | 641 | addBillPerson(this.billperson).then(res=>{ |
642 | let response=res.data; | 642 | let response=res.data; |
643 | if(response.code=='200'){ | 643 | if(response.code=='200'){ |
644 | - this.centerDialogVisible=true; | ||
645 | - this.msg=response.msg; | 644 | + //this.centerDialogVisible=true; |
645 | + //this.msg=response.msg; | ||
646 | + this.$message.success(response.msg); | ||
646 | this.transList() | 647 | this.transList() |
647 | //document.getElementById("send").disabled=true; | 648 | //document.getElementById("send").disabled=true; |
648 | let sy=this.type="2"; | 649 | let sy=this.type="2"; |
@@ -771,15 +772,16 @@ background-color: white; | @@ -771,15 +772,16 @@ background-color: white; | ||
771 | addBill(this.bill).then(res=>{ | 772 | addBill(this.bill).then(res=>{ |
772 | let response=res.data; | 773 | let response=res.data; |
773 | if(response.code=='200'){ | 774 | if(response.code=='200'){ |
774 | - this.centerDialogVisible=true; | ||
775 | - this.msg=response.msg; | 775 | + this.$message.success(response.msg) |
776 | + //this.centerDialogVisible=true; | ||
777 | + //this.msg=response.msg; | ||
776 | // this.$router.push({path:'/queryBill',query:{aircraftNo:this.bill.aircraftNo,flightNo:this.bill.flightNo, | 778 | // this.$router.push({path:'/queryBill',query:{aircraftNo:this.bill.aircraftNo,flightNo:this.bill.flightNo, |
777 | // flightDate:this.bill.flightDate}}); | 779 | // flightDate:this.bill.flightDate}}); |
778 | //document.getElementById("add").disabled=true; | 780 | //document.getElementById("add").disabled=true; |
779 | let st=this.status="2"; | 781 | let st=this.status="2"; |
780 | this.btDeleStatusFormater(st); | 782 | this.btDeleStatusFormater(st); |
781 | }else{ | 783 | }else{ |
782 | - this.msg=response.msg; | 784 | + this.$message.error(response.msg) |
783 | } | 785 | } |
784 | }); | 786 | }); |
785 | } else { | 787 | } else { |
@@ -797,10 +799,11 @@ background-color: white; | @@ -797,10 +799,11 @@ background-color: white; | ||
797 | sendBill(this.bill).then(res=>{ | 799 | sendBill(this.bill).then(res=>{ |
798 | let response=res.data; | 800 | let response=res.data; |
799 | if(response.code=='200'){ | 801 | if(response.code=='200'){ |
800 | - this.centerDialogVisible=true; | ||
801 | - this.msg=response.msg; | 802 | + //this.centerDialogVisible=true; |
803 | + //this.msg=response.msg; | ||
802 | this.$router.push({path:'/queryBill',query:{aircraftNo:this.bill.aircraftNo,flightNo:this.bill.flightNo, | 804 | this.$router.push({path:'/queryBill',query:{aircraftNo:this.bill.aircraftNo,flightNo:this.bill.flightNo, |
803 | flightDate:this.bill.flightDate}}); | 805 | flightDate:this.bill.flightDate}}); |
806 | + this.$message.success(response.msg) | ||
804 | //document.getElementById("add").disabled=true; | 807 | //document.getElementById("add").disabled=true; |
805 | // let st=this.status="2"; | 808 | // let st=this.status="2"; |
806 | // this.btDeleStatusFormater(st); | 809 | // this.btDeleStatusFormater(st); |
@@ -865,7 +868,7 @@ background-color: white; | @@ -865,7 +868,7 @@ background-color: white; | ||
865 | return uuid; | 868 | return uuid; |
866 | }, | 869 | }, |
867 | }, | 870 | }, |
868 | - mounted(){ | 871 | + activated(){ |
869 | this.defaultData(); | 872 | this.defaultData(); |
870 | //this.transList(); | 873 | //this.transList(); |
871 | // this.getCreden(); | 874 | // this.getCreden(); |
@@ -11,19 +11,19 @@ | @@ -11,19 +11,19 @@ | ||
11 | <el-form :label-position="labelPosition" :model="queryConfigure" :rules="rules" ref="queryFlight" | 11 | <el-form :label-position="labelPosition" :model="queryConfigure" :rules="rules" ref="queryFlight" |
12 | label-width="130px" class="demo-ruleForm"> | 12 | label-width="130px" class="demo-ruleForm"> |
13 | <el-row> | 13 | <el-row> |
14 | - <el-col :span="5" style="margin-right: 70px"> | 14 | + <el-col :span="5"> |
15 | <el-form-item label="承运人" prop="carrier" label-width="70px"> | 15 | <el-form-item label="承运人" prop="carrier" label-width="70px"> |
16 | <el-input v-model="queryConfigure.carrier" style="width:120px"></el-input> | 16 | <el-input v-model="queryConfigure.carrier" style="width:120px"></el-input> |
17 | </el-form-item> | 17 | </el-form-item> |
18 | </el-col> | 18 | </el-col> |
19 | - <el-col :span="5" style="margin-right: 70px"> | 19 | + <el-col :span="5"> |
20 | <el-form-item label="航班号" prop="flightno" label-width="70px"> | 20 | <el-form-item label="航班号" prop="flightno" label-width="70px"> |
21 | <el-input v-model="queryConfigure.flightno" style="width:120px"></el-input> | 21 | <el-input v-model="queryConfigure.flightno" style="width:120px"></el-input> |
22 | </el-form-item> | 22 | </el-form-item> |
23 | </el-col> | 23 | </el-col> |
24 | <el-col :span="8" > | 24 | <el-col :span="8" > |
25 | - <el-button type="primary" icon="el-icon-search" @click="submitForm()">查询</el-button> | ||
26 | - <el-button type="success" icon="el-icon-edit" @click="addForm()">新增</el-button> | 25 | + <el-button type="primary" @click="submitForm()">查询</el-button> |
26 | + <el-button type="success" @click="addForm()">新增</el-button> | ||
27 | 27 | ||
28 | </el-col> | 28 | </el-col> |
29 | </el-row> | 29 | </el-row> |
@@ -36,28 +36,19 @@ | @@ -36,28 +36,19 @@ | ||
36 | :data="tableData" | 36 | :data="tableData" |
37 | border | 37 | border |
38 | v-loading="tableloading" style="margin-bottom: 20px;margin-top: 20px"> | 38 | v-loading="tableloading" style="margin-bottom: 20px;margin-top: 20px"> |
39 | - <el-table-column | 39 | + <!--<el-table-column |
40 | prop="carrier" | 40 | prop="carrier" |
41 | label="承运人"> | 41 | label="承运人"> |
42 | - </el-table-column> | 42 | + </el-table-column>--> |
43 | <el-table-column | 43 | <el-table-column |
44 | prop="flightno" | 44 | prop="flightno" |
45 | label="航班号"> | 45 | label="航班号"> |
46 | </el-table-column> | 46 | </el-table-column> |
47 | <el-table-column | 47 | <el-table-column |
48 | - prop="customscode" | ||
49 | - label="申报关区"> | ||
50 | - </el-table-column> | ||
51 | - <el-table-column | ||
52 | prop="aircraftcode" | 48 | prop="aircraftcode" |
53 | label="航空注册器编号"> | 49 | label="航空注册器编号"> |
54 | </el-table-column> | 50 | </el-table-column> |
55 | <el-table-column | 51 | <el-table-column |
56 | - prop="aircrafttype" | ||
57 | - label="航空器备案类型" | ||
58 | - show-overflow-tooltip> | ||
59 | - </el-table-column> | ||
60 | - <el-table-column | ||
61 | prop="originstation" | 52 | prop="originstation" |
62 | label="航班起始站"> | 53 | label="航班起始站"> |
63 | </el-table-column> | 54 | </el-table-column> |
@@ -66,12 +57,37 @@ | @@ -66,12 +57,37 @@ | ||
66 | label="航班目的站"> | 57 | label="航班目的站"> |
67 | </el-table-column> | 58 | </el-table-column> |
68 | <el-table-column | 59 | <el-table-column |
60 | + prop="customscode" | ||
61 | + label="申报关区"> | ||
62 | + </el-table-column> | ||
63 | + <el-table-column | ||
64 | + label="配置类型"> | ||
65 | + <template slot-scope="scope"> | ||
66 | + <span v-if="scope.row.type ==='2'">入境</span> | ||
67 | + <span v-if="scope.row.type ==='1'">出境</span> | ||
68 | + </template> | ||
69 | + </el-table-column> | ||
70 | + <!--<el-table-column | ||
71 | + prop="aircrafttype" | ||
72 | + label="航空器备案类型" | ||
73 | + show-overflow-tooltip> | ||
74 | + </el-table-column>--> | ||
75 | + | ||
76 | + <!--<el-table-column | ||
69 | prop="configstarttime" | 77 | prop="configstarttime" |
70 | label="配置生效时间"> | 78 | label="配置生效时间"> |
71 | </el-table-column> | 79 | </el-table-column> |
72 | <el-table-column | 80 | <el-table-column |
73 | prop="configendtime" | 81 | prop="configendtime" |
74 | label="配置生效生效到期日"> | 82 | label="配置生效生效到期日"> |
83 | + </el-table-column>--> | ||
84 | + <el-table-column | ||
85 | + prop="entrytime" | ||
86 | + label="入境时间"> | ||
87 | + </el-table-column> | ||
88 | + <el-table-column | ||
89 | + prop="departuretime" | ||
90 | + label="出境时间"> | ||
75 | </el-table-column> | 91 | </el-table-column> |
76 | <el-table-column | 92 | <el-table-column |
77 | label="配置状态"> | 93 | label="配置状态"> |
@@ -80,14 +96,8 @@ | @@ -80,14 +96,8 @@ | ||
80 | <span v-if="scope.row.configstatus ==='1'">生效</span> | 96 | <span v-if="scope.row.configstatus ==='1'">生效</span> |
81 | </template> | 97 | </template> |
82 | </el-table-column> | 98 | </el-table-column> |
83 | - <el-table-column | ||
84 | - label="配置类型"> | ||
85 | - <template slot-scope="scope"> | ||
86 | - <span v-if="scope.row.type ==='2'">入境</span> | ||
87 | - <span v-if="scope.row.type ==='1'">出境</span> | ||
88 | - </template> | ||
89 | - </el-table-column> | ||
90 | - <el-table-column | 99 | + |
100 | + <!--<el-table-column | ||
91 | prop="userid" | 101 | prop="userid" |
92 | label="创建人"> | 102 | label="创建人"> |
93 | </el-table-column> | 103 | </el-table-column> |
@@ -98,16 +108,9 @@ | @@ -98,16 +108,9 @@ | ||
98 | <el-table-column | 108 | <el-table-column |
99 | prop="updatedate" | 109 | prop="updatedate" |
100 | label="配置更新时间"> | 110 | label="配置更新时间"> |
101 | - </el-table-column> | ||
102 | - <el-table-column | ||
103 | - prop="entrytime" | ||
104 | - label="入境时间"> | ||
105 | - </el-table-column> | ||
106 | - <el-table-column | ||
107 | - prop="departuretime" | ||
108 | - label="出境时间"> | ||
109 | - </el-table-column> | ||
110 | - <el-table-column | 111 | + </el-table-column>--> |
112 | + | ||
113 | + <!--<el-table-column | ||
111 | prop="stayid" | 114 | prop="stayid" |
112 | label="停机位"> | 115 | label="停机位"> |
113 | </el-table-column> | 116 | </el-table-column> |
@@ -122,12 +125,12 @@ | @@ -122,12 +125,12 @@ | ||
122 | <el-table-column | 125 | <el-table-column |
123 | prop="remark" | 126 | prop="remark" |
124 | label="配置规则备注"> | 127 | label="配置规则备注"> |
125 | - </el-table-column> | 128 | + </el-table-column>--> |
126 | <el-table-column | 129 | <el-table-column |
127 | fixed="right" | 130 | fixed="right" |
128 | prop="" | 131 | prop="" |
129 | - label="报文操作" | ||
130 | - width="280"> | 132 | + label="信息操作" |
133 | + width="180"> | ||
131 | <template slot-scope="scope"> | 134 | <template slot-scope="scope"> |
132 | <el-button | 135 | <el-button |
133 | size="mini" | 136 | size="mini" |
@@ -187,8 +190,10 @@ | @@ -187,8 +190,10 @@ | ||
187 | <el-row> | 190 | <el-row> |
188 | <el-col :span="6"> | 191 | <el-col :span="6"> |
189 | <el-form-item label="航空器备案类型" prop="aircrafttype" label-width="140px"> | 192 | <el-form-item label="航空器备案类型" prop="aircrafttype" label-width="140px"> |
190 | - <el-input v-model="configure_editForm.aircrafttype" | ||
191 | - ></el-input> | 193 | + <el-select v-model="configure_editForm.aircrafttype" placeholder="请选择"> |
194 | + <el-option label="通用航空器" value="1"></el-option> | ||
195 | + <el-option label="航线航空器" value="2"></el-option> | ||
196 | + </el-select> | ||
192 | </el-form-item> | 197 | </el-form-item> |
193 | </el-col> | 198 | </el-col> |
194 | <el-col :span="6"> | 199 | <el-col :span="6"> |
@@ -203,27 +208,27 @@ | @@ -203,27 +208,27 @@ | ||
203 | maxLength='3'></el-input> | 208 | maxLength='3'></el-input> |
204 | </el-form-item> | 209 | </el-form-item> |
205 | </el-col> | 210 | </el-col> |
206 | - <el-col :span="6"> | 211 | + <!--<el-col :span="6"> |
207 | <el-form-item label="配置生效时间" prop="configstarttime" label-width="130px"> | 212 | <el-form-item label="配置生效时间" prop="configstarttime" label-width="130px"> |
208 | <el-date-picker | 213 | <el-date-picker |
209 | v-model="configure_editForm.configstarttime" | 214 | v-model="configure_editForm.configstarttime" |
210 | type="datetime" | 215 | type="datetime" |
211 | placeholder="选择日期时间" | 216 | placeholder="选择日期时间" |
212 | - value-format="yyyyMMddhhmmss" | ||
213 | - format="yyyyMMddhhmmss" | 217 | + value-format="yyyy-MM-dd HH:mm:ss" |
218 | + format="yyyy-MM-dd HH:mm:ss" | ||
214 | style="width: 100%" | 219 | style="width: 100%" |
215 | :picker-options="pickerOptions"> | 220 | :picker-options="pickerOptions"> |
216 | </el-date-picker> | 221 | </el-date-picker> |
217 | </el-form-item> | 222 | </el-form-item> |
218 | - </el-col> | 223 | + </el-col>--> |
219 | <el-col :span="6"> | 224 | <el-col :span="6"> |
220 | <el-form-item label="配置生效到期日" prop="configendtime" label-width="140px"> | 225 | <el-form-item label="配置生效到期日" prop="configendtime" label-width="140px"> |
221 | <el-date-picker | 226 | <el-date-picker |
222 | v-model="configure_editForm.configendtime" | 227 | v-model="configure_editForm.configendtime" |
223 | type="datetime" | 228 | type="datetime" |
224 | placeholder="选择日期时间" | 229 | placeholder="选择日期时间" |
225 | - value-format="yyyyMMddhhmmss" | ||
226 | - format="yyyyMMddhhmmss" | 230 | + value-format="yyyy-MM-dd HH:mm:ss" |
231 | + format="yyyy-MM-dd HH:mm:ss" | ||
227 | style="width: 100%" | 232 | style="width: 100%" |
228 | :picker-options="pickerOptions"> | 233 | :picker-options="pickerOptions"> |
229 | </el-date-picker> | 234 | </el-date-picker> |
@@ -247,12 +252,12 @@ | @@ -247,12 +252,12 @@ | ||
247 | </el-select> | 252 | </el-select> |
248 | </el-form-item> | 253 | </el-form-item> |
249 | </el-col> | 254 | </el-col> |
250 | - <el-col :span="6"> | 255 | + <!--<el-col :span="6"> |
251 | <el-form-item label="创建人" prop="userid" label-width="130px"> | 256 | <el-form-item label="创建人" prop="userid" label-width="130px"> |
252 | <el-input v-model="configure_editForm.userid"></el-input> | 257 | <el-input v-model="configure_editForm.userid"></el-input> |
253 | </el-form-item> | 258 | </el-form-item> |
254 | - </el-col> | ||
255 | - <el-col :span="6"> | 259 | + </el-col>--> |
260 | + <!--<el-col :span="6"> | ||
256 | <el-form-item label="创建时间" prop="creatdate" label-width="130px"> | 261 | <el-form-item label="创建时间" prop="creatdate" label-width="130px"> |
257 | <el-date-picker | 262 | <el-date-picker |
258 | v-model="configure_editForm.creatdate" | 263 | v-model="configure_editForm.creatdate" |
@@ -277,15 +282,15 @@ | @@ -277,15 +282,15 @@ | ||
277 | :picker-options="pickerOptions"> | 282 | :picker-options="pickerOptions"> |
278 | </el-date-picker> | 283 | </el-date-picker> |
279 | </el-form-item> | 284 | </el-form-item> |
280 | - </el-col> | 285 | + </el-col>--> |
281 | <el-col :span="6"> | 286 | <el-col :span="6"> |
282 | <el-form-item label="入境时间" prop="entrytime" label-width="130px"> | 287 | <el-form-item label="入境时间" prop="entrytime" label-width="130px"> |
283 | <el-date-picker | 288 | <el-date-picker |
284 | v-model="configure_editForm.entrytime" | 289 | v-model="configure_editForm.entrytime" |
285 | type="datetime" | 290 | type="datetime" |
286 | placeholder="选择日期时间" | 291 | placeholder="选择日期时间" |
287 | - value-format="yyyyMMddhhmmss" | ||
288 | - format="yyyyMMddhhmmss" | 292 | + value-format="yyyy-MM-dd HH:mm:ss" |
293 | + format="yyyy-MM-dd HH:mm:ss" | ||
289 | style="width:100%"> | 294 | style="width:100%"> |
290 | </el-date-picker> | 295 | </el-date-picker> |
291 | </el-form-item> | 296 | </el-form-item> |
@@ -296,8 +301,8 @@ | @@ -296,8 +301,8 @@ | ||
296 | v-model="configure_editForm.departuretime" | 301 | v-model="configure_editForm.departuretime" |
297 | type="datetime" | 302 | type="datetime" |
298 | placeholder="选择日期时间" | 303 | placeholder="选择日期时间" |
299 | - value-format="yyyyMMddhhmmss" | ||
300 | - format="yyyyMMddhhmmss" | 304 | + value-format="yyyy-MM-dd HH:mm:ss" |
305 | + format="yyyy-MM-dd HH:mm:ss" | ||
301 | style="width:100%"> | 306 | style="width:100%"> |
302 | </el-date-picker> | 307 | </el-date-picker> |
303 | </el-form-item> | 308 | </el-form-item> |
@@ -308,7 +313,7 @@ | @@ -308,7 +313,7 @@ | ||
308 | <el-input v-model="configure_editForm.stayid"></el-input> | 313 | <el-input v-model="configure_editForm.stayid"></el-input> |
309 | </el-form-item> | 314 | </el-form-item> |
310 | </el-col> | 315 | </el-col> |
311 | - <el-col :span="6"> | 316 | + <!--<el-col :span="6"> |
312 | <el-form-item label="定时任务配置时间规则" prop="crontask" label-width="130px"> | 317 | <el-form-item label="定时任务配置时间规则" prop="crontask" label-width="130px"> |
313 | <el-input v-model="configure_editForm.crontask"></el-input> | 318 | <el-input v-model="configure_editForm.crontask"></el-input> |
314 | </el-form-item> | 319 | </el-form-item> |
@@ -322,7 +327,7 @@ | @@ -322,7 +327,7 @@ | ||
322 | <el-form-item label="配置规则备注" prop="remark" label-width="130px"> | 327 | <el-form-item label="配置规则备注" prop="remark" label-width="130px"> |
323 | <el-input v-model="configure_editForm.remark"></el-input> | 328 | <el-input v-model="configure_editForm.remark"></el-input> |
324 | </el-form-item> | 329 | </el-form-item> |
325 | - </el-col> | 330 | + </el-col>--> |
326 | </el-form> | 331 | </el-form> |
327 | <div slot="footer" class="dialog-footer"> | 332 | <div slot="footer" class="dialog-footer"> |
328 | <el-button @click="configure_dialog.addDialog = false" size="small">取 消</el-button> | 333 | <el-button @click="configure_dialog.addDialog = false" size="small">取 消</el-button> |
@@ -396,13 +401,13 @@ | @@ -396,13 +401,13 @@ | ||
396 | flightno: '', | 401 | flightno: '', |
397 | customscode: '', | 402 | customscode: '', |
398 | aircraftcode: '', | 403 | aircraftcode: '', |
399 | - aircrafttype: '', | 404 | + aircrafttype: '1', |
400 | originstation: '', | 405 | originstation: '', |
401 | destinationstation: '', | 406 | destinationstation: '', |
402 | configstarttime: '', | 407 | configstarttime: '', |
403 | configendtime: '', | 408 | configendtime: '', |
404 | - configstatus: '', | ||
405 | - type: '', | 409 | + configstatus: '1', |
410 | + type: '2', | ||
406 | userid: '', | 411 | userid: '', |
407 | creatdate: '', | 412 | creatdate: '', |
408 | updatedate: '', | 413 | updatedate: '', |
@@ -421,9 +426,6 @@ | @@ -421,9 +426,6 @@ | ||
421 | flightno: [ | 426 | flightno: [ |
422 | { required: true, message: '请输入', trigger: 'change' } | 427 | { required: true, message: '请输入', trigger: 'change' } |
423 | ], | 428 | ], |
424 | - configstarttime: [ | ||
425 | - { required: true, message: '请输入', trigger: 'change' } | ||
426 | - ], | ||
427 | configendtime: [ | 429 | configendtime: [ |
428 | { required: true, message: '请输入', trigger: 'change' } | 430 | { required: true, message: '请输入', trigger: 'change' } |
429 | ], | 431 | ], |
@@ -433,12 +435,6 @@ | @@ -433,12 +435,6 @@ | ||
433 | type: [ | 435 | type: [ |
434 | { required: true, message: '请输入', trigger: 'change' } | 436 | { required: true, message: '请输入', trigger: 'change' } |
435 | ], | 437 | ], |
436 | - creatdate: [ | ||
437 | - { required: true, message: '请输入', trigger: 'change' } | ||
438 | - ], | ||
439 | - updatedate: [ | ||
440 | - { required: true, message: '请输入', trigger: 'change' } | ||
441 | - ], | ||
442 | entrytime: [ | 438 | entrytime: [ |
443 | { required: true, message: '请输入', trigger: 'change' } | 439 | { required: true, message: '请输入', trigger: 'change' } |
444 | ], | 440 | ], |
@@ -460,9 +456,6 @@ | @@ -460,9 +456,6 @@ | ||
460 | destinationstation: [ | 456 | destinationstation: [ |
461 | { required: true, message: '请输入', trigger: 'change' } | 457 | { required: true, message: '请输入', trigger: 'change' } |
462 | ], | 458 | ], |
463 | - userid: [ | ||
464 | - { required: true, message: '请输入', trigger: 'change' } | ||
465 | - ], | ||
466 | stayid: [ | 459 | stayid: [ |
467 | { required: true, message: '请输入', trigger: 'change' } | 460 | { required: true, message: '请输入', trigger: 'change' } |
468 | ], | 461 | ], |
@@ -487,7 +480,6 @@ | @@ -487,7 +480,6 @@ | ||
487 | const _this = this | 480 | const _this = this |
488 | selectExact(this.queryConfigure).then((response) => { | 481 | selectExact(this.queryConfigure).then((response) => { |
489 | const res = response.data | 482 | const res = response.data |
490 | - console.log(response.data) | ||
491 | if (res.code !== '200') { | 483 | if (res.code !== '200') { |
492 | return _this.$message.error('获取消息收发记录,失败!') | 484 | return _this.$message.error('获取消息收发记录,失败!') |
493 | } | 485 | } |
@@ -93,7 +93,7 @@ | @@ -93,7 +93,7 @@ | ||
93 | configure:{ | 93 | configure:{ |
94 | username:loginUserInfo.username, | 94 | username:loginUserInfo.username, |
95 | flightNo:undefined, | 95 | flightNo:undefined, |
96 | - ietype:'0', | 96 | + ietype:'1', |
97 | reamrk:undefined, | 97 | reamrk:undefined, |
98 | // accessFlag:'1', | 98 | // accessFlag:'1', |
99 | country:'', | 99 | country:'', |
@@ -138,16 +138,15 @@ | @@ -138,16 +138,15 @@ | ||
138 | if (valid) { | 138 | if (valid) { |
139 | this.configure.createBy=loginUserInfo.username | 139 | this.configure.createBy=loginUserInfo.username |
140 | this.configure.username=loginUserInfo.username | 140 | this.configure.username=loginUserInfo.username |
141 | - console.log(this.configure.flightNo) | ||
142 | addSchedule(this.configure).then(res=>{ | 141 | addSchedule(this.configure).then(res=>{ |
143 | let response=res.data; | 142 | let response=res.data; |
144 | - console.log(response) | ||
145 | if(response.code=='200'){ | 143 | if(response.code=='200'){ |
146 | - this.centerDialogVisible=true; | ||
147 | - this.msg=response.msg; | 144 | + //this.centerDialogVisible=true; |
145 | + //this.msg=response.msg; | ||
148 | this.$router.push({path:'/queryConfigure',query:{flightNo:this.configure.flightNo}}); | 146 | this.$router.push({path:'/queryConfigure',query:{flightNo:this.configure.flightNo}}); |
147 | + this.$message.success(response.msg) | ||
149 | }else{ | 148 | }else{ |
150 | - this.msg=response.msg; | 149 | + this.$message.error(response.msg) |
151 | } | 150 | } |
152 | }); | 151 | }); |
153 | } else { | 152 | } else { |
@@ -167,7 +166,7 @@ | @@ -167,7 +166,7 @@ | ||
167 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 166 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
168 | } | 167 | } |
169 | }, | 168 | }, |
170 | - mounted(){ | 169 | + activated(){ |
171 | this.defaultData(); | 170 | this.defaultData(); |
172 | } | 171 | } |
173 | } | 172 | } |
@@ -218,11 +218,12 @@ | @@ -218,11 +218,12 @@ | ||
218 | addConfirm(this.confirmatory).then(res=>{ | 218 | addConfirm(this.confirmatory).then(res=>{ |
219 | let response=res.data; | 219 | let response=res.data; |
220 | if(response.code=='200'){ | 220 | if(response.code=='200'){ |
221 | - this.centerDialogVisible=true; | ||
222 | - this.msg=response.msg; | 221 | + //this.centerDialogVisible=true; |
222 | + //this.msg=response.msg; | ||
223 | this.$router.push({path:'/queryConfirmatory',query:{flightNo:this.confirmatory.flightNo,flightDate:this.confirmatory.flightDate}}); | 223 | this.$router.push({path:'/queryConfirmatory',query:{flightNo:this.confirmatory.flightNo,flightDate:this.confirmatory.flightDate}}); |
224 | + this.$message.success(response.msg) | ||
224 | }else{ | 225 | }else{ |
225 | - this.msg=response.msg; | 226 | + this.$message.error(response.msg) |
226 | } | 227 | } |
227 | }); | 228 | }); |
228 | } else { | 229 | } else { |
@@ -235,17 +236,16 @@ | @@ -235,17 +236,16 @@ | ||
235 | sendForm(formName) { | 236 | sendForm(formName) { |
236 | this.$refs[formName].validate((valid) => { | 237 | this.$refs[formName].validate((valid) => { |
237 | if (valid) { | 238 | if (valid) { |
238 | - console.log(this.confirmatory) | ||
239 | this.confirmatory.createBy=loginUserInfo.username | 239 | this.confirmatory.createBy=loginUserInfo.username |
240 | - | ||
241 | sendConfirmIn(this.confirmatory).then(res=>{ | 240 | sendConfirmIn(this.confirmatory).then(res=>{ |
242 | let response=res.data; | 241 | let response=res.data; |
243 | if(response.code=='200'){ | 242 | if(response.code=='200'){ |
244 | - this.centerDialogVisible=true; | ||
245 | - this.msg=response.msg; | 243 | + //this.centerDialogVisible=true; |
244 | + //this.msg=response.msg; | ||
246 | this.$router.push({path:'/queryConfirmatory',query:{flightNo:this.confirmatory.flightNo,flightDate:this.confirmatory.flightDate}}); | 245 | this.$router.push({path:'/queryConfirmatory',query:{flightNo:this.confirmatory.flightNo,flightDate:this.confirmatory.flightDate}}); |
246 | + this.$message.success(response.msg) | ||
247 | }else{ | 247 | }else{ |
248 | - this.msg=response.msg; | 248 | + this.$message.error(response.msg) |
249 | } | 249 | } |
250 | }); | 250 | }); |
251 | } else { | 251 | } else { |
@@ -265,7 +265,7 @@ | @@ -265,7 +265,7 @@ | ||
265 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 265 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
266 | } | 266 | } |
267 | }, | 267 | }, |
268 | - mounted(){ | 268 | + activated(){ |
269 | this.defaultData(); | 269 | this.defaultData(); |
270 | } | 270 | } |
271 | } | 271 | } |
src/views/airtransport/danzheng.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <el-row :gutter="10"> | ||
4 | + <el-col :span="4"> | ||
5 | + <el-input | ||
6 | + placeholder="航空器注册编号" | ||
7 | + v-model="query.aircraftNo" | ||
8 | + size="medium" | ||
9 | + clearable> | ||
10 | + </el-input> | ||
11 | + </el-col> | ||
12 | + <el-col :span="4"> | ||
13 | + <el-input | ||
14 | + placeholder="进出境(港)航班号" | ||
15 | + v-model="query.flightNo" | ||
16 | + size="medium" | ||
17 | + clearable> | ||
18 | + </el-input> | ||
19 | + </el-col> | ||
20 | + <el-col :span="8"> | ||
21 | + <div class="block"> | ||
22 | + <el-date-picker | ||
23 | + v-model="flightdate" | ||
24 | + type="daterange" | ||
25 | + :picker-options="pickerOptions" | ||
26 | + range-separator="至" | ||
27 | + start-placeholder="开始日期" | ||
28 | + end-placeholder="结束日期" | ||
29 | + value-format="yyyy-MM-dd" | ||
30 | + size="medium" | ||
31 | + align="right"> | ||
32 | + </el-date-picker> | ||
33 | + </div> | ||
34 | + </el-col> | ||
35 | + <el-col :span="2"> | ||
36 | + <el-button size="medium" type="primary" @click="selectList" plain>查询</el-button> | ||
37 | + </el-col> | ||
38 | + <el-col :span="2"> | ||
39 | + <el-button size="medium" type="success" @click="addForm()" plain>新增</el-button> | ||
40 | + </el-col> | ||
41 | + <el-col :span="2"> | ||
42 | + <el-upload | ||
43 | + class="upload-demo" | ||
44 | + action="" | ||
45 | + :before-upload="beforeUpload" | ||
46 | + :http-request="uploadFile" | ||
47 | + :show-file-list="false"> | ||
48 | + <el-button size="medium" type="success" plain>导入</el-button> | ||
49 | + </el-upload> | ||
50 | + </el-col> | ||
51 | + </el-row> | ||
52 | + <el-row :gutter="10"> | ||
53 | + <el-table | ||
54 | + :data="tableData" | ||
55 | + style="width: 100%" | ||
56 | + row-key="uuid" | ||
57 | + :expand-row-keys="expandedRowKeys" | ||
58 | + border | ||
59 | + stripe> | ||
60 | + <el-table-column | ||
61 | + align="center" | ||
62 | + fixed="left" | ||
63 | + label="信息操作" | ||
64 | + width="80"> | ||
65 | + <template slot-scope="scope"> | ||
66 | + <el-button @click="ediForm(scope.row)" type="text" size="small">编辑</el-button> | ||
67 | + </template> | ||
68 | + </el-table-column> | ||
69 | + <el-table-column type="expand" label="详细信息"> | ||
70 | + <template v-slot:default="{ row }"> | ||
71 | + <el-table | ||
72 | + :data="row.billpersonList" | ||
73 | + style="width: 70%;margin-left: 75px;margin-top: 10px" | ||
74 | + row-key="autoId" | ||
75 | + stripe | ||
76 | + border | ||
77 | + > | ||
78 | + <el-table-column prop="name" label="姓名" /> | ||
79 | + <el-table-column width="80" prop="gender" label="性别"> | ||
80 | + <template slot-scope="scope"> | ||
81 | + {{ scope.row.gender === 'M' ? '男' : '女' }} | ||
82 | + </template> | ||
83 | + </el-table-column> | ||
84 | + <el-table-column width="80" prop="nationality" label="国籍" /> | ||
85 | + <el-table-column label="职务"> | ||
86 | + <template slot-scope="scope"> | ||
87 | + {{ { | ||
88 | + '1': '航线机长', | ||
89 | + '2': '副驾驶', | ||
90 | + '3': '乘务长', | ||
91 | + '4': '安全员', | ||
92 | + '5': '乘务员', | ||
93 | + '6': '机械师', | ||
94 | + '7': '随行人员', | ||
95 | + '8': '工程师', | ||
96 | + '9': '装载员', | ||
97 | + '10': '押运员', | ||
98 | + '11': '其它随机人员' | ||
99 | + }[scope.row.gareer] || scope.row.gareer }} | ||
100 | + </template> | ||
101 | + </el-table-column> | ||
102 | + <el-table-column prop="certType" :formatter="formatType" label="证件类型" /> | ||
103 | + <el-table-column prop="ceterNo" label="证件号" /> | ||
104 | + </el-table> | ||
105 | + </template> | ||
106 | + </el-table-column> | ||
107 | + <el-table-column | ||
108 | + prop="messageid" | ||
109 | + label="编号" | ||
110 | + width="320"> | ||
111 | + </el-table-column> | ||
112 | + | ||
113 | + <el-table-column | ||
114 | + prop="aircraftNo" | ||
115 | + label="航空器注册编号" | ||
116 | + width="100"> | ||
117 | + </el-table-column> | ||
118 | + <el-table-column | ||
119 | + prop="arrivalno" | ||
120 | + label="海关关区" | ||
121 | + width="100"> | ||
122 | + </el-table-column> | ||
123 | + <el-table-column | ||
124 | + prop="flightNo" | ||
125 | + label="进境(港)航班号" | ||
126 | + width="120"> | ||
127 | + </el-table-column> | ||
128 | + <el-table-column | ||
129 | + prop="flightDate" | ||
130 | + label="航班日期" | ||
131 | + width="100"> | ||
132 | + </el-table-column> | ||
133 | + <el-table-column | ||
134 | + label="进出类型" | ||
135 | + width="100"> | ||
136 | + <template slot-scope="scope"> | ||
137 | + {{ scope.row.accessFlag === 'D' ? '出港' : '进港' }} | ||
138 | + </template> | ||
139 | + </el-table-column> | ||
140 | + <el-table-column | ||
141 | + prop="arrivaldatetime" | ||
142 | + label="出入(境)时间" | ||
143 | + width="140"> | ||
144 | + </el-table-column> | ||
145 | + <el-table-column | ||
146 | + prop="statusMsg" | ||
147 | + label="海关状态" | ||
148 | + width="120"> | ||
149 | + </el-table-column> | ||
150 | + <el-table-column | ||
151 | + fixed="right" | ||
152 | + label="操作" | ||
153 | + width="200"> | ||
154 | + <template slot-scope="scope"> | ||
155 | + <el-button @click="returnlist(scope.row)" type="text" size="small">查看</el-button> | ||
156 | + <el-button @click="sendstying(scope.row,2)" type="text" size="small">申报</el-button> | ||
157 | + <el-button @click="sendstying(scope.row,5)" type="text" size="small">修改</el-button> | ||
158 | + <el-button @click="sendstying(scope.row,3)" type="text" size="small">删除</el-button> | ||
159 | + </template> | ||
160 | + </el-table-column> | ||
161 | + </el-table> | ||
162 | + </el-row> | ||
163 | + <el-row :gutter="10"> | ||
164 | + <div class="block"> | ||
165 | + <el-pagination | ||
166 | + @size-change="handleSizeChange" | ||
167 | + @current-change="handleCurrentChange" | ||
168 | + :current-page="query.pageNum" | ||
169 | + :page-sizes="[100, 200, 300, 400]" | ||
170 | + :page-size="query.pageSize" | ||
171 | + layout="total, sizes, prev, pager, next, jumper" | ||
172 | + :total="total"> | ||
173 | + </el-pagination> | ||
174 | + </div> | ||
175 | + </el-row> | ||
176 | + <el-row :gutter="10"> | ||
177 | + <el-dialog | ||
178 | + title="回执列表" | ||
179 | + :visible.sync="returnVisible" | ||
180 | + width="55%" | ||
181 | + :before-close="handleClose"> | ||
182 | + <el-table :data="gridData"> | ||
183 | + <el-table-column property="sendtime" label="操作时间" ></el-table-column> | ||
184 | + <el-table-column property="createBy" label="操作人" ></el-table-column> | ||
185 | + <el-table-column property="flightNo" label="航班号"></el-table-column> | ||
186 | + <el-table-column property="flightDate" label="航班日期" ></el-table-column> | ||
187 | + <el-table-column property="receiptContent" label="回执内容" ></el-table-column> | ||
188 | + </el-table> | ||
189 | + </el-dialog> | ||
190 | + </el-row> | ||
191 | + <el-row :gutter="10"> | ||
192 | + <el-dialog | ||
193 | + :title="'单证信息'+textMap[dialogStatus]" | ||
194 | + :visible.sync="dialogVisible" | ||
195 | + width="80%" | ||
196 | + center> | ||
197 | + <el-form :model="form" :rules="rules" ref="form" label-width="130px"> | ||
198 | + <el-row :gutter="10"> | ||
199 | + <el-col :span="6"> | ||
200 | + <el-form-item label="航空注册器编号" prop="aircraftNo"> | ||
201 | + <el-input v-model="form.aircraftNo"></el-input> | ||
202 | + </el-form-item> | ||
203 | + </el-col> | ||
204 | + <el-col :span="6"> | ||
205 | + <el-form-item label="航班号" prop="flightNo"> | ||
206 | + <el-input v-model="form.flightNo"></el-input> | ||
207 | + </el-form-item> | ||
208 | + </el-col> | ||
209 | + <el-col :span="6"> | ||
210 | + <el-form-item label="航班日期" prop="flightDate" style="width: 100%;"> | ||
211 | + <div class="block"> | ||
212 | + <el-date-picker | ||
213 | + v-model="form.flightDate" | ||
214 | + type="datetime" | ||
215 | + value-format="yyyy-MM-dd" | ||
216 | + placeholder="yyyy-MM-dd" | ||
217 | + style="width: 100%;"> | ||
218 | + </el-date-picker> | ||
219 | + </div> | ||
220 | + </el-form-item> | ||
221 | + </el-col> | ||
222 | + <el-col :span="6"> | ||
223 | + <el-form-item label="进出标识" prop="accessFlag"> | ||
224 | + <el-select v-model="form.accessFlag"> | ||
225 | + <el-option label="进港" value="A"></el-option> | ||
226 | + <el-option label="出港" value="D"></el-option> | ||
227 | + </el-select> | ||
228 | + </el-form-item> | ||
229 | + </el-col> | ||
230 | + </el-row> | ||
231 | + <el-row :gutter="10"> | ||
232 | + <el-col :span="6"> | ||
233 | + <el-form-item label="进出港口" prop="arrivalAirport"> | ||
234 | + <el-select v-model="form.arrivalAirport" | ||
235 | + filterable | ||
236 | + allow-create | ||
237 | + default-first-option | ||
238 | + remote | ||
239 | + :remote-method="getAirportCode" | ||
240 | + :loading="loading" placeholder="请选择"> | ||
241 | + <el-option | ||
242 | + v-for="item in airportcodes" | ||
243 | + :key="item.airportid" | ||
244 | + :label="item.airportid" | ||
245 | + :value="item.airportid"> | ||
246 | + <span style="float: left">{{ item.airportid }}</span> | ||
247 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.airportname}}</span> | ||
248 | + </el-option> | ||
249 | + </el-select> | ||
250 | + </el-form-item> | ||
251 | + </el-col> | ||
252 | + <el-col :span="6"> | ||
253 | + <el-form-item label="海关关区" prop="arrivalno"> | ||
254 | + <el-select v-model="form.arrivalno" | ||
255 | + filterable | ||
256 | + allow-create | ||
257 | + default-first-option | ||
258 | + remote | ||
259 | + :remote-method="getCustomCode" | ||
260 | + :loading="loading" placeholder="请选择"> | ||
261 | + <el-option | ||
262 | + v-for="item in customcodes" | ||
263 | + :key="item.customcode" | ||
264 | + :label="item.customcode" | ||
265 | + :value="item.customcode"> | ||
266 | + <span style="float: left">{{ item.customcode }}</span> | ||
267 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.customname }}</span> | ||
268 | + </el-option> | ||
269 | + </el-select> | ||
270 | + </el-form-item> | ||
271 | + </el-col> | ||
272 | + <el-col :span="6"> | ||
273 | + <el-form-item label="进出境时间" prop="arrivaldatetime" style="width: 100%;"> | ||
274 | + <el-date-picker | ||
275 | + v-model="form.arrivaldatetime" | ||
276 | + type="datetime" | ||
277 | + value-format="yyyy-MM-dd HH:mm:ss" | ||
278 | + placeholder="yyyy-MM-dd HH:mm:ss" | ||
279 | + style="width: 100%;"> | ||
280 | + </el-date-picker> | ||
281 | + </el-form-item> | ||
282 | + </el-col> | ||
283 | + <el-col :span="6"> | ||
284 | + <el-form-item label="机组人数" prop="aircrewSum"> | ||
285 | + <el-input v-model="form.aircrewSum"></el-input> | ||
286 | + </el-form-item> | ||
287 | + </el-col> | ||
288 | + </el-row> | ||
289 | + <el-row :guter="10"> | ||
290 | + <el-col :span="6"> | ||
291 | + <el-form-item label="国际旅客人数" prop="interPassengerSum"> | ||
292 | + <el-input v-model="form.interPassengerSum"></el-input> | ||
293 | + </el-form-item> | ||
294 | + </el-col> | ||
295 | + <el-col :span="6"> | ||
296 | + <el-form-item label="国际行李件数" prop="interBaggageNum"> | ||
297 | + <el-input v-model="form.interBaggageNum"></el-input> | ||
298 | + </el-form-item> | ||
299 | + </el-col> | ||
300 | + <el-col :span="6"> | ||
301 | + <el-form-item label="货邮件数" prop="goodsNum"> | ||
302 | + <el-input v-model="form.goodsNum"></el-input> | ||
303 | + </el-form-item> | ||
304 | + </el-col> | ||
305 | + <el-col :span="6"> | ||
306 | + <el-form-item label="货邮重量(千克)" prop="goodsQuantity"> | ||
307 | + <el-input v-model="form.goodsQuantity"></el-input> | ||
308 | + </el-form-item> | ||
309 | + </el-col> | ||
310 | + </el-row> | ||
311 | + <el-row :guter="10"> | ||
312 | + <el-col :span="6"> | ||
313 | + <el-form-item label="是否有健康异常" prop="remark"> | ||
314 | + <el-select v-model="form.remark"> | ||
315 | + <el-option label="是" value="T"></el-option> | ||
316 | + <el-option label="否" value="F"></el-option> | ||
317 | + </el-select> | ||
318 | + </el-form-item> | ||
319 | + </el-col> | ||
320 | + <el-col :span="6"> | ||
321 | + <el-form-item label="是否发现病媒生物" prop="remark1"> | ||
322 | + <el-select v-model="form.remark2"> | ||
323 | + <el-option label="是" value="T"></el-option> | ||
324 | + <el-option label="否" value="F"></el-option> | ||
325 | + </el-select> | ||
326 | + </el-form-item> | ||
327 | + </el-col> | ||
328 | + <el-col :span="6"> | ||
329 | + <el-form-item label="是否发现外来有害生物" prop="remark2"> | ||
330 | + <el-select v-model="form.remark2"> | ||
331 | + <el-option label="是" value="T"></el-option> | ||
332 | + <el-option label="否" value="F"></el-option> | ||
333 | + </el-select> | ||
334 | + </el-form-item> | ||
335 | + </el-col> | ||
336 | + <el-col :span="6"> | ||
337 | + <el-form-item label="是否有有效灭蚊证明" prop="remark3"> | ||
338 | + <el-select v-model="form.remark3"> | ||
339 | + <el-option label="是" value="T"></el-option> | ||
340 | + <el-option label="否" value="F"></el-option> | ||
341 | + </el-select> | ||
342 | + </el-form-item> | ||
343 | + </el-col> | ||
344 | + </el-row> | ||
345 | + <el-row :guter="10"> | ||
346 | + <el-col :span="18"> | ||
347 | + <el-form-item label="备注"> | ||
348 | + <el-input v-model="form.meno"></el-input> | ||
349 | + </el-form-item> | ||
350 | + </el-col> | ||
351 | + <el-col :span="6"> | ||
352 | + <el-form-item label=""> | ||
353 | + <el-button @click="dialogVisible=false">取消</el-button> | ||
354 | + <el-button type="primary" @click="dialogStatus==='create'?createData('form'):updateData('form')">暂存</el-button> | ||
355 | + </el-form-item> | ||
356 | + </el-col> | ||
357 | + </el-row> | ||
358 | + </el-form> | ||
359 | + <el-divider content-position="left"><span style="color: #1d8ce0">机组人员信息</span> | ||
360 | + <el-divider direction="vertical"></el-divider> | ||
361 | + <el-button type="primary" @click="addBillperson">新增机组人员</el-button> | ||
362 | + <el-divider direction="vertical"></el-divider></el-divider> | ||
363 | + | ||
364 | + <el-table | ||
365 | + :data="tableChldren" | ||
366 | + style="width: 80%;margin-left: 75px;margin-top: 10px" | ||
367 | + row-key="autoId" | ||
368 | + stripe | ||
369 | + border> | ||
370 | + <el-table-column prop="name" label="姓名" /> | ||
371 | + <el-table-column width="80" prop="gender" label="性别"> | ||
372 | + <template slot-scope="scope"> | ||
373 | + {{ scope.row.gender === 'M' ? '男' : '女' }} | ||
374 | + </template> | ||
375 | + </el-table-column> | ||
376 | + <el-table-column width="80" prop="nationality" label="国籍" /> | ||
377 | + <el-table-column label="职务"> | ||
378 | + <template slot-scope="scope"> | ||
379 | + {{ { | ||
380 | + '1': '航线机长', | ||
381 | + '2': '副驾驶', | ||
382 | + '3': '乘务长', | ||
383 | + '4': '安全员', | ||
384 | + '5': '乘务员', | ||
385 | + '6': '机械师', | ||
386 | + '7': '随行人员', | ||
387 | + '8': '工程师', | ||
388 | + '9': '装载员', | ||
389 | + '10': '押运员', | ||
390 | + '11': '其它随机人员' | ||
391 | + }[scope.row.gareer] || scope.row.gareer }} | ||
392 | + </template> | ||
393 | + </el-table-column> | ||
394 | + <el-table-column prop="certType" :formatter="formatType" label="证件类型" /> | ||
395 | + <el-table-column prop="ceterNo" label="证件号" /> | ||
396 | + <el-table-column | ||
397 | + fixed="right" | ||
398 | + label="操作" | ||
399 | + width="50"> | ||
400 | + <template slot-scope="scope"> | ||
401 | + <el-button @click.native.prevent="deleteRow(scope.$index, tableChldren)" type="text" size="small">删除</el-button> | ||
402 | + </template> | ||
403 | + </el-table-column> | ||
404 | + </el-table> | ||
405 | + </el-dialog> | ||
406 | + <el-dialog title="机组人员添加" :visible.sync="dialogFormVisible" width="70%" | ||
407 | + center> | ||
408 | + <el-form :model="billperson" :rules="rules" ref="billperson" label-width="100px"> | ||
409 | + <el-row :gutter="10"> | ||
410 | + <el-col :span="6"> | ||
411 | + <el-form-item label="姓名" prop="name"> | ||
412 | + <el-input v-model="billperson.name"></el-input> | ||
413 | + </el-form-item> | ||
414 | + </el-col> | ||
415 | + <el-col :span="6"> | ||
416 | + <el-form-item label="性别" prop="gender"> | ||
417 | + <el-select v-model="billperson.gender"> | ||
418 | + <el-option label="男" value="M"></el-option> | ||
419 | + <el-option label="女" value="F"></el-option> | ||
420 | + </el-select> | ||
421 | + </el-form-item> | ||
422 | + </el-col> | ||
423 | + <el-col :span="6"> | ||
424 | + <el-form-item label="国籍" prop="nationality"> | ||
425 | + <el-select v-model="billperson.nationality" | ||
426 | + filterable | ||
427 | + @click.native="getCountry" | ||
428 | + @change="selectChange" | ||
429 | + default-first-option | ||
430 | + :loading="loading" placeholder="请选择" | ||
431 | + style="text-transform:uppercase"> | ||
432 | + <el-option | ||
433 | + v-for="item in countryOptions" | ||
434 | + :key="item.countryid" | ||
435 | + :label="item.countryid+'-'+item.countrydescchn" | ||
436 | + :value="item.countryid"> | ||
437 | + <span style="float: left">{{ item.countryid }}</span> | ||
438 | + <span style="float: right; color: #8492a6; font-size: 13px">{{ item.countrydescchn }}</span> | ||
439 | + </el-option> | ||
440 | + </el-select> | ||
441 | + </el-form-item> | ||
442 | + </el-col> | ||
443 | + <el-col :span="6"> | ||
444 | + <el-form-item label="职务" prop="gareer"> | ||
445 | + <el-select v-model="billperson.gareer" placeholder="请选择"> | ||
446 | + <el-option label="1-航线机长" value="1"></el-option> | ||
447 | + <el-option label="2-副驾驶" value="2"></el-option> | ||
448 | + <el-option label="3-乘务长" value="3"></el-option> | ||
449 | + <el-option label="4-安全员" value="4"></el-option> | ||
450 | + <el-option label="5-乘务员" value="5"></el-option> | ||
451 | + <el-option label="6-机械师" value="6"></el-option> | ||
452 | + <el-option label="7-随行人员" value="7"></el-option> | ||
453 | + <el-option label="8-工程师" value="8"></el-option> | ||
454 | + <el-option label="9-装载员" value="9"></el-option> | ||
455 | + <el-option label="10-押运员" value="10"></el-option> | ||
456 | + <el-option label="11-其它随机人员" value="11"></el-option> | ||
457 | + </el-select> | ||
458 | + </el-form-item> | ||
459 | + </el-col> | ||
460 | + <el-col :span="6"> | ||
461 | + <el-form-item label="证件类型" prop="certType"> | ||
462 | + <el-select v-model="billperson.certType" | ||
463 | + filterable | ||
464 | + @click.native="getCreden" | ||
465 | + :loading="loading" placeholder="请选择"> | ||
466 | + <el-option | ||
467 | + v-for="item in certOptions" | ||
468 | + :key="item.serialno" | ||
469 | + :label="item.serialno+'-'+item.credenname" | ||
470 | + :value="item.serialno"> | ||
471 | + <span style="float: left">{{ item.serialno }}</span> | ||
472 | + <span style="float: right; color: #8492a6; font-size: 13px">{{ item.credenname }}</span> | ||
473 | + </el-option> | ||
474 | + </el-select> | ||
475 | + </el-form-item> | ||
476 | + </el-col> | ||
477 | + <el-col :span="6"> | ||
478 | + <el-form-item label="证件号码" prop="ceterNo"> | ||
479 | + <el-input v-model="billperson.ceterNo" placeholder="请输入"></el-input> | ||
480 | + </el-form-item> | ||
481 | + </el-col> | ||
482 | + <el-col :span="6"> | ||
483 | + <el-form-item label="备注" prop="meno"> | ||
484 | + <el-input v-model="billperson.meno" placeholder="请输入"></el-input> | ||
485 | + </el-form-item> | ||
486 | + </el-col> | ||
487 | + <el-col :span="6"> | ||
488 | + <el-form-item> | ||
489 | + <el-button type="primary" @click="addRow('billperson')">添加</el-button> | ||
490 | + </el-form-item> | ||
491 | + </el-col> | ||
492 | + </el-row> | ||
493 | + | ||
494 | + </el-form> | ||
495 | + </el-dialog> | ||
496 | + </el-row> | ||
497 | + </div> | ||
498 | +</template> | ||
499 | +<script> | ||
500 | + import { | ||
501 | + insertSelectiveBill, | ||
502 | + selectBillLists, | ||
503 | + selectByairportcode, | ||
504 | + selectBycustomcode, | ||
505 | + selectReturnMsgList, sendBillSdeclare, updateByPrimaryKeySelectiveBill,batchJZImport | ||
506 | + } from "../../api/transport/transport2.0"; | ||
507 | + import {selectCountry, selectCreden} from "../../api/transport"; | ||
508 | + import {importExcel} from "../../api/consigner/exportOrder"; | ||
509 | + | ||
510 | + export default{ | ||
511 | + data(){ | ||
512 | + return{ | ||
513 | + certOptions:[], | ||
514 | + countryOptions:[], | ||
515 | + countryid:'', | ||
516 | + dialogFormVisible:false, | ||
517 | + tableChldren:[], | ||
518 | + dialogVisible: false, | ||
519 | + dialogStatus:'', | ||
520 | + textMap:{ | ||
521 | + update: '编辑', | ||
522 | + create: '新增' | ||
523 | + }, | ||
524 | + tableData:[], | ||
525 | + expandedRowKeys: [], | ||
526 | + query:{ | ||
527 | + aircraftNo:'', | ||
528 | + flightNo:'', | ||
529 | + starttime:'', | ||
530 | + endtime:'', | ||
531 | + pageNum:0, | ||
532 | + pageSize:10, | ||
533 | + }, | ||
534 | + form: { | ||
535 | + uuid: '', | ||
536 | + aircraftNo: '', | ||
537 | + flightNo: '', | ||
538 | + flightDate: '', // Use JavaScript Date object | ||
539 | + accessFlag: 'A', | ||
540 | + departureAirport: '', | ||
541 | + departuredatetime: '', // Use JavaScript Date object | ||
542 | + departureno: '', | ||
543 | + arrivalAirport: '', | ||
544 | + arrivaldatetime: '', // Use JavaScript Date object | ||
545 | + arrivalno: '', | ||
546 | + aircrewSum: 0, | ||
547 | + interPassengerSum: 0, | ||
548 | + localePassengerSum: 0, | ||
549 | + interBaggageNum: 0, | ||
550 | + localeBaggageNum: 0, | ||
551 | + goodsNum: 0, | ||
552 | + goodsQuantity: 0, | ||
553 | + cargoBillNum: 0, | ||
554 | + passengerPage: 0, | ||
555 | + aircrewBillNum: 0, | ||
556 | + aircrewCargoBillNum: 0, | ||
557 | + arrivalPosition: '', | ||
558 | + bussinessType: '', | ||
559 | + messageid: '', | ||
560 | + status: '', | ||
561 | + statusMsg: '', | ||
562 | + meno: '', | ||
563 | + createTime: '', // Use JavaScript Date object | ||
564 | + createBy: '', | ||
565 | + updateTime: '', // Use JavaScript Date object | ||
566 | + updateBy: '', | ||
567 | + isDelete: '', | ||
568 | + remark: 'F', | ||
569 | + remark1: 'F', | ||
570 | + remark2: 'F', | ||
571 | + remark3: 'F', | ||
572 | + billpersonList: [] // Array of objects that represent the AIR_BILLPERSON model | ||
573 | + }, | ||
574 | + billperson: { | ||
575 | + autoId: '', | ||
576 | + name: '', | ||
577 | + gender: '', | ||
578 | + gareer: '', // Note: This might be a typo in the original Java class. It should probably be "career". | ||
579 | + nationality: '', | ||
580 | + certType: '', | ||
581 | + ceterNo: '', // Note: This might also be a typo. It should probably be "centerNo" or "certNo". | ||
582 | + createTime: '', // Use JavaScript Date object | ||
583 | + createBy: '', | ||
584 | + updateTime: '', // Use JavaScript Date object | ||
585 | + updateBy: '', | ||
586 | + meno: '', | ||
587 | + isDelete: '0', | ||
588 | + billsId: '' | ||
589 | + }, | ||
590 | + flightdate:['2021-11-17', '2024-12-24'], | ||
591 | + pickerOptions: { | ||
592 | + shortcuts: [{ | ||
593 | + text: '最近一周', | ||
594 | + onClick(picker) { | ||
595 | + const end = new Date(); | ||
596 | + const start = new Date(); | ||
597 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); | ||
598 | + picker.$emit('pick', [start, end]); | ||
599 | + } | ||
600 | + }, { | ||
601 | + text: '最近一个月', | ||
602 | + onClick(picker) { | ||
603 | + const end = new Date(); | ||
604 | + const start = new Date(); | ||
605 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); | ||
606 | + picker.$emit('pick', [start, end]); | ||
607 | + } | ||
608 | + }, { | ||
609 | + text: '最近三个月', | ||
610 | + onClick(picker) { | ||
611 | + const end = new Date(); | ||
612 | + const start = new Date(); | ||
613 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); | ||
614 | + picker.$emit('pick', [start, end]); | ||
615 | + } | ||
616 | + }] | ||
617 | + }, | ||
618 | + total:0, | ||
619 | + returnVisible:false, | ||
620 | + gridData:[], | ||
621 | + customcodes:[], | ||
622 | + airportcodes:[], | ||
623 | + loading:false, | ||
624 | + rules: { | ||
625 | + aircraftNo: [ | ||
626 | + { required: true, message: '航空注册器编号不可为空', trigger: 'blur' } | ||
627 | + ], | ||
628 | + flightNo: [ | ||
629 | + { required: true, message: '航班号不可为空', trigger: 'blur' } | ||
630 | + ], | ||
631 | + flightDate: [ | ||
632 | + { required: true, message: '航班日期不可为空', trigger: 'blur' } | ||
633 | + ], | ||
634 | + arrivalAirport: [ | ||
635 | + { required: true, message: '进出港口不可为空', trigger: 'blur' } | ||
636 | + ], | ||
637 | + arrivalno: [ | ||
638 | + { required: true, message: '海关关区不可为空', trigger: 'blur' } | ||
639 | + ], | ||
640 | + arrivaldatetime: [ | ||
641 | + { required: true, message: '进出境时间不可为空', trigger: 'blur' } | ||
642 | + ], | ||
643 | + aircrewSum: [ | ||
644 | + { required: true, message: '机组人数不可为空', trigger: 'blur' } | ||
645 | + ], | ||
646 | + interPassengerSum: [ | ||
647 | + { required: true, message: '国际旅客不可为空', trigger: 'blur' } | ||
648 | + ], | ||
649 | + interBaggageNum: [ | ||
650 | + { required: true, message: '国际行李件数不可为空', trigger: 'blur' } | ||
651 | + ], | ||
652 | + name: [ | ||
653 | + { required: true, message: '机组人员姓名不可为空', trigger: 'blur' } | ||
654 | + ], | ||
655 | + nationality: [ | ||
656 | + { required: true, message: '机组人员国籍不可为空', trigger: 'blur' } | ||
657 | + ], | ||
658 | + gender: [ | ||
659 | + { required: true, message: '机组人员性别不可为空', trigger: 'blur' } | ||
660 | + ], | ||
661 | + gareer: [ | ||
662 | + { required: true, message: '机组人员职务不可为空', trigger: 'blur' } | ||
663 | + ], | ||
664 | + certType: [ | ||
665 | + { required: true, message: '机组人员类型不可为空', trigger: 'blur' } | ||
666 | + ], | ||
667 | + ceterNo: [ | ||
668 | + { required: true, message: '机组人员证件号不可为空', trigger: 'blur' } | ||
669 | + ], | ||
670 | + }, | ||
671 | + } | ||
672 | + }, | ||
673 | + methods:{ | ||
674 | + //导入订单excel | ||
675 | + beforeUpload(file) { | ||
676 | + // 检查文件类型 | ||
677 | + const isExcel = file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' || file.type === 'application/vnd.ms-excel'; | ||
678 | + if (!isExcel) { | ||
679 | + this.$message.error('上传文件只能是 Excel 格式!'); | ||
680 | + return false; // 取消文件上传 | ||
681 | + } | ||
682 | + return true; // 允许上传 | ||
683 | + | ||
684 | + }, | ||
685 | + uploadFile({ file, onSuccess, onError }){ | ||
686 | + // 生成 FormData 对象 | ||
687 | + const formData = new FormData(); | ||
688 | + formData.append('file', file); | ||
689 | + batchJZImport(formData).then((response) => { | ||
690 | + const res = response.data | ||
691 | + if (res.code !== '200') { | ||
692 | + return this.$message.error(res.msg); | ||
693 | + } | ||
694 | + this.$message.success(res.msg); | ||
695 | + this.selectList(); | ||
696 | + onSuccess(response.data); // 调用 onSuccess 回调通知上传成功 | ||
697 | + }).catch(error => { | ||
698 | + // 关闭加载 | ||
699 | + this.$message.error(error.toString()) | ||
700 | + onError(error); // 调用 onError 回调通知上传失败 | ||
701 | + }) | ||
702 | + }, | ||
703 | + addBillperson(){ | ||
704 | + this.dialogFormVisible = true; | ||
705 | + }, | ||
706 | + addRow(formName) { | ||
707 | + this.$refs[formName].validate((valid) => { | ||
708 | + if (valid) { | ||
709 | + const newMember = { | ||
710 | + autoId: this.tableChldren.length > 0 ? this.tableChldren[this.tableChldren.length - 1].autoId + 1 : 1, | ||
711 | + name: this.billperson.name, | ||
712 | + gender: this.billperson.gender, | ||
713 | + nationality: this.billperson.nationality, | ||
714 | + gareer: this.billperson.gareer, | ||
715 | + certType: this.billperson.certType, | ||
716 | + ceterNo: this.billperson.ceterNo, | ||
717 | + meno:this.billperson.meno, | ||
718 | + createTime: '', // Use JavaScript Date object | ||
719 | + createBy: '', | ||
720 | + updateTime: '', // Use JavaScript Date object | ||
721 | + updateBy: '', | ||
722 | + isDelete: '0', | ||
723 | + billsId: '' | ||
724 | + }; | ||
725 | + this.tableChldren.push(newMember); | ||
726 | + this.resetForm(); | ||
727 | + this.dialogFormVisible = false; | ||
728 | + } else { | ||
729 | + return false; | ||
730 | + } | ||
731 | + }); | ||
732 | + }, | ||
733 | + resetForm() { | ||
734 | + this.billperson.name = ''; | ||
735 | + this.billperson.gender = ''; | ||
736 | + this.billperson.nationality = ''; | ||
737 | + this.billperson.gareer = ''; | ||
738 | + this.billperson.certType = ''; | ||
739 | + this.billperson.ceterNo = ''; | ||
740 | + }, | ||
741 | + deleteRow(index, rows) { | ||
742 | + rows.splice(index, 1); | ||
743 | + }, | ||
744 | + //暂存新增 | ||
745 | + createData(formName){ | ||
746 | + this.$refs[formName].validate((valid) => { | ||
747 | + if (valid) { | ||
748 | + this.form.departuredatetime=this.form.arrivaldatetime; | ||
749 | + this.form.departureAirport=this.form.arrivalAirport; | ||
750 | + insertSelectiveBill(this.form).then(res =>{ | ||
751 | + let response=res.data; | ||
752 | + if(response.code=='200'){ | ||
753 | + this.dialogVisible=false; | ||
754 | + this.$message.success(response.msg); | ||
755 | + this.getList(); | ||
756 | + }else{ | ||
757 | + this.$message.error(response.msg) | ||
758 | + } | ||
759 | + }); | ||
760 | + } else { | ||
761 | + return false; | ||
762 | + } | ||
763 | + }); | ||
764 | + }, | ||
765 | + //暂存更新 | ||
766 | + updateData(formName){ | ||
767 | + this.$refs[formName].validate((valid) => { | ||
768 | + if (valid) { | ||
769 | + this.form.departuredatetime=this.form.arrivaldatetime; | ||
770 | + this.form.departureAirport=this.form.arrivalAirport; | ||
771 | + updateByPrimaryKeySelectiveBill(this.form).then(res =>{ | ||
772 | + let response=res.data; | ||
773 | + if(response.code=='200'){ | ||
774 | + this.dialogVisible=false; | ||
775 | + Object.assign(this.$data, this.$options.data()); | ||
776 | + this.$message.success(response.msg); | ||
777 | + this.getList(); | ||
778 | + }else{ | ||
779 | + this.$message.error(response.msg) | ||
780 | + } | ||
781 | + }); | ||
782 | + } else { | ||
783 | + return false; | ||
784 | + } | ||
785 | + }); | ||
786 | + }, | ||
787 | + selectList(){ | ||
788 | + if(this.flightdate !== null && this.flightdate !== ""){ | ||
789 | + this.query.starttime = this.flightdate[0]; | ||
790 | + this.query.endtime = this.flightdate[1]; | ||
791 | + }else{ | ||
792 | + return this.$message.error('请选取时间区间') | ||
793 | + } | ||
794 | + selectBillLists(this.query).then((response) => { | ||
795 | + const res = response.data | ||
796 | + if (res.code !== '200') { | ||
797 | + this.loading = false; | ||
798 | + return this.$message.error('获取消息收发记录,失败!') | ||
799 | + } | ||
800 | + // 获取列表数据 | ||
801 | + this.tableData = res.data.list | ||
802 | + //this.expandedRowKeys = this.tableData.map(item => item.uuid); | ||
803 | + // 获取列表的总记录数 | ||
804 | + this.total = res.data.total | ||
805 | + this.loading = false; | ||
806 | + this.$message.success('获取消息收发记录,成功!'); | ||
807 | + }).catch(error => { | ||
808 | + // 关闭加载 | ||
809 | + this.$message.error(error.toString()) | ||
810 | + }) | ||
811 | + }, | ||
812 | + addForm(){ | ||
813 | + this.dialogVisible=true; | ||
814 | + this.dialogStatus='create'; | ||
815 | + this.form={ | ||
816 | + uuid: '', | ||
817 | + aircraftNo: '', | ||
818 | + flightNo: '', | ||
819 | + flightDate: '', // Use JavaScript Date object | ||
820 | + accessFlag: 'A', | ||
821 | + departureAirport: '', | ||
822 | + departuredatetime: '', // Use JavaScript Date object | ||
823 | + departureno: '', | ||
824 | + arrivalAirport: '', | ||
825 | + arrivaldatetime: '', // Use JavaScript Date object | ||
826 | + arrivalno: '', | ||
827 | + aircrewSum: 0, | ||
828 | + interPassengerSum: 0, | ||
829 | + localePassengerSum: 0, | ||
830 | + interBaggageNum: 0, | ||
831 | + localeBaggageNum: 0, | ||
832 | + goodsNum: 0, | ||
833 | + goodsQuantity: 0, | ||
834 | + cargoBillNum: 0, | ||
835 | + passengerPage: 0, | ||
836 | + aircrewBillNum: 0, | ||
837 | + aircrewCargoBillNum: 0, | ||
838 | + arrivalPosition: '', | ||
839 | + bussinessType: '', | ||
840 | + messageid: '', | ||
841 | + status: '', | ||
842 | + statusMsg: '', | ||
843 | + meno: '', | ||
844 | + createTime: '', // Use JavaScript Date object | ||
845 | + createBy: '', | ||
846 | + updateTime: '', // Use JavaScript Date object | ||
847 | + updateBy: '', | ||
848 | + isDelete: '', | ||
849 | + remark: 'F', | ||
850 | + remark1: 'F', | ||
851 | + remark2: 'F', | ||
852 | + remark3: 'F', | ||
853 | + billpersonList: [] // Array of objects that represent the AIR_BILLPERSON model | ||
854 | + }; | ||
855 | + this.tableChldren=this.form.billpersonList; | ||
856 | + }, | ||
857 | + ediForm(row){ | ||
858 | + this.dialogVisible=true; | ||
859 | + this.dialogStatus='update'; | ||
860 | + this.form=row; | ||
861 | + this.tableChldren=row.billpersonList; | ||
862 | + }, | ||
863 | + sendstying(row,FunctionCode){ | ||
864 | + const params = { | ||
865 | + row: row, | ||
866 | + FunctionCode: FunctionCode | ||
867 | + }; | ||
868 | + sendBillSdeclare(params).then(res =>{ | ||
869 | + let response=res.data; | ||
870 | + if(response.code=='200'){ | ||
871 | + this.selectList(); | ||
872 | + this.$message.success(response.msg) | ||
873 | + }else{ | ||
874 | + this.$message.error(response.msg) | ||
875 | + } | ||
876 | + }); | ||
877 | + }, | ||
878 | + formatType: function(row,column){ | ||
879 | + return row.certType=='06'?'一次有效台湾居民来往大陆通行证':row.certType=='11'?'外交护照':row.certType=='12'?'公务护照' | ||
880 | + :row.certType=='13'?'因公普通护照':row.certType=='14'?'普通护照':row.certType=='15'?'中华人民共和国旅行证' | ||
881 | + :row.certType=='16'?'五年有效台湾居民往来大陆通行证':row.certType=='17'?'海员证':row.certType=='20'?'中华人民共和国出入境通行证' | ||
882 | + :row.certType=='21'?'前往港澳通行证(16页,多次有效)':row.certType=='22'?'前往港澳通行证(8页,一次有效)' | ||
883 | + :row.certType=='23'?'前往港澳通行证':row.certType=='24'?'港澳同胞回乡证或港澳居民来往内地通行证' | ||
884 | + :row.certType=='25'?'大陆居民来往台湾通行证':row.certType=='30'?'外国人出入境通行证':row.certType=='38'?'中华人民共和国回国证明' | ||
885 | + :row.certType=='70'?'香港特别行政区护照':row.certType=='71'?'澳门特别行政区护照' | ||
886 | + :row.certType=='72'?'因公往来香港澳门特别行政区通行证(官员)' | ||
887 | + :row.certType=='73'?'因公往来香港澳门特别行政区通行证(普通)':row.certType=='74'?'中华人民共和国居民身份证':row.certType=='75'?'其他证件' | ||
888 | + :row.certType=='98'?'其他因私证件(包括联合国通行证等)' | ||
889 | + :row.certType=='99'?'其他因私证件(包括难民证等)':''; | ||
890 | + }, | ||
891 | + handleSizeChange(val) { | ||
892 | + this.query.pageSize=val; | ||
893 | + this.selectList(); | ||
894 | + }, | ||
895 | + handleCurrentChange(val) { | ||
896 | + this.query.pageNum=val; | ||
897 | + this.selectList(); | ||
898 | + }, | ||
899 | + //查询回执列表 | ||
900 | + returnlist(row){ | ||
901 | + this.gridData=[]; | ||
902 | + let params={messageid:row.messageid}; | ||
903 | + selectReturnMsgList(params).then(res=>{ | ||
904 | + let response=res.data.data; | ||
905 | + this.gridData=response; | ||
906 | + }); | ||
907 | + this.returnVisible=true; | ||
908 | + }, | ||
909 | + handleClose() { | ||
910 | + this.returnVisible=false; | ||
911 | + }, | ||
912 | + //获取关区代码 | ||
913 | + getCustomCode:function(query){ | ||
914 | + this.customcodes=[]; | ||
915 | + let params={customcode:query}; | ||
916 | + this.loading = true; | ||
917 | + selectBycustomcode(params).then(res =>{ | ||
918 | + if (res !== '') { | ||
919 | + setTimeout(() => { | ||
920 | + this.loading = false; | ||
921 | + this.customcodes=res.data.data; | ||
922 | + }, 200); | ||
923 | + } else { | ||
924 | + this.customcodes = []; | ||
925 | + } | ||
926 | + | ||
927 | + }); | ||
928 | + }, | ||
929 | + //获取机场代码 | ||
930 | + getAirportCode:function(query){ | ||
931 | + this.airportcodes=[]; | ||
932 | + let params={airportid:query}; | ||
933 | + this.loading = true; | ||
934 | + selectByairportcode(params).then(res =>{ | ||
935 | + if (res !== '') { | ||
936 | + setTimeout(() => { | ||
937 | + this.loading = false; | ||
938 | + this.airportcodes=res.data.data; | ||
939 | + }, 200); | ||
940 | + } else { | ||
941 | + this.airportcodes = []; | ||
942 | + } | ||
943 | + | ||
944 | + }); | ||
945 | + }, | ||
946 | + /*获取国籍*/ | ||
947 | + getCountry:function(query){ | ||
948 | + this.countryOptions=[]; | ||
949 | + let params={countryid:query}; | ||
950 | + this.loading = true; | ||
951 | + selectCountry(params).then(res =>{ | ||
952 | + if (res!=null) { | ||
953 | + console.log(res.data.data) | ||
954 | + setTimeout(() => { | ||
955 | + this.loading = false; | ||
956 | + this.countryOptions=res.data.data; | ||
957 | + }, 200); | ||
958 | + } else { | ||
959 | + this.countryOptions = []; | ||
960 | + } | ||
961 | + | ||
962 | + }); | ||
963 | + }, | ||
964 | + selectChange:function(val){ | ||
965 | + console.log(val) | ||
966 | + this.$emit('tellFarther',val); | ||
967 | + }, | ||
968 | + /*获取证件*/ | ||
969 | + getCreden:function(query){ | ||
970 | + this.certOptions=[]; | ||
971 | + let params={serialno:query}; | ||
972 | + this.loading = true; | ||
973 | + selectCreden(params).then(res =>{ | ||
974 | + if (res!=null) { | ||
975 | + console.log(res.data.data) | ||
976 | + setTimeout(() => { | ||
977 | + this.loading = false; | ||
978 | + this.certOptions=res.data.data; | ||
979 | + }, 200); | ||
980 | + } else { | ||
981 | + this.certOptions = []; | ||
982 | + } | ||
983 | + | ||
984 | + }); | ||
985 | + }, | ||
986 | + }, | ||
987 | + mounted() { | ||
988 | + this.expandedRowKeys = this.tableData.map(item => item.uuid); | ||
989 | + } | ||
990 | + } | ||
991 | +</script> |
@@ -195,11 +195,12 @@ | @@ -195,11 +195,12 @@ | ||
195 | addConfirm(this.declare).then(res=>{ | 195 | addConfirm(this.declare).then(res=>{ |
196 | let response=res.data; | 196 | let response=res.data; |
197 | if(response.code=='200'){ | 197 | if(response.code=='200'){ |
198 | - this.centerDialogVisible=true; | ||
199 | - this.msg=response.msg; | 198 | + //this.centerDialogVisible=true; |
199 | + //this.msg=response.msg; | ||
200 | + this.$message.success(response.msg) | ||
200 | this.$router.push({path:'/queryDeclare',query:{flightNo:this.declare.flightNo,flightDate:this.declare.flightDate}}); | 201 | this.$router.push({path:'/queryDeclare',query:{flightNo:this.declare.flightNo,flightDate:this.declare.flightDate}}); |
201 | }else{ | 202 | }else{ |
202 | - this.msg=response.msg; | 203 | + this.$message.error(response.msg) |
203 | } | 204 | } |
204 | }); | 205 | }); |
205 | } else { | 206 | } else { |
@@ -216,11 +217,12 @@ | @@ -216,11 +217,12 @@ | ||
216 | sendConfirmOut(this.declare).then(res=>{ | 217 | sendConfirmOut(this.declare).then(res=>{ |
217 | let response=res.data; | 218 | let response=res.data; |
218 | if(response.code=='200'){ | 219 | if(response.code=='200'){ |
219 | - this.centerDialogVisible=true; | ||
220 | - this.msg=response.msg; | 220 | + //this.centerDialogVisible=true; |
221 | + //this.msg=response.msg; | ||
222 | + this.$message.success(response.msg) | ||
221 | this.$router.push({path:'/queryDeclare',query:{flightNo:this.declare.flightNo,flightDate:this.declare.flightDate}}); | 223 | this.$router.push({path:'/queryDeclare',query:{flightNo:this.declare.flightNo,flightDate:this.declare.flightDate}}); |
222 | }else{ | 224 | }else{ |
223 | - this.msg=response.msg; | 225 | + this.$message.error(response.msg) |
224 | } | 226 | } |
225 | }); | 227 | }); |
226 | } else { | 228 | } else { |
@@ -240,7 +242,7 @@ | @@ -240,7 +242,7 @@ | ||
240 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 242 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
241 | } | 243 | } |
242 | }, | 244 | }, |
243 | - mounted(){ | 245 | + activated(){ |
244 | this.defaultData(); | 246 | this.defaultData(); |
245 | } | 247 | } |
246 | } | 248 | } |
@@ -216,11 +216,13 @@ | @@ -216,11 +216,13 @@ | ||
216 | addPrediction(this.departure).then(res=>{ | 216 | addPrediction(this.departure).then(res=>{ |
217 | let response=res.data; | 217 | let response=res.data; |
218 | if(response.code=='200'){ | 218 | if(response.code=='200'){ |
219 | - this.centerDialogVisible=true; | ||
220 | - this.msg=response.msg; | 219 | + //this.centerDialogVisible=true; |
220 | + //this.msg=response.msg; | ||
221 | + this.$message.success(response.msg) | ||
221 | this.$router.push({path:'/queryDeparture',query:{flightNo:this.departure.flightNo,flightDate:this.departure.flightDate}}); | 222 | this.$router.push({path:'/queryDeparture',query:{flightNo:this.departure.flightNo,flightDate:this.departure.flightDate}}); |
222 | }else{ | 223 | }else{ |
223 | - this.msg=response.msg; | 224 | + //this.msg=response.msg; |
225 | + this.$message.error(response.msg) | ||
224 | } | 226 | } |
225 | }); | 227 | }); |
226 | } else { | 228 | } else { |
@@ -238,11 +240,12 @@ | @@ -238,11 +240,12 @@ | ||
238 | sendPredictionOut(this.departure).then(res=>{ | 240 | sendPredictionOut(this.departure).then(res=>{ |
239 | let response=res.data; | 241 | let response=res.data; |
240 | if(response.code=='200'){ | 242 | if(response.code=='200'){ |
241 | - this.centerDialogVisible=true; | ||
242 | - this.msg=response.msg; | 243 | + //this.centerDialogVisible=true; |
244 | + //this.msg=response.msg; | ||
245 | + this.$message.success(response.msg) | ||
243 | this.$router.push({path:'/queryDeparture',query:{flightNo:this.departure.flightNo,flightDate:this.departure.flightDate}}); | 246 | this.$router.push({path:'/queryDeparture',query:{flightNo:this.departure.flightNo,flightDate:this.departure.flightDate}}); |
244 | }else{ | 247 | }else{ |
245 | - this.msg=response.msg; | 248 | + this.$message.error(response.msg) |
246 | } | 249 | } |
247 | }); | 250 | }); |
248 | } else { | 251 | } else { |
@@ -262,7 +265,7 @@ | @@ -262,7 +265,7 @@ | ||
262 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 265 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
263 | } | 266 | } |
264 | }, | 267 | }, |
265 | - mounted(){ | 268 | + activated(){ |
266 | this.defaultData(); | 269 | this.defaultData(); |
267 | } | 270 | } |
268 | } | 271 | } |
@@ -240,7 +240,7 @@ | @@ -240,7 +240,7 @@ | ||
240 | <el-col :span="24"> | 240 | <el-col :span="24"> |
241 | <el-form-item> | 241 | <el-form-item> |
242 | <el-button size="small" style="margin-left: 500px;width: 100px" type="info" @click="trans_dialog.addDialog = false">取消</el-button> | 242 | <el-button size="small" style="margin-left: 500px;width: 100px" type="info" @click="trans_dialog.addDialog = false">取消</el-button> |
243 | - <el-button type="primary" size="small" style="margin-left: 20px;width: 100px" @click="dialogStatus==='create'?trans_add():trans_edit()">提交</el-button> | 243 | + <el-button type="primary" size="small" style="margin-left: 20px;width: 100px" @click="dialogStatus==='create'?trans_add('form'):trans_edit('form')">提交</el-button> |
244 | </el-form-item> | 244 | </el-form-item> |
245 | </el-col> | 245 | </el-col> |
246 | </el-row> | 246 | </el-row> |
@@ -392,8 +392,8 @@ | @@ -392,8 +392,8 @@ | ||
392 | }, | 392 | }, |
393 | 393 | ||
394 | // 新增功能 | 394 | // 新增功能 |
395 | - trans_add() { // 进行表单的预验证 | ||
396 | - this.$refs.form.validate(valid => { | 395 | + trans_add(formName) { // 进行表单的预验证 |
396 | + this.$refs[formName].validate((valid) => { | ||
397 | // 未通过,表单预校验 | 397 | // 未通过,表单预校验 |
398 | if (!valid) return | 398 | if (!valid) return |
399 | addAircraftStaying(this.form).then((response) => { | 399 | addAircraftStaying(this.form).then((response) => { |
@@ -423,9 +423,9 @@ | @@ -423,9 +423,9 @@ | ||
423 | }) | 423 | }) |
424 | }, | 424 | }, |
425 | // 编辑功能 | 425 | // 编辑功能 |
426 | - trans_edit() { | 426 | + trans_edit(formName) { |
427 | // 进行表单的预验证 | 427 | // 进行表单的预验证 |
428 | - this.$refs.form.validate(valid => { | 428 | + this.$refs[formName].validate((valid) => { |
429 | // 未通过,表单预校验 | 429 | // 未通过,表单预校验 |
430 | if (!valid) return | 430 | if (!valid) return |
431 | addAircraftStaying(this.form).then((response) => { | 431 | addAircraftStaying(this.form).then((response) => { |
@@ -435,13 +435,15 @@ | @@ -435,13 +435,15 @@ | ||
435 | addFlight(this.flight).then(res=>{ | 435 | addFlight(this.flight).then(res=>{ |
436 | let response=res.data; | 436 | let response=res.data; |
437 | if(response.code=='200'){ | 437 | if(response.code=='200'){ |
438 | - this.centerDialogVisible=true; | ||
439 | - this.msg=response.msg; | 438 | + //this.centerDialogVisible=true; |
439 | + //this.msg=response.msg; | ||
440 | this.$router.push({path:'/queryFlights',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate}}); | 440 | this.$router.push({path:'/queryFlights',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate}}); |
441 | - this.centerDialogVisible=false; | 441 | + //this.centerDialogVisible=false; |
442 | + this.$message.success(response.msg) | ||
442 | }else{ | 443 | }else{ |
443 | - this.centerDialogVisible=true; | ||
444 | - this.msg=response.msg; | 444 | + //this.centerDialogVisible=true; |
445 | + //this.msg=response.msg; | ||
446 | + this.$message.error(response.msg) | ||
445 | } | 447 | } |
446 | }); | 448 | }); |
447 | } else { | 449 | } else { |
@@ -457,13 +459,15 @@ | @@ -457,13 +459,15 @@ | ||
457 | sendFlight(this.flight).then(res=>{ | 459 | sendFlight(this.flight).then(res=>{ |
458 | let response=res.data; | 460 | let response=res.data; |
459 | if(response.code=='200'){ | 461 | if(response.code=='200'){ |
460 | - this.centerDialogVisible=true; | ||
461 | - this.msg=response.msg; | 462 | + //this.centerDialogVisible=true; |
463 | + //this.msg=response.msg; | ||
462 | this.$router.push({path:'/queryFlights',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate}}); | 464 | this.$router.push({path:'/queryFlights',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate}}); |
463 | - this.centerDialogVisible=false; | 465 | + //this.centerDialogVisible=false; |
466 | + this.$message.success(response.msg) | ||
464 | }else{ | 467 | }else{ |
465 | - this.centerDialogVisible=true; | ||
466 | - this.msg=response.msg; | 468 | + //this.centerDialogVisible=true; |
469 | + //this.msg=response.msg; | ||
470 | + this.$message.error(response.msg) | ||
467 | } | 471 | } |
468 | }); | 472 | }); |
469 | } else { | 473 | } else { |
@@ -505,7 +509,7 @@ | @@ -505,7 +509,7 @@ | ||
505 | } | 509 | } |
506 | }, | 510 | }, |
507 | //渲染方法 | 511 | //渲染方法 |
508 | - mounted(){ | 512 | + activated(){ |
509 | this.defaultData(); | 513 | this.defaultData(); |
510 | } | 514 | } |
511 | } | 515 | } |
@@ -257,9 +257,10 @@ | @@ -257,9 +257,10 @@ | ||
257 | addFlightPlan(this.flight).then(res=>{ | 257 | addFlightPlan(this.flight).then(res=>{ |
258 | let response=res.data; | 258 | let response=res.data; |
259 | if(response.code=='200'){ | 259 | if(response.code=='200'){ |
260 | - this.centerDialogVisible=true; | ||
261 | - this.msg=response.msg; | 260 | + //this.centerDialogVisible=true; |
261 | + //this.msg=response.msg; | ||
262 | this.$router.push({path:'/queryFlightplan',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate,aircraftNo:this.flight.aircraftNo}}); | 262 | this.$router.push({path:'/queryFlightplan',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate,aircraftNo:this.flight.aircraftNo}}); |
263 | + this.$message.success(response.msg) | ||
263 | }else{ | 264 | }else{ |
264 | this.msg=response.msg; | 265 | this.msg=response.msg; |
265 | } | 266 | } |
@@ -277,9 +278,10 @@ | @@ -277,9 +278,10 @@ | ||
277 | sendFlightPlan(this.flight).then(res=>{ | 278 | sendFlightPlan(this.flight).then(res=>{ |
278 | let response=res.data; | 279 | let response=res.data; |
279 | if(response.code=='200'){ | 280 | if(response.code=='200'){ |
280 | - this.centerDialogVisible=true; | ||
281 | - this.msg=response.msg; | 281 | + //this.centerDialogVisible=true; |
282 | + // this.msg=response.msg; | ||
282 | this.$router.push({path:'/queryFlightplan',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate,aircraftNo:this.flight.aircraftNo}}); | 283 | this.$router.push({path:'/queryFlightplan',query:{flightNo:this.flight.flightNo,flightDate:this.flight.flightDate,aircraftNo:this.flight.aircraftNo}}); |
284 | + this.$message.success(response.msg) | ||
283 | }else{ | 285 | }else{ |
284 | this.msg=response.msg; | 286 | this.msg=response.msg; |
285 | } | 287 | } |
@@ -304,7 +306,7 @@ | @@ -304,7 +306,7 @@ | ||
304 | }, | 306 | }, |
305 | }, | 307 | }, |
306 | 308 | ||
307 | - mounted(){ | 309 | + activated(){ |
308 | this.defaultData(); | 310 | this.defaultData(); |
309 | } | 311 | } |
310 | } | 312 | } |
src/views/airtransport/gongtui.vue
0 → 100644
1 | +<template> | ||
2 | + <el-row :gutter="20"> | ||
3 | + <el-col :span="6"><div class="grid-content bg-purple"></div></el-col> | ||
4 | + <el-col :span="6"><div class="grid-content bg-purple"></div></el-col> | ||
5 | + <el-col :span="6"><div class="grid-content bg-purple"></div></el-col> | ||
6 | + <el-col :span="6"><div class="grid-content bg-purple"></div></el-col> | ||
7 | + </el-row> | ||
8 | +</template> | ||
9 | +<script> | ||
10 | + export default { | ||
11 | + data(){ | ||
12 | + return{ | ||
13 | + | ||
14 | + } | ||
15 | + }, | ||
16 | + methods:{} | ||
17 | + } | ||
18 | +</script> |
@@ -14,8 +14,8 @@ | @@ -14,8 +14,8 @@ | ||
14 | </el-form-item> | 14 | </el-form-item> |
15 | </el-col> | 15 | </el-col> |
16 | <el-col :span="8"> | 16 | <el-col :span="8"> |
17 | - <el-form-item label="进出标识" prop="ietype" label-width="120px"> | ||
18 | - <el-select v-model="outConfigure.ietype" placeholder="" style="display:inline"> | 17 | + <el-form-item label="进出标识" prop="ieType" label-width="120px"> |
18 | + <el-select v-model="outConfigure.ieType" placeholder="" style="display:inline"> | ||
19 | <el-option v-for="item in linesTypes" :key="item.value" :label="item.label" | 19 | <el-option v-for="item in linesTypes" :key="item.value" :label="item.label" |
20 | :value="item.value"></el-option> | 20 | :value="item.value"></el-option> |
21 | </el-select> | 21 | </el-select> |
@@ -78,7 +78,7 @@ | @@ -78,7 +78,7 @@ | ||
78 | outConfigure:{ | 78 | outConfigure:{ |
79 | username:loginUserInfo.username, | 79 | username:loginUserInfo.username, |
80 | flightNo:undefined, | 80 | flightNo:undefined, |
81 | - ietype:'1', | 81 | + ieType:'2', |
82 | reamrk:undefined, | 82 | reamrk:undefined, |
83 | // accessFlag:'2', | 83 | // accessFlag:'2', |
84 | createBy:loginUserInfo.username, | 84 | createBy:loginUserInfo.username, |
@@ -88,7 +88,7 @@ | @@ -88,7 +88,7 @@ | ||
88 | flightNo: [ | 88 | flightNo: [ |
89 | {required: true, message: '请输入', trigger: 'blur'} | 89 | {required: true, message: '请输入', trigger: 'blur'} |
90 | ], | 90 | ], |
91 | - ietype: [ | 91 | + ieType: [ |
92 | {required: true, message: '请选择', trigger: 'change'} | 92 | {required: true, message: '请选择', trigger: 'change'} |
93 | ], | 93 | ], |
94 | }, | 94 | }, |
@@ -113,11 +113,12 @@ | @@ -113,11 +113,12 @@ | ||
113 | addSchedule(this.outConfigure).then(res=>{ | 113 | addSchedule(this.outConfigure).then(res=>{ |
114 | let response=res.data; | 114 | let response=res.data; |
115 | if(response.code=='200'){ | 115 | if(response.code=='200'){ |
116 | - this.centerDialogVisible=true; | ||
117 | - this.msg=response.msg; | 116 | + //this.centerDialogVisible=true; |
117 | + //this.msg=response.msg; | ||
118 | + this.$message.success(response.msg) | ||
118 | this.$router.push({path:'/queryFlightConfigure',query:{flightNo:this.outConfigure.flightNo}}); | 119 | this.$router.push({path:'/queryFlightConfigure',query:{flightNo:this.outConfigure.flightNo}}); |
119 | }else{ | 120 | }else{ |
120 | - this.msg=response.msg; | 121 | + this.$message.error(response.msg) |
121 | } | 122 | } |
122 | }); | 123 | }); |
123 | } else { | 124 | } else { |
@@ -137,7 +138,7 @@ | @@ -137,7 +138,7 @@ | ||
137 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); | 138 | return e.replace(/[^a-zA-Z0-9.-]/g,'').toUpperCase(); |
138 | } | 139 | } |
139 | }, | 140 | }, |
140 | - mounted(){ | 141 | + activated(){ |
141 | this.defaultData(); | 142 | this.defaultData(); |
142 | } | 143 | } |
143 | } | 144 | } |
@@ -159,7 +159,6 @@ | @@ -159,7 +159,6 @@ | ||
159 | let params={messageid:row.messageid}; | 159 | let params={messageid:row.messageid}; |
160 | selectReturnMsg(params).then(res=>{ | 160 | selectReturnMsg(params).then(res=>{ |
161 | let response=res.data.data; | 161 | let response=res.data.data; |
162 | - console.log(response) | ||
163 | this.gridData=response; | 162 | this.gridData=response; |
164 | }); | 163 | }); |
165 | }, | 164 | }, |
@@ -174,7 +173,7 @@ | @@ -174,7 +173,7 @@ | ||
174 | //获取进港航班配置查询列表 | 173 | //获取进港航班配置查询列表 |
175 | submitForm() { | 174 | submitForm() { |
176 | let params = { | 175 | let params = { |
177 | - pageNum: this.pageNum, pageSize: this.pageSize, flightNo: this.queryConfigure.flightNo,ieType:'0' | 176 | + pageNum: this.pageNum, pageSize: this.pageSize, flightNo: this.queryConfigure.flightNo,ieType:'2' |
178 | }; | 177 | }; |
179 | this.tableloading = true; | 178 | this.tableloading = true; |
180 | selectSchedule(params).then(res => { | 179 | selectSchedule(params).then(res => { |
@@ -45,7 +45,7 @@ | @@ -45,7 +45,7 @@ | ||
45 | label="用户名"> | 45 | label="用户名"> |
46 | </el-table-column> | 46 | </el-table-column> |
47 | <el-table-column | 47 | <el-table-column |
48 | - prop="flightno" | 48 | + prop="flightNo" |
49 | label="航班号"> | 49 | label="航班号"> |
50 | </el-table-column> | 50 | </el-table-column> |
51 | <el-table-column | 51 | <el-table-column |
@@ -180,6 +180,7 @@ | @@ -180,6 +180,7 @@ | ||
180 | selectSchedule(params).then(res => { | 180 | selectSchedule(params).then(res => { |
181 | let response = res.data.data; | 181 | let response = res.data.data; |
182 | this.tableData = response.list; | 182 | this.tableData = response.list; |
183 | + console.log(response) | ||
183 | this.tableloading = false; | 184 | this.tableloading = false; |
184 | this.total = response.total; | 185 | this.total = response.total; |
185 | }); | 186 | }); |
@@ -11,19 +11,19 @@ | @@ -11,19 +11,19 @@ | ||
11 | <el-form :label-position="labelPosition" :model="queryConfigure" :rules="rules" ref="queryFlight" | 11 | <el-form :label-position="labelPosition" :model="queryConfigure" :rules="rules" ref="queryFlight" |
12 | label-width="130px" class="demo-ruleForm"> | 12 | label-width="130px" class="demo-ruleForm"> |
13 | <el-row> | 13 | <el-row> |
14 | - <el-col :span="5" style="margin-right: 70px"> | 14 | + <el-col :span="5"> |
15 | <el-form-item label="承运人" prop="awcd" label-width="70px"> | 15 | <el-form-item label="承运人" prop="awcd" label-width="70px"> |
16 | <el-input v-model="queryConfigure.awcd" style="width:120px"></el-input> | 16 | <el-input v-model="queryConfigure.awcd" style="width:120px"></el-input> |
17 | </el-form-item> | 17 | </el-form-item> |
18 | </el-col> | 18 | </el-col> |
19 | - <el-col :span="5" style="margin-right: 70px"> | 19 | + <el-col :span="5"> |
20 | <el-form-item label="航班号" prop="flightNo" label-width="70px"> | 20 | <el-form-item label="航班号" prop="flightNo" label-width="70px"> |
21 | <el-input v-model="queryConfigure.flightNo" style="width:120px"></el-input> | 21 | <el-input v-model="queryConfigure.flightNo" style="width:120px"></el-input> |
22 | </el-form-item> | 22 | </el-form-item> |
23 | </el-col> | 23 | </el-col> |
24 | <el-col :span="8" > | 24 | <el-col :span="8" > |
25 | - <el-button type="primary" icon="el-icon-search" @click="submitForm()">查询</el-button> | ||
26 | - <el-button type="success" icon="el-icon-edit" @click="addForm()">新增</el-button> | 25 | + <el-button type="primary" @click="submitForm()">查询</el-button> |
26 | + <el-button type="success" @click="addForm()">新增</el-button> | ||
27 | 27 | ||
28 | </el-col> | 28 | </el-col> |
29 | </el-row> | 29 | </el-row> |
@@ -36,32 +36,19 @@ | @@ -36,32 +36,19 @@ | ||
36 | :data="tableData" | 36 | :data="tableData" |
37 | border | 37 | border |
38 | v-loading="tableloading" style="margin-bottom: 20px;margin-top: 20px"> | 38 | v-loading="tableloading" style="margin-bottom: 20px;margin-top: 20px"> |
39 | - <el-table-column | 39 | + <!--<el-table-column |
40 | prop="awcd" | 40 | prop="awcd" |
41 | label="承运人"> | 41 | label="承运人"> |
42 | - </el-table-column> | 42 | + </el-table-column>--> |
43 | <el-table-column | 43 | <el-table-column |
44 | prop="flightNo" | 44 | prop="flightNo" |
45 | label="航班号"> | 45 | label="航班号"> |
46 | </el-table-column> | 46 | </el-table-column> |
47 | <el-table-column | 47 | <el-table-column |
48 | - prop="customscode" | ||
49 | - label="申报关区"> | ||
50 | - </el-table-column> | ||
51 | - <el-table-column | ||
52 | prop="aircraftNo" | 48 | prop="aircraftNo" |
53 | label="航空注册器编号"> | 49 | label="航空注册器编号"> |
54 | </el-table-column> | 50 | </el-table-column> |
55 | <el-table-column | 51 | <el-table-column |
56 | - prop="transportflag" | ||
57 | - label="航空器备案类型" | ||
58 | - show-overflow-tooltip> | ||
59 | - </el-table-column> | ||
60 | - <el-table-column | ||
61 | - prop="aircraftstand" | ||
62 | - label="停机位"> | ||
63 | - </el-table-column> | ||
64 | - <el-table-column | ||
65 | prop="departurePort" | 52 | prop="departurePort" |
66 | label="航班起始站"> | 53 | label="航班起始站"> |
67 | </el-table-column> | 54 | </el-table-column> |
@@ -70,16 +57,37 @@ | @@ -70,16 +57,37 @@ | ||
70 | label="航班目的站"> | 57 | label="航班目的站"> |
71 | </el-table-column> | 58 | </el-table-column> |
72 | <el-table-column | 59 | <el-table-column |
60 | + prop="customscode" | ||
61 | + label="申报关区"> | ||
62 | + </el-table-column> | ||
63 | + <el-table-column | ||
64 | + label="配置类型"> | ||
65 | + <template slot-scope="scope"> | ||
66 | + <span v-if="scope.row.type ==='2'">入境</span> | ||
67 | + <span v-if="scope.row.type ==='1'">出境</span> | ||
68 | + </template> | ||
69 | + </el-table-column> | ||
70 | + <!--<el-table-column | ||
71 | + prop="transportflag" | ||
72 | + label="航空器备案类型" | ||
73 | + show-overflow-tooltip> | ||
74 | + </el-table-column>--> | ||
75 | + <!--<el-table-column | ||
76 | + prop="aircraftstand" | ||
77 | + label="停机位"> | ||
78 | + </el-table-column>--> | ||
79 | + <el-table-column | ||
73 | prop="departuredatetime" | 80 | prop="departuredatetime" |
74 | label="预计出境时间"> | 81 | label="预计出境时间"> |
75 | </el-table-column> | 82 | </el-table-column> |
76 | <el-table-column | 83 | <el-table-column |
77 | prop="arrivaldatetime" | 84 | prop="arrivaldatetime" |
78 | label="预计入境时间"> | 85 | label="预计入境时间"> |
79 | - </el-table-column><el-table-column | 86 | + </el-table-column> |
87 | + <!--<el-table-column | ||
80 | prop="validtime" | 88 | prop="validtime" |
81 | label="配置生效到期日"> | 89 | label="配置生效到期日"> |
82 | - </el-table-column> | 90 | + </el-table-column>--> |
83 | <el-table-column | 91 | <el-table-column |
84 | label="配置状态"> | 92 | label="配置状态"> |
85 | <template slot-scope="scope"> | 93 | <template slot-scope="scope"> |
@@ -87,14 +95,8 @@ | @@ -87,14 +95,8 @@ | ||
87 | <span v-if="scope.row.status ==='1'">生效</span> | 95 | <span v-if="scope.row.status ==='1'">生效</span> |
88 | </template> | 96 | </template> |
89 | </el-table-column> | 97 | </el-table-column> |
90 | - <el-table-column | ||
91 | - label="配置类型"> | ||
92 | - <template slot-scope="scope"> | ||
93 | - <span v-if="scope.row.type ==='2'">入境</span> | ||
94 | - <span v-if="scope.row.type ==='1'">出境</span> | ||
95 | - </template> | ||
96 | - </el-table-column> | ||
97 | - <el-table-column | 98 | + |
99 | + <!--<el-table-column | ||
98 | prop="userid" | 100 | prop="userid" |
99 | label="创建人"> | 101 | label="创建人"> |
100 | </el-table-column> | 102 | </el-table-column> |
@@ -109,12 +111,12 @@ | @@ -109,12 +111,12 @@ | ||
109 | <el-table-column | 111 | <el-table-column |
110 | prop="meno" | 112 | prop="meno" |
111 | label="备注"> | 113 | label="备注"> |
112 | - </el-table-column> | 114 | + </el-table-column>--> |
113 | <el-table-column | 115 | <el-table-column |
114 | fixed="right" | 116 | fixed="right" |
115 | prop="" | 117 | prop="" |
116 | - label="报文操作" | ||
117 | - width="280"> | 118 | + label="信息操作" |
119 | + width="180"> | ||
118 | <template slot-scope="scope"> | 120 | <template slot-scope="scope"> |
119 | <el-button | 121 | <el-button |
120 | size="mini" | 122 | size="mini" |
@@ -174,9 +176,12 @@ | @@ -174,9 +176,12 @@ | ||
174 | <el-row> | 176 | <el-row> |
175 | <el-col :span="6"> | 177 | <el-col :span="6"> |
176 | <el-form-item label="航空器备案类型" prop="transportflag" label-width="140px"> | 178 | <el-form-item label="航空器备案类型" prop="transportflag" label-width="140px"> |
177 | - <el-input v-model="configure_addForm.transportflag" | ||
178 | - ></el-input> | 179 | + <el-select v-model="configure_addForm.transportflag" placeholder="请选择"> |
180 | + <el-option label="通用航空器" value="1"></el-option> | ||
181 | + <el-option label="航线航空器" value="2"></el-option> | ||
182 | + </el-select> | ||
179 | </el-form-item> | 183 | </el-form-item> |
184 | + | ||
180 | </el-col> | 185 | </el-col> |
181 | <el-col :span="6"> | 186 | <el-col :span="6"> |
182 | <el-form-item label="停机位" prop="aircraftstand" label-width="120px"> | 187 | <el-form-item label="停机位" prop="aircraftstand" label-width="120px"> |
@@ -201,8 +206,8 @@ | @@ -201,8 +206,8 @@ | ||
201 | v-model="configure_addForm.departuredatetime" | 206 | v-model="configure_addForm.departuredatetime" |
202 | type="datetime" | 207 | type="datetime" |
203 | placeholder="选择日期时间" | 208 | placeholder="选择日期时间" |
204 | - value-format="yyyyMMddhhmmss" | ||
205 | - format="yyyyMMddhhmmss" | 209 | + value-format="yyyy-MM-dd HH:mm:ss" |
210 | + format="yyyy-MM-dd HH:mm:ss" | ||
206 | style="width:100%"> | 211 | style="width:100%"> |
207 | </el-date-picker> | 212 | </el-date-picker> |
208 | </el-form-item> | 213 | </el-form-item> |
@@ -213,8 +218,8 @@ | @@ -213,8 +218,8 @@ | ||
213 | v-model="configure_addForm.arrivaldatetime" | 218 | v-model="configure_addForm.arrivaldatetime" |
214 | type="datetime" | 219 | type="datetime" |
215 | placeholder="选择日期时间" | 220 | placeholder="选择日期时间" |
216 | - value-format="yyyyMMddhhmmss" | ||
217 | - format="yyyyMMddhhmmss" | 221 | + value-format="yyyy-MM-dd HH:mm:ss" |
222 | + format="yyyy-MM-dd HH:mm:ss" | ||
218 | style="width:100%"> | 223 | style="width:100%"> |
219 | </el-date-picker> | 224 | </el-date-picker> |
220 | </el-form-item> | 225 | </el-form-item> |
@@ -225,18 +230,18 @@ | @@ -225,18 +230,18 @@ | ||
225 | v-model="configure_addForm.validtime" | 230 | v-model="configure_addForm.validtime" |
226 | type="datetime" | 231 | type="datetime" |
227 | placeholder="选择日期时间" | 232 | placeholder="选择日期时间" |
228 | - value-format="yyyyMMddhhmmss" | ||
229 | - format="yyyyMMddhhmmss" | 233 | + value-format="yyyy-MM-dd HH:mm:ss" |
234 | + format="yyyy-MM-dd HH:mm:ss" | ||
230 | style="width: 100%" | 235 | style="width: 100%" |
231 | :picker-options="pickerOptions"> | 236 | :picker-options="pickerOptions"> |
232 | </el-date-picker> | 237 | </el-date-picker> |
233 | </el-form-item> | 238 | </el-form-item> |
234 | </el-col> | 239 | </el-col> |
235 | - <el-col :span="6"> | 240 | + <!--<el-col :span="6"> |
236 | <el-form-item label="创建人" prop="userid" label-width="120px"> | 241 | <el-form-item label="创建人" prop="userid" label-width="120px"> |
237 | <el-input v-model="configure_addForm.userid"></el-input> | 242 | <el-input v-model="configure_addForm.userid"></el-input> |
238 | </el-form-item> | 243 | </el-form-item> |
239 | - </el-col> | 244 | + </el-col>--> |
240 | 245 | ||
241 | <el-col :span="6"> | 246 | <el-col :span="6"> |
242 | <el-form-item label="配置类型" prop="type" label-width="120px"> | 247 | <el-form-item label="配置类型" prop="type" label-width="120px"> |
@@ -256,7 +261,7 @@ | @@ -256,7 +261,7 @@ | ||
256 | </el-select> | 261 | </el-select> |
257 | </el-form-item> | 262 | </el-form-item> |
258 | </el-col> | 263 | </el-col> |
259 | - <el-col :span="6"> | 264 | + <!--<el-col :span="6"> |
260 | <el-form-item label="创建时间" prop="creatdate" label-width="120px"> | 265 | <el-form-item label="创建时间" prop="creatdate" label-width="120px"> |
261 | <el-date-picker | 266 | <el-date-picker |
262 | v-model="configure_addForm.creatdate" | 267 | v-model="configure_addForm.creatdate" |
@@ -281,9 +286,7 @@ | @@ -281,9 +286,7 @@ | ||
281 | :picker-options="pickerOptions"> | 286 | :picker-options="pickerOptions"> |
282 | </el-date-picker> | 287 | </el-date-picker> |
283 | </el-form-item> | 288 | </el-form-item> |
284 | - </el-col> | ||
285 | - </el-row> | ||
286 | - <el-row> | 289 | + </el-col>--> |
287 | <el-col :span="12"> | 290 | <el-col :span="12"> |
288 | <el-form-item label="星期日期" prop="schedule.options" label-width="120px"> | 291 | <el-form-item label="星期日期" prop="schedule.options" label-width="120px"> |
289 | <el-select v-model="configure_addForm.schedule.options" multiple placeholder="请选择(可多选)" style="width: 100%"> | 292 | <el-select v-model="configure_addForm.schedule.options" multiple placeholder="请选择(可多选)" style="width: 100%"> |
@@ -296,11 +299,6 @@ | @@ -296,11 +299,6 @@ | ||
296 | </el-select> | 299 | </el-select> |
297 | </el-form-item> | 300 | </el-form-item> |
298 | </el-col> | 301 | </el-col> |
299 | - <el-col :span="12"> | ||
300 | - <el-form-item label="备注" prop="meno" label-width="120px"> | ||
301 | - <el-input v-model="configure_addForm.meno"></el-input> | ||
302 | - </el-form-item> | ||
303 | - </el-col> | ||
304 | </el-row> | 302 | </el-row> |
305 | 303 | ||
306 | </el-form> | 304 | </el-form> |
@@ -377,15 +375,15 @@ | @@ -377,15 +375,15 @@ | ||
377 | flightNo:'', | 375 | flightNo:'', |
378 | customscode:'', | 376 | customscode:'', |
379 | aircraftNo:'', | 377 | aircraftNo:'', |
380 | - transportflag:'', | 378 | + transportflag:'1', |
381 | aircraftstand:'', | 379 | aircraftstand:'', |
382 | departurePort:'', | 380 | departurePort:'', |
383 | arrivalPort:'', | 381 | arrivalPort:'', |
384 | departuredatetime:'', | 382 | departuredatetime:'', |
385 | arrivaldatetime:'', | 383 | arrivaldatetime:'', |
386 | validtime:'', | 384 | validtime:'', |
387 | - status:'', | ||
388 | - type:'', | 385 | + status:'1', |
386 | + type:'2', | ||
389 | userid:'', | 387 | userid:'', |
390 | creatdate:'', | 388 | creatdate:'', |
391 | updatedate:'', | 389 | updatedate:'', |
@@ -454,21 +452,12 @@ | @@ -454,21 +452,12 @@ | ||
454 | validtime: [ | 452 | validtime: [ |
455 | { required: true, message: '请输入', trigger: 'change' } | 453 | { required: true, message: '请输入', trigger: 'change' } |
456 | ], | 454 | ], |
457 | - userid: [ | ||
458 | - { required: true, message: '请输入', trigger: 'change' } | ||
459 | - ], | ||
460 | type: [ | 455 | type: [ |
461 | { required: true, message: '请输入', trigger: 'change' } | 456 | { required: true, message: '请输入', trigger: 'change' } |
462 | ], | 457 | ], |
463 | status: [ | 458 | status: [ |
464 | { required: true, message: '请输入', trigger: 'change' } | 459 | { required: true, message: '请输入', trigger: 'change' } |
465 | ], | 460 | ], |
466 | - creatdate: [ | ||
467 | - { required: true, message: '请输入', trigger: 'change' } | ||
468 | - ], | ||
469 | - updatedate: [ | ||
470 | - { required: true, message: '请输入', trigger: 'change' } | ||
471 | - ], | ||
472 | 'schedule.options': [ | 461 | 'schedule.options': [ |
473 | { required: true, message: '请输入', trigger: 'change' } | 462 | { required: true, message: '请输入', trigger: 'change' } |
474 | ], | 463 | ], |
@@ -490,7 +479,6 @@ | @@ -490,7 +479,6 @@ | ||
490 | const _this = this | 479 | const _this = this |
491 | selectPrePlanConfig(this.queryConfigure).then((response) => { | 480 | selectPrePlanConfig(this.queryConfigure).then((response) => { |
492 | const res = response.data | 481 | const res = response.data |
493 | - console.log(response.data) | ||
494 | if (res.code !== '200') { | 482 | if (res.code !== '200') { |
495 | return _this.$message.error('获取消息收发记录,失败!') | 483 | return _this.$message.error('获取消息收发记录,失败!') |
496 | } | 484 | } |
@@ -519,7 +507,6 @@ | @@ -519,7 +507,6 @@ | ||
519 | this.$refs.configure_addForm.validate(valid => { | 507 | this.$refs.configure_addForm.validate(valid => { |
520 | // 未通过,表单预校验 | 508 | // 未通过,表单预校验 |
521 | if (!valid) return | 509 | if (!valid) return |
522 | - console.log(this.configure_addForm); | ||
523 | addPrePlanConfig(this.configure_addForm).then((response) => { | 510 | addPrePlanConfig(this.configure_addForm).then((response) => { |
524 | const res = response.data | 511 | const res = response.data |
525 | // 添加失败 | 512 | // 添加失败 |
@@ -541,7 +528,6 @@ | @@ -541,7 +528,6 @@ | ||
541 | // 打开编辑 | 528 | // 打开编辑 |
542 | handleEdit(index, row) { | 529 | handleEdit(index, row) { |
543 | this.configure_addForm = Object.assign({}, row); | 530 | this.configure_addForm = Object.assign({}, row); |
544 | - console.log(this.configure_addForm) | ||
545 | this.configure_addForm.schedule.options=[]; | 531 | this.configure_addForm.schedule.options=[]; |
546 | for(var obj in row.schedulelist){ | 532 | for(var obj in row.schedulelist){ |
547 | console.log(this.configure_addForm.schedule.options.push(row.schedulelist[obj]['weekday'])) | 533 | console.log(this.configure_addForm.schedule.options.push(row.schedulelist[obj]['weekday'])) |
@@ -109,7 +109,7 @@ | @@ -109,7 +109,7 @@ | ||
109 | </el-col> | 109 | </el-col> |
110 | <el-col :span="8" style="margin-left: 120px"> | 110 | <el-col :span="8" style="margin-left: 120px"> |
111 | <el-button type="primary" @click="submitForm('airline')">保 存</el-button> | 111 | <el-button type="primary" @click="submitForm('airline')">保 存</el-button> |
112 | - <el-button type="success">保存并发送</el-button> | 112 | + <!--<el-button type="success">保存并发送</el-button>--> |
113 | </el-col> | 113 | </el-col> |
114 | </el-form> | 114 | </el-form> |
115 | </el-row> | 115 | </el-row> |
@@ -296,13 +296,15 @@ | @@ -296,13 +296,15 @@ | ||
296 | addRoute(this.airline).then(res=>{ | 296 | addRoute(this.airline).then(res=>{ |
297 | let response=res.data; | 297 | let response=res.data; |
298 | if(response.code=='200'){ | 298 | if(response.code=='200'){ |
299 | - this.centerDialogVisible=true; | ||
300 | - this.msg=response.msg; | 299 | + //this.centerDialogVisible=true; |
300 | + //this.msg=response.msg; | ||
301 | this.$router.push({path:'/queryRoute',query:{serialNo:this.airline.serialNo}}); | 301 | this.$router.push({path:'/queryRoute',query:{serialNo:this.airline.serialNo}}); |
302 | - this.centerDialogVisible=false; | 302 | + //this.centerDialogVisible=false; |
303 | + this.$message.success(response.msg) | ||
303 | }else{ | 304 | }else{ |
304 | - this.centerDialogVisible=true; | ||
305 | - this.msg=response.msg; | 305 | + //this.centerDialogVisible=true; |
306 | + //this.msg=response.msg; | ||
307 | + this.$message.error(response.msg) | ||
306 | } | 308 | } |
307 | }); | 309 | }); |
308 | } else { | 310 | } else { |
@@ -346,7 +348,7 @@ | @@ -346,7 +348,7 @@ | ||
346 | }, | 348 | }, |
347 | 349 | ||
348 | //渲染方法 | 350 | //渲染方法 |
349 | - mounted(){ | 351 | + activated(){ |
350 | this.defaultData(); | 352 | this.defaultData(); |
351 | } | 353 | } |
352 | } | 354 | } |
@@ -279,11 +279,12 @@ | @@ -279,11 +279,12 @@ | ||
279 | addAirLineAircraft(this.aircraft).then(res=>{ | 279 | addAirLineAircraft(this.aircraft).then(res=>{ |
280 | let response=res.data; | 280 | let response=res.data; |
281 | if(response.code=='200'){ | 281 | if(response.code=='200'){ |
282 | - this.centerDialogVisible=true; | ||
283 | - this.msg=response.msg; | 282 | + //this.centerDialogVisible=true; |
283 | + //this.msg=response.msg; | ||
284 | this.$router.push({path:'/queryRouteaircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo},}); | 284 | this.$router.push({path:'/queryRouteaircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo},}); |
285 | + this.$message.success(response.msg) | ||
285 | }else{ | 286 | }else{ |
286 | - this.msg=response.msg; | 287 | + this.$message.error(response.msg) |
287 | } | 288 | } |
288 | }); | 289 | }); |
289 | } else { | 290 | } else { |
@@ -300,11 +301,12 @@ | @@ -300,11 +301,12 @@ | ||
300 | sendAirLineAircraft(this.aircraft).then(res=>{ | 301 | sendAirLineAircraft(this.aircraft).then(res=>{ |
301 | let response=res.data; | 302 | let response=res.data; |
302 | if(response.code=='200'){ | 303 | if(response.code=='200'){ |
303 | - this.centerDialogVisible=true; | ||
304 | - this.msg=response.msg; | 304 | + //this.centerDialogVisible=true; |
305 | + //this.msg=response.msg; | ||
305 | this.$router.push({path:'/queryRouteaircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo},}); | 306 | this.$router.push({path:'/queryRouteaircraft',query:{airwayCode:this.aircraft.airwayCode,aircraftNo:this.aircraft.aircraftNo},}); |
307 | + this.$message.success(response.msg) | ||
306 | }else{ | 308 | }else{ |
307 | - this.msg=response.msg; | 309 | + this.$message.error(response.msg) |
308 | } | 310 | } |
309 | }); | 311 | }); |
310 | } else { | 312 | } else { |
@@ -325,7 +327,7 @@ | @@ -325,7 +327,7 @@ | ||
325 | } | 327 | } |
326 | 328 | ||
327 | }, | 329 | }, |
328 | - mounted(){ | 330 | + activated(){ |
329 | this.defaultData(); | 331 | this.defaultData(); |
330 | } | 332 | } |
331 | } | 333 | } |
src/views/airtransport/yqdeclare.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <el-row :gutter="10"> | ||
4 | + <el-col :span="4"> | ||
5 | + <el-input | ||
6 | + placeholder="航空器注册编号" | ||
7 | + v-model="query.aircraftNo" | ||
8 | + size="medium" | ||
9 | + clearable> | ||
10 | + </el-input> | ||
11 | + </el-col> | ||
12 | + <el-col :span="4"> | ||
13 | + <el-input | ||
14 | + placeholder="进出境航班号" | ||
15 | + v-model="query.flightNo" | ||
16 | + size="medium" | ||
17 | + clearable> | ||
18 | + </el-input> | ||
19 | + </el-col> | ||
20 | + <el-col :span="8"> | ||
21 | + <div class="block"> | ||
22 | + <el-date-picker | ||
23 | + v-model="flightdate" | ||
24 | + type="daterange" | ||
25 | + :picker-options="pickerOptions" | ||
26 | + range-separator="至" | ||
27 | + start-placeholder="开始日期" | ||
28 | + end-placeholder="结束日期" | ||
29 | + value-format="yyyy-MM-dd" | ||
30 | + size="medium" | ||
31 | + align="right"> | ||
32 | + </el-date-picker> | ||
33 | + </div> | ||
34 | + </el-col> | ||
35 | + <el-col :span="6"> | ||
36 | + <el-select v-model="query.customDistrictNo" | ||
37 | + filterable | ||
38 | + allow-create | ||
39 | + default-first-option | ||
40 | + remote | ||
41 | + :remote-method="getCustomCode" | ||
42 | + size="medium" | ||
43 | + :loading="loading" placeholder="海关关区"> | ||
44 | + <el-option | ||
45 | + v-for="item in customcodes" | ||
46 | + :key="item.customcode" | ||
47 | + :label="item.customcode" | ||
48 | + :value="item.customcode"> | ||
49 | + <span style="float: left">{{ item.customcode }}</span> | ||
50 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.customname }}</span> | ||
51 | + </el-option> | ||
52 | + </el-select> | ||
53 | + </el-col> | ||
54 | + </el-row> | ||
55 | + <el-row :gutter="10"> | ||
56 | + <el-col :span="4"> | ||
57 | + <el-select v-model="query.accessFlag" size="medium" placeholder="请选择"> | ||
58 | + <el-option label="进境" value="0"></el-option> | ||
59 | + <el-option label="出境" value="1"></el-option> | ||
60 | + </el-select> | ||
61 | + </el-col> | ||
62 | + <el-col :span="4"> | ||
63 | + <el-select v-model="query.yqtype" size="medium" placeholder="请选择"> | ||
64 | + <el-option label="预报" value="Y"></el-option> | ||
65 | + <el-option label="确报" value="Q"></el-option> | ||
66 | + </el-select> | ||
67 | + </el-col> | ||
68 | + <el-col :span="2"> | ||
69 | + <el-button size="medium" type="primary" @click="selectList" plain>查询</el-button> | ||
70 | + </el-col> | ||
71 | + <el-col :span="2"> | ||
72 | + <el-button size="medium" type="success" @click="addForm()" plain>新增</el-button> | ||
73 | + </el-col> | ||
74 | + </el-row> | ||
75 | + <el-row :gutter="10"> | ||
76 | + <el-table | ||
77 | + :data="tableData" | ||
78 | + border | ||
79 | + style="width: 100%"> | ||
80 | + <el-table-column | ||
81 | + fixed="left" | ||
82 | + label="信息操作" | ||
83 | + width="100"> | ||
84 | + <template slot-scope="scope"> | ||
85 | + <el-button @click="handleClick(scope.row)" type="text" size="small">编辑</el-button> | ||
86 | + </template> | ||
87 | + </el-table-column> | ||
88 | + <el-table-column | ||
89 | + prop="messageid" | ||
90 | + label="编号" | ||
91 | + width="240"> | ||
92 | + </el-table-column> | ||
93 | + <el-table-column | ||
94 | + prop="aircraftNo" | ||
95 | + label="航空器注册编号" | ||
96 | + width="110"> | ||
97 | + </el-table-column> | ||
98 | + <el-table-column | ||
99 | + prop="flightNo" | ||
100 | + label="进出境航班号" | ||
101 | + width="120"> | ||
102 | + </el-table-column> | ||
103 | + <el-table-column | ||
104 | + prop="flightDate" | ||
105 | + label="航班日期" | ||
106 | + width="120"> | ||
107 | + </el-table-column> | ||
108 | + <el-table-column | ||
109 | + label="进出类型" | ||
110 | + width="120"> | ||
111 | + <template slot-scope="scope"> | ||
112 | + {{ scope.row.accessFlag === '0' ? '进境' : '出境' }} | ||
113 | + </template> | ||
114 | + </el-table-column> | ||
115 | + <el-table-column | ||
116 | + label="申报类型" | ||
117 | + width="120"> | ||
118 | + <template slot-scope="scope"> | ||
119 | + {{ scope.row.yqtype === 'Y' ? '预报' : '确报' }} | ||
120 | + </template> | ||
121 | + </el-table-column> | ||
122 | + <el-table-column | ||
123 | + label="进出境时间" | ||
124 | + width="120"> | ||
125 | + <template slot-scope="scope"> | ||
126 | + <span v-if="scope.row.accessFlag === '0'">{{ scope.row.arrivaldatetime }}</span> | ||
127 | + <span v-else>{{ scope.row.departuredatetime }}</span> | ||
128 | + </template> | ||
129 | + </el-table-column> | ||
130 | + <el-table-column | ||
131 | + prop="arrivalPort" | ||
132 | + label="目的港" | ||
133 | + width="120"> | ||
134 | + </el-table-column> | ||
135 | + <el-table-column | ||
136 | + prop="statusMsg" | ||
137 | + label="海关状态" | ||
138 | + width="120"> | ||
139 | + </el-table-column> | ||
140 | + <el-table-column | ||
141 | + fixed="right" | ||
142 | + label="操作" | ||
143 | + width="220"> | ||
144 | + <template slot-scope="scope"> | ||
145 | + <el-button @click="returnlist(scope.row)" type="text" size="small">查看</el-button> | ||
146 | + <el-button @click="sendpre(scope.row,2)" type="text" size="small">申报</el-button> | ||
147 | + <el-button @click="sendpre(scope.row,5)" type="text" size="small">修改</el-button> | ||
148 | + <el-button @click="sendpre(scope.row,3)" type="text" size="small">删除</el-button> | ||
149 | + <el-button @click="cancleSB(scope.row)" type="text" size="small">取消</el-button> | ||
150 | + </template> | ||
151 | + </el-table-column> | ||
152 | + </el-table> | ||
153 | + </el-row> | ||
154 | + <el-row :gutter="10"> | ||
155 | + <div class="block"> | ||
156 | + <el-pagination | ||
157 | + @size-change="handleSizeChange" | ||
158 | + @current-change="handleCurrentChange" | ||
159 | + :current-page="query.pageNum" | ||
160 | + :page-sizes="[100, 200, 300, 400]" | ||
161 | + :page-size="query.pageSize" | ||
162 | + layout="total, sizes, prev, pager, next, jumper" | ||
163 | + :total="total"> | ||
164 | + </el-pagination> | ||
165 | + </div> | ||
166 | + </el-row> | ||
167 | + <el-row> | ||
168 | + <el-dialog | ||
169 | + :title="'预确报信息'+textMap[dialogStatus]" | ||
170 | + :visible.sync="dialogVisible" | ||
171 | + width="80%" | ||
172 | + center> | ||
173 | + <el-form :model="form" :rules="rules" ref="form" label-width="130px"> | ||
174 | + <el-divider content-position="left"><span style="color: #1d8ce0">报给单位</span></el-divider> | ||
175 | + <el-row :gutter="20"> | ||
176 | + <el-col :span="6"> | ||
177 | + <el-form-item label="海关关区" prop="customDistrictNo"> | ||
178 | + <el-select v-model="form.customDistrictNo" | ||
179 | + filterable | ||
180 | + allow-create | ||
181 | + default-first-option | ||
182 | + remote | ||
183 | + :remote-method="getCustomCode2" | ||
184 | + :loading="loading" placeholder="请选择"> | ||
185 | + <el-option | ||
186 | + v-for="item in customcodes2" | ||
187 | + :key="item.customcode" | ||
188 | + :label="item.customcode" | ||
189 | + :value="item.customcode"> | ||
190 | + <span style="float: left">{{ item.customcode }}</span> | ||
191 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.customname }}</span> | ||
192 | + </el-option> | ||
193 | + </el-select> | ||
194 | + </el-form-item> | ||
195 | + </el-col> | ||
196 | + <el-col :span="6"> | ||
197 | + <el-form-item label="进出类型" prop="accessFlag"> | ||
198 | + <el-select v-model="form.accessFlag" placeholder="请选择"> | ||
199 | + <el-option label="进境" value="0"></el-option> | ||
200 | + <el-option label="出境" value="1"></el-option> | ||
201 | + </el-select> | ||
202 | + </el-form-item> | ||
203 | + </el-col> | ||
204 | + <el-col :span="6"> | ||
205 | + <el-form-item label="申报类型" prop="yqtype"> | ||
206 | + <el-select v-model="form.yqtype" placeholder="请选择"> | ||
207 | + <el-option label="预报" value="Y"></el-option> | ||
208 | + <el-option label="确报" value="Q"></el-option> | ||
209 | + </el-select> | ||
210 | + </el-form-item> | ||
211 | + </el-col> | ||
212 | + </el-row> | ||
213 | + <el-divider content-position="left"><span style="color: #1d8ce0">航空器信息</span></el-divider> | ||
214 | + <el-row :gutter="20"> | ||
215 | + <el-col :span="6"> | ||
216 | + <el-form-item label="航空器注册编号" prop="aircraftno"> | ||
217 | + <el-input v-model="form.aircraftNo"></el-input> | ||
218 | + </el-form-item> | ||
219 | + </el-col> | ||
220 | + <el-col :span="6"> | ||
221 | + <el-form-item label="注册海关关区" prop="costomcode"> | ||
222 | + <el-select v-model="form.costomcode" | ||
223 | + filterable | ||
224 | + allow-create | ||
225 | + default-first-option | ||
226 | + remote | ||
227 | + :remote-method="getCustomCode3" | ||
228 | + :loading="loading" placeholder="请选择"> | ||
229 | + <el-option | ||
230 | + v-for="item in customcodes3" | ||
231 | + :key="item.customcode" | ||
232 | + :label="item.customcode" | ||
233 | + :value="item.customcode"> | ||
234 | + <span style="float: left">{{ item.customcode }}</span> | ||
235 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.customname }}</span> | ||
236 | + </el-option> | ||
237 | + </el-select> | ||
238 | + </el-form-item> | ||
239 | + </el-col> | ||
240 | + <el-col :span="6"> | ||
241 | + <el-form-item label="航空器备案类型" prop="aircrafttype"> | ||
242 | + <el-select v-model="form.aircrafttype" placeholder="请选择"> | ||
243 | + <el-option label="通用航空器" value="1"></el-option> | ||
244 | + <el-option label="航线航空器" value="2"></el-option> | ||
245 | + </el-select> | ||
246 | + </el-form-item> | ||
247 | + </el-col> | ||
248 | + </el-row> | ||
249 | + <el-divider content-position="left"><span style="color: #1d8ce0">航班信息</span></el-divider> | ||
250 | + <el-row :gutter="20"> | ||
251 | + <el-col :span="6"> | ||
252 | + <el-form-item label="进出境航班号" prop="flightNo"> | ||
253 | + <el-input v-model="form.flightNo"></el-input> | ||
254 | + </el-form-item> | ||
255 | + </el-col> | ||
256 | + <el-col :span="6"> | ||
257 | + <el-form-item label="航班日期" prop="flightDate" style="width: 100%;"> | ||
258 | + <div class="block"> | ||
259 | + <el-date-picker | ||
260 | + v-model="form.flightDate" | ||
261 | + value-format="yyyy-MM-dd" | ||
262 | + type="date" | ||
263 | + placeholder="选择日期" | ||
264 | + style="width: 100%;" | ||
265 | + ></el-date-picker> | ||
266 | + </div> | ||
267 | + </el-form-item> | ||
268 | + </el-col> | ||
269 | + <el-col :span="6"> | ||
270 | + <el-form-item label="停机位" prop="stayid"> | ||
271 | + <el-input v-model="form.stayid"></el-input> | ||
272 | + </el-form-item> | ||
273 | + </el-col> | ||
274 | + <el-col :span="6"> | ||
275 | + <el-form-item label="出发港" prop="departurePort" style="width: 100%;"> | ||
276 | + <el-select v-model="form.departurePort" | ||
277 | + filterable | ||
278 | + allow-create | ||
279 | + default-first-option | ||
280 | + remote | ||
281 | + :remote-method="getAirportCode" | ||
282 | + :loading="loading" placeholder="请选择"> | ||
283 | + <el-option | ||
284 | + v-for="item in airportcodes" | ||
285 | + :key="item.airportid" | ||
286 | + :label="item.airportid" | ||
287 | + :value="item.airportid"> | ||
288 | + <span style="float: left">{{ item.airportid }}</span> | ||
289 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.airportname}}</span> | ||
290 | + </el-option> | ||
291 | + </el-select> | ||
292 | + </el-form-item> | ||
293 | + </el-col> | ||
294 | + <el-col :span="6"> | ||
295 | + <el-form-item label="目的港" prop="arrivalPort" style="width: 100%;"> | ||
296 | + <el-select v-model="form.arrivalPort" | ||
297 | + filterable | ||
298 | + allow-create | ||
299 | + default-first-option | ||
300 | + remote | ||
301 | + :remote-method="getAirportCode2" | ||
302 | + :loading="loading" placeholder="请选择"> | ||
303 | + <el-option | ||
304 | + v-for="item in airportcodes2" | ||
305 | + :key="item.airportid" | ||
306 | + :label="item.airportid" | ||
307 | + :value="item.airportid"> | ||
308 | + <span style="float: left">{{ item.airportid }}</span> | ||
309 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.airportname}}</span> | ||
310 | + </el-option> | ||
311 | + </el-select> | ||
312 | + </el-form-item> | ||
313 | + </el-col> | ||
314 | + <el-col :span="6"> | ||
315 | + <el-form-item label="出境时间" prop="departuredatetime" style="width: 100%;"> | ||
316 | + <el-date-picker | ||
317 | + v-model="form.departuredatetime" | ||
318 | + type="datetime" | ||
319 | + value-format="yyyy-MM-dd HH:mm:ss" | ||
320 | + placeholder="yyyy-MM-dd HH:mm:ss" | ||
321 | + style="width: 100%;"> | ||
322 | + </el-date-picker> | ||
323 | + </el-form-item> | ||
324 | + </el-col> | ||
325 | + <el-col :span="6"> | ||
326 | + <el-form-item label="进境时间" prop="arrivaldatetime" style="width: 100%;"> | ||
327 | + <el-date-picker | ||
328 | + v-model="form.arrivaldatetime" | ||
329 | + type="datetime" | ||
330 | + value-format="yyyy-MM-dd HH:mm:ss" | ||
331 | + placeholder="yyyy-MM-dd HH:mm:ss" | ||
332 | + style="width: 100%;"> | ||
333 | + </el-date-picker> | ||
334 | + </el-form-item> | ||
335 | + </el-col> | ||
336 | + </el-row> | ||
337 | + <el-divider content-position="left"><span style="color: #1d8ce0">海关备注</span></el-divider> | ||
338 | + <el-row :gutter="20"> | ||
339 | + <el-col :span="12"> | ||
340 | + <el-form-item label="海关备注"> | ||
341 | + <el-input v-model="form.meno"></el-input> | ||
342 | + </el-form-item> | ||
343 | + </el-col> | ||
344 | + </el-row> | ||
345 | + <el-divider></el-divider> | ||
346 | + <el-row :gutter="20"> | ||
347 | + <el-col :span="12" :offset="6"> | ||
348 | + <el-form-item> | ||
349 | + <el-button @click="dialogVisible=false">取消</el-button> | ||
350 | + <el-button type="primary" @click="dialogStatus==='create'?createData('form'):updateData('form')">暂存</el-button> | ||
351 | + </el-form-item> | ||
352 | + </el-col> | ||
353 | + </el-row> | ||
354 | + </el-form> | ||
355 | + </el-dialog> | ||
356 | + </el-row> | ||
357 | + <el-row :gutter="10"> | ||
358 | + <el-dialog | ||
359 | + title="回执列表" | ||
360 | + :visible.sync="returnVisible" | ||
361 | + width="55%" | ||
362 | + :before-close="handleClose"> | ||
363 | + <el-table :data="gridData"> | ||
364 | + <el-table-column property="sendtime" label="操作时间" ></el-table-column> | ||
365 | + <el-table-column property="createBy" label="操作人" ></el-table-column> | ||
366 | + <el-table-column property="flightNo" label="航班号"></el-table-column> | ||
367 | + <el-table-column property="flightDate" label="航班日期" ></el-table-column> | ||
368 | + <el-table-column property="receiptContent" label="回执内容" ></el-table-column> | ||
369 | + </el-table> | ||
370 | + </el-dialog> | ||
371 | + </el-row> | ||
372 | + <el-row> | ||
373 | + <el-dialog title="航班取消申报" :visible.sync="dialogFormVisible"> | ||
374 | + <el-form :model="cancleForm"> | ||
375 | + <el-form-item label="取消原因" label-width="130px"> | ||
376 | + <el-input v-model="cancleForm.content" autocomplete="off"></el-input> | ||
377 | + </el-form-item> | ||
378 | + </el-form> | ||
379 | + <div slot="footer" class="dialog-footer"> | ||
380 | + <el-button @click="dialogFormVisible = false">取 消</el-button> | ||
381 | + <el-button type="primary" @click="canclesendpre">确 定</el-button> | ||
382 | + </div> | ||
383 | + </el-dialog> | ||
384 | + </el-row> | ||
385 | + </div> | ||
386 | +</template> | ||
387 | +<script> | ||
388 | + import { | ||
389 | + selectByairportcode, | ||
390 | + selectBycustomcode, | ||
391 | + selectPreList, | ||
392 | + insertSelectivePre, | ||
393 | + updateByPrimaryKeySelectivePre, selectReturnMsgList, canclePre,sendPrediction | ||
394 | + } from "../../api/transport/transport2.0"; | ||
395 | + | ||
396 | + export default { | ||
397 | + data(){ | ||
398 | + return{ | ||
399 | + cancleForm:{ | ||
400 | + content:'' | ||
401 | + }, | ||
402 | + dialogFormVisible:false, | ||
403 | + textMap:{ | ||
404 | + update: '编辑', | ||
405 | + create: '新增' | ||
406 | + }, | ||
407 | + dialogStatus:'', | ||
408 | + dialogVisible:false, | ||
409 | + form: { | ||
410 | + uuid: '', // 唯一标识符 | ||
411 | + awcd: '', // 不知道具体含义,根据业务需求填充 | ||
412 | + aircraftNo: '', // 飞机编号 | ||
413 | + flightNo: '', // 航班号 | ||
414 | + flightDate: '', // 航班日期 | ||
415 | + departurePort: '', // 出发港 | ||
416 | + arrivalPort: '', // 到达港 | ||
417 | + departuredatetime: '', // 出发日期时间 | ||
418 | + departuredate: '', // 出发日期 | ||
419 | + stayid: '', // 停留ID | ||
420 | + departureconveyancefacility: '', // 出发运输设施 | ||
421 | + arrivalconveyancefacility: '', // 到达运输设施 | ||
422 | + arrivaldatetime: '', // 到达日期时间 | ||
423 | + arrivaldate: '', // 到达日期 | ||
424 | + dischargecompleteddatetime: '', // 卸载完成日期时间 | ||
425 | + transportflag: '', // 运输标志 | ||
426 | + customDistrictNo: '', // 海关区号 | ||
427 | + cancelFlag: '', // 取消标志 | ||
428 | + accessFlag: '0', // 访问标志 | ||
429 | + meno: '', // 备注 | ||
430 | + createTime: '', // 创建时间 | ||
431 | + createBy: '', // 创建人 | ||
432 | + updateTime: '', // 更新时间 | ||
433 | + updateBy: '', // 更新人 | ||
434 | + isDelete: '0', // 是否删除 | ||
435 | + status: '', // 状态 | ||
436 | + statusMsg: '', // 状态信息 | ||
437 | + messageid: '', // 消息ID | ||
438 | + yqtype: 'Y', // 不知道具体含义,根据业务需求填充 | ||
439 | + costomcode:'', | ||
440 | + aircrafttype:'1', | ||
441 | + content:'' | ||
442 | + }, | ||
443 | + tableData:[], | ||
444 | + total:0, | ||
445 | + query:{ | ||
446 | + aircraftNo:'', | ||
447 | + flightNo:'', | ||
448 | + starttime:'', | ||
449 | + endtime:'', | ||
450 | + customDistrictNo:'', | ||
451 | + accessFlag:'', | ||
452 | + yqtype:'', | ||
453 | + pageNum:0, | ||
454 | + pageSize:10 | ||
455 | + }, | ||
456 | + customcodes:[], | ||
457 | + customcodes2:[], | ||
458 | + customcodes3:[], | ||
459 | + airportcodes:[], | ||
460 | + airportcodes2:[], | ||
461 | + loading:false, | ||
462 | + flightdate:['2024-12-22','2024-12-25'], | ||
463 | + pickerOptions: { | ||
464 | + shortcuts: [{ | ||
465 | + text: '最近一周', | ||
466 | + onClick(picker) { | ||
467 | + const end = new Date(); | ||
468 | + const start = new Date(); | ||
469 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); | ||
470 | + picker.$emit('pick', [start, end]); | ||
471 | + } | ||
472 | + }, { | ||
473 | + text: '最近一个月', | ||
474 | + onClick(picker) { | ||
475 | + const end = new Date(); | ||
476 | + const start = new Date(); | ||
477 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); | ||
478 | + picker.$emit('pick', [start, end]); | ||
479 | + } | ||
480 | + }, { | ||
481 | + text: '最近三个月', | ||
482 | + onClick(picker) { | ||
483 | + const end = new Date(); | ||
484 | + const start = new Date(); | ||
485 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); | ||
486 | + picker.$emit('pick', [start, end]); | ||
487 | + } | ||
488 | + }] | ||
489 | + }, | ||
490 | + rules:{ | ||
491 | + aircraftNo: [ | ||
492 | + { required: true, message: '航空注册器编号不可为空', trigger: 'blur' } | ||
493 | + ], | ||
494 | + flightNo: [ | ||
495 | + { required: true, message: '航班号不可为空', trigger: 'blur' } | ||
496 | + ], | ||
497 | + flightDate: [ | ||
498 | + { required: true, message: '航班日期不可为空', trigger: 'blur' } | ||
499 | + ], | ||
500 | + customDistrictNo: [ | ||
501 | + { required: true, message: '海关关区不可为空', trigger: 'blur' } | ||
502 | + ], | ||
503 | + costomcode: [ | ||
504 | + { required: true, message: '海关关区不可为空', trigger: 'blur' } | ||
505 | + ], | ||
506 | + aircrafttype: [ | ||
507 | + { required: true, message: '航空器备案类型不可为空', trigger: 'blur' } | ||
508 | + ], | ||
509 | + stayid: [ | ||
510 | + { required: true, message: '停机位不可为空', trigger: 'blur' } | ||
511 | + ], | ||
512 | + departurePort: [ | ||
513 | + { required: true, message: '出发港不可为空', trigger: 'blur' } | ||
514 | + ], | ||
515 | + arrivalPort: [ | ||
516 | + { required: true, message: '目的港不可为空', trigger: 'blur' } | ||
517 | + ], | ||
518 | + departuredatetime: [ | ||
519 | + { required: true, message: '出境不可为空', trigger: 'blur' } | ||
520 | + ], | ||
521 | + arrivaldatetime: [ | ||
522 | + { required: true, message: '进境不可为空', trigger: 'blur' } | ||
523 | + ], | ||
524 | + }, | ||
525 | + returnVisible:false, | ||
526 | + gridData:[], | ||
527 | + row2:undefined | ||
528 | + } | ||
529 | + }, | ||
530 | + methods:{ | ||
531 | + cancleSB(row){ | ||
532 | + this.dialogFormVisible=true; | ||
533 | + this.row2=row; | ||
534 | + | ||
535 | + }, | ||
536 | + canclesendpre(row,FunctionCode){ | ||
537 | + this.row2.content=this.cancleForm.content; | ||
538 | + const params = { | ||
539 | + row: this.row2, | ||
540 | + FunctionCode: 2 | ||
541 | + }; | ||
542 | + canclePre(params).then(res =>{ | ||
543 | + let response=res.data; | ||
544 | + if(response.code=='200'){ | ||
545 | + this.dialogFormVisible=false; | ||
546 | + this.selectList(); | ||
547 | + this.$message.success(response.msg) | ||
548 | + }else{ | ||
549 | + this.$message.error(response.msg) | ||
550 | + } | ||
551 | + }); | ||
552 | + }, | ||
553 | + sendpre(row,FunctionCode){ | ||
554 | + //this.row2.content=this.cancleForm.content; | ||
555 | + const params = { | ||
556 | + row: row, | ||
557 | + FunctionCode: FunctionCode | ||
558 | + }; | ||
559 | + sendPrediction(params).then(res =>{ | ||
560 | + let response=res.data; | ||
561 | + if(response.code=='200'){ | ||
562 | + this.dialogFormVisible=false; | ||
563 | + this.selectList(); | ||
564 | + this.$message.success(response.msg) | ||
565 | + }else{ | ||
566 | + this.$message.error(response.msg) | ||
567 | + } | ||
568 | + }); | ||
569 | + }, | ||
570 | + | ||
571 | + handleClose() { | ||
572 | + this.returnVisible=false; | ||
573 | + }, | ||
574 | + //查询回执列表 | ||
575 | + returnlist(row){ | ||
576 | + this.gridData=[]; | ||
577 | + let params={messageid:row.messageid}; | ||
578 | + selectReturnMsgList(params).then(res=>{ | ||
579 | + let response=res.data.data; | ||
580 | + this.gridData=response; | ||
581 | + }); | ||
582 | + this.returnVisible=true; | ||
583 | + }, | ||
584 | + createData(formName){ | ||
585 | + this.$refs[formName].validate((valid) => { | ||
586 | + if (valid) { | ||
587 | + insertSelectivePre(this.form).then(res =>{ | ||
588 | + let response=res.data; | ||
589 | + if(response.code=='200'){ | ||
590 | + this.dialogVisible=false; | ||
591 | + this.$message.success(response.msg); | ||
592 | + this.selectList(); | ||
593 | + }else{ | ||
594 | + this.$message.error(response.msg) | ||
595 | + } | ||
596 | + }); | ||
597 | + } else { | ||
598 | + return false; | ||
599 | + } | ||
600 | + }); | ||
601 | + }, | ||
602 | + updateData(formName){ | ||
603 | + this.$refs[formName].validate((valid) => { | ||
604 | + if (valid) { | ||
605 | + this.form.departuredatetime=this.form.arrivaldatetime; | ||
606 | + this.form.departureAirport=this.form.arrivalAirport; | ||
607 | + updateByPrimaryKeySelectivePre(this.form).then(res =>{ | ||
608 | + let response=res.data; | ||
609 | + if(response.code=='200'){ | ||
610 | + this.dialogVisible=false; | ||
611 | + Object.assign(this.$data, this.$options.data()); | ||
612 | + this.$message.success(response.msg); | ||
613 | + this.getList(); | ||
614 | + }else{ | ||
615 | + this.$message.error(response.msg) | ||
616 | + } | ||
617 | + }); | ||
618 | + } else { | ||
619 | + return false; | ||
620 | + } | ||
621 | + }); | ||
622 | + }, | ||
623 | + //获取关区代码 | ||
624 | + getCustomCode:function(query){ | ||
625 | + this.customcodes=[]; | ||
626 | + let params={customcode:query}; | ||
627 | + this.loading = true; | ||
628 | + selectBycustomcode(params).then(res =>{ | ||
629 | + if (res !== '') { | ||
630 | + setTimeout(() => { | ||
631 | + this.loading = false; | ||
632 | + this.customcodes=res.data.data; | ||
633 | + }, 200); | ||
634 | + } else { | ||
635 | + this.customcodes = []; | ||
636 | + } | ||
637 | + | ||
638 | + }); | ||
639 | + }, | ||
640 | + //获取关区代码 | ||
641 | + getCustomCode2:function(query){ | ||
642 | + this.customcodes2=[]; | ||
643 | + let params={customcode:query}; | ||
644 | + this.loading = true; | ||
645 | + selectBycustomcode(params).then(res =>{ | ||
646 | + if (res !== '') { | ||
647 | + setTimeout(() => { | ||
648 | + this.loading = false; | ||
649 | + this.customcodes2=res.data.data; | ||
650 | + }, 200); | ||
651 | + } else { | ||
652 | + this.customcodes2 = []; | ||
653 | + } | ||
654 | + | ||
655 | + }); | ||
656 | + }, | ||
657 | + //获取关区代码 | ||
658 | + getCustomCode3:function(query){ | ||
659 | + this.customcodes3=[]; | ||
660 | + let params={customcode:query}; | ||
661 | + this.loading = true; | ||
662 | + selectBycustomcode(params).then(res =>{ | ||
663 | + if (res !== '') { | ||
664 | + setTimeout(() => { | ||
665 | + this.loading = false; | ||
666 | + this.customcodes3=res.data.data; | ||
667 | + }, 200); | ||
668 | + } else { | ||
669 | + this.customcodes3 = []; | ||
670 | + } | ||
671 | + | ||
672 | + }); | ||
673 | + }, | ||
674 | + //获取机场代码 | ||
675 | + getAirportCode:function(query){ | ||
676 | + this.airportcodes=[]; | ||
677 | + let params={airportid:query}; | ||
678 | + this.loading = true; | ||
679 | + selectByairportcode(params).then(res =>{ | ||
680 | + if (res !== '') { | ||
681 | + setTimeout(() => { | ||
682 | + this.loading = false; | ||
683 | + this.airportcodes=res.data.data; | ||
684 | + }, 200); | ||
685 | + } else { | ||
686 | + this.airportcodes = []; | ||
687 | + } | ||
688 | + | ||
689 | + }); | ||
690 | + }, | ||
691 | + //获取机场代码 | ||
692 | + getAirportCode2:function(query){ | ||
693 | + this.airportcodes2=[]; | ||
694 | + let params={airportid:query}; | ||
695 | + this.loading = true; | ||
696 | + selectByairportcode(params).then(res =>{ | ||
697 | + if (res !== '') { | ||
698 | + setTimeout(() => { | ||
699 | + this.loading = false; | ||
700 | + this.airportcodes2=res.data.data; | ||
701 | + }, 200); | ||
702 | + } else { | ||
703 | + this.airportcodes2 = []; | ||
704 | + } | ||
705 | + | ||
706 | + }); | ||
707 | + }, | ||
708 | + selectList(){ | ||
709 | + if(this.flightdate !== null && this.flightdate !== ""){ | ||
710 | + this.query.starttime = this.flightdate[0]; | ||
711 | + this.query.endtime = this.flightdate[1]; | ||
712 | + }else{ | ||
713 | + return this.$message.error('请选取时间区间') | ||
714 | + } | ||
715 | + this.loading = true; | ||
716 | + selectPreList(this.query).then((response) => { | ||
717 | + const res = response.data | ||
718 | + if (res.code !== '200') { | ||
719 | + this.loading = false; | ||
720 | + return this.$message.error('获取消息收发记录,失败!') | ||
721 | + } | ||
722 | + // 获取列表数据 | ||
723 | + this.tableData = res.data.list | ||
724 | + // 获取列表的总记录数 | ||
725 | + this.total = res.data.total | ||
726 | + this.loading = false; | ||
727 | + this.$message.success('获取消息收发记录,成功!'); | ||
728 | + }).catch(error => { | ||
729 | + // 关闭加载 | ||
730 | + this.$message.error(error.toString()) | ||
731 | + }) | ||
732 | + }, | ||
733 | + //新增 | ||
734 | + addForm(){ | ||
735 | + this.dialogVisible=true; | ||
736 | + this.dialogStatus='create'; | ||
737 | + }, | ||
738 | + handleClick(row){ | ||
739 | + this.dialogVisible=true; | ||
740 | + this.dialogStatus='update'; | ||
741 | + this.form=row; | ||
742 | + }, | ||
743 | + //分页 | ||
744 | + handleSizeChange(val) { | ||
745 | + this.query.pageSize=val; | ||
746 | + this.selectList(); | ||
747 | + }, | ||
748 | + handleCurrentChange(val) { | ||
749 | + this.query.pageNum=val; | ||
750 | + this.selectList(); | ||
751 | + } | ||
752 | + }, | ||
753 | + } | ||
754 | +</script> |
src/views/airtransport/zaigang.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <el-row :gutter="10"> | ||
4 | + <el-col :span="4"> | ||
5 | + <el-input | ||
6 | + placeholder="航空器注册编号" | ||
7 | + v-model="query.aircraftno" | ||
8 | + size="medium" | ||
9 | + clearable> | ||
10 | + </el-input> | ||
11 | + </el-col> | ||
12 | + <el-col :span="4"> | ||
13 | + <el-input | ||
14 | + placeholder="进境(港)航班号" | ||
15 | + v-model="query.flightno" | ||
16 | + size="medium" | ||
17 | + clearable> | ||
18 | + </el-input> | ||
19 | + </el-col> | ||
20 | + <el-col :span="8"> | ||
21 | + <div class="block"> | ||
22 | + <el-date-picker | ||
23 | + v-model="flightdate" | ||
24 | + type="daterange" | ||
25 | + :picker-options="pickerOptions" | ||
26 | + range-separator="至" | ||
27 | + start-placeholder="开始日期" | ||
28 | + end-placeholder="结束日期" | ||
29 | + value-format="yyyy-MM-dd" | ||
30 | + size="medium" | ||
31 | + align="right"> | ||
32 | + </el-date-picker> | ||
33 | + </div> | ||
34 | + </el-col> | ||
35 | + <el-col :span="2"> | ||
36 | + <el-button size="medium" type="primary" @click="selectList" plain>查询</el-button> | ||
37 | + </el-col> | ||
38 | + <el-col :span="2"> | ||
39 | + <el-button size="medium" type="success" @click="addForm()" plain>新增</el-button> | ||
40 | + </el-col> | ||
41 | + </el-row> | ||
42 | + <el-row :gutter="10"> | ||
43 | + <el-table | ||
44 | + :data="tableData" | ||
45 | + border | ||
46 | + style="width: 100%"> | ||
47 | + <el-table-column | ||
48 | + align="center" | ||
49 | + fixed="left" | ||
50 | + label="信息操作" | ||
51 | + width="80"> | ||
52 | + <template slot-scope="scope"> | ||
53 | + <el-button @click="ediForm(scope.row)" type="text" size="small">编辑</el-button> | ||
54 | + </template> | ||
55 | + </el-table-column> | ||
56 | + <el-table-column | ||
57 | + prop="messageid" | ||
58 | + label="编号" | ||
59 | + width="320"> | ||
60 | + </el-table-column> | ||
61 | + <el-table-column | ||
62 | + prop="aircraftno" | ||
63 | + label="航空器注册编号" | ||
64 | + width="120"> | ||
65 | + </el-table-column> | ||
66 | + <el-table-column | ||
67 | + prop="flightno" | ||
68 | + label="进境(港)航班号" | ||
69 | + width="120"> | ||
70 | + </el-table-column> | ||
71 | + <el-table-column | ||
72 | + prop="callport" | ||
73 | + label="停靠港" | ||
74 | + width="120"> | ||
75 | + </el-table-column> | ||
76 | + <el-table-column | ||
77 | + prop="flightdate" | ||
78 | + label="航班日期" | ||
79 | + width="100"> | ||
80 | + </el-table-column> | ||
81 | + <el-table-column | ||
82 | + prop="statusmsg" | ||
83 | + label="海关状态" | ||
84 | + width="120"> | ||
85 | + </el-table-column> | ||
86 | + <el-table-column | ||
87 | + fixed="right" | ||
88 | + label="操作" | ||
89 | + width="200"> | ||
90 | + <template slot-scope="scope"> | ||
91 | + <el-button @click="returnlist(scope.row)" type="text" size="small">查看</el-button> | ||
92 | + <el-button @click="sendstying(scope.row,2)" type="text" size="small">申报</el-button> | ||
93 | + <el-button @click="sendstying(scope.row,5)" type="text" size="small">修改</el-button> | ||
94 | + <el-button @click="sendstying(scope.row,3)" type="text" size="small">删除</el-button> | ||
95 | + </template> | ||
96 | + </el-table-column> | ||
97 | + </el-table> | ||
98 | + </el-row> | ||
99 | + <el-row :gutter="10"> | ||
100 | + <div class="block"> | ||
101 | + <el-pagination | ||
102 | + @size-change="handleSizeChange" | ||
103 | + @current-change="handleCurrentChange" | ||
104 | + :current-page="query.pageNum" | ||
105 | + :page-sizes="[100, 200, 300, 400]" | ||
106 | + :page-size="query.pageSize" | ||
107 | + layout="total, sizes, prev, pager, next, jumper" | ||
108 | + :total="total"> | ||
109 | + </el-pagination> | ||
110 | + </div> | ||
111 | + </el-row> | ||
112 | + <el-dialog | ||
113 | + :title="'在港信息'+textMap[dialogStatus]" | ||
114 | + :visible.sync="dialogVisible" | ||
115 | + width="80%" | ||
116 | + center> | ||
117 | + <el-form :model="form" :rules="rules" ref="form" label-width="130px"> | ||
118 | + <el-divider content-position="left"><span style="color: #1d8ce0">报给单位</span></el-divider> | ||
119 | + <el-row :gutter="20"> | ||
120 | + <el-col :span="6"> | ||
121 | + <el-form-item label="海关关区" prop="customcode"> | ||
122 | + <el-select v-model="form.customcode" | ||
123 | + filterable | ||
124 | + allow-create | ||
125 | + default-first-option | ||
126 | + remote | ||
127 | + :remote-method="getCustomCode" | ||
128 | + :loading="loading" placeholder="请选择"> | ||
129 | + <el-option | ||
130 | + v-for="item in customcodes" | ||
131 | + :key="item.customcode" | ||
132 | + :label="item.customcode" | ||
133 | + :value="item.customcode"> | ||
134 | + <span style="float: left">{{ item.customcode }}</span> | ||
135 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.customname }}</span> | ||
136 | + </el-option> | ||
137 | + </el-select> | ||
138 | + </el-form-item> | ||
139 | + </el-col> | ||
140 | + </el-row> | ||
141 | + <el-divider content-position="left"><span style="color: #1d8ce0">航空器信息</span></el-divider> | ||
142 | + <el-row :gutter="20"> | ||
143 | + <el-col :span="6"> | ||
144 | + <el-form-item label="航空器注册编号" prop="aircraftno"> | ||
145 | + <el-input v-model="form.aircraftno"></el-input> | ||
146 | + </el-form-item> | ||
147 | + </el-col> | ||
148 | + <el-col :span="6"> | ||
149 | + <el-form-item label="注册海关关区"> | ||
150 | + <el-select v-model="form.registeredcustom" | ||
151 | + filterable | ||
152 | + allow-create | ||
153 | + default-first-option | ||
154 | + remote | ||
155 | + :remote-method="getCustomCode2" | ||
156 | + :loading="loading" placeholder="请选择"> | ||
157 | + <el-option | ||
158 | + v-for="item in customcodes2" | ||
159 | + :key="item.customcode" | ||
160 | + :label="item.customcode" | ||
161 | + :value="item.customcode"> | ||
162 | + <span style="float: left">{{ item.customcode }}</span> | ||
163 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.customname }}</span> | ||
164 | + </el-option> | ||
165 | + </el-select> | ||
166 | + </el-form-item> | ||
167 | + </el-col> | ||
168 | + <el-col :span="6"> | ||
169 | + <el-form-item label="航空器备案类型"> | ||
170 | + <el-select v-model="form.aircrafttype" placeholder="请选择"> | ||
171 | + <el-option label="通用航空器" value="1"></el-option> | ||
172 | + <el-option label="航线航空器" value="2"></el-option> | ||
173 | + </el-select> | ||
174 | + </el-form-item> | ||
175 | + | ||
176 | + </el-col> | ||
177 | + </el-row> | ||
178 | + <el-divider content-position="left"><span style="color: #1d8ce0">在港申报信息</span></el-divider> | ||
179 | + <el-row :gutter="20"> | ||
180 | + <el-col :span="6"> | ||
181 | + <el-form-item label="进境(港)航班号" prop="flightno"> | ||
182 | + <el-input v-model="form.flightno"></el-input> | ||
183 | + </el-form-item> | ||
184 | + </el-col> | ||
185 | + <el-col :span="6"> | ||
186 | + <el-form-item label="航班日期" prop="flightdate" style="width: 100%;"> | ||
187 | + <div class="block"> | ||
188 | + <el-date-picker | ||
189 | + v-model="form.flightdate" | ||
190 | + value-format="yyyy-MM-dd" | ||
191 | + type="date" | ||
192 | + placeholder="选择日期" | ||
193 | + style="width: 100%;" | ||
194 | + ></el-date-picker> | ||
195 | + </div> | ||
196 | + </el-form-item> | ||
197 | + </el-col> | ||
198 | + <el-col :span="6"> | ||
199 | + <el-form-item label="停靠港" prop="callport" style="width: 100%;"> | ||
200 | + <el-select v-model="form.callport" | ||
201 | + filterable | ||
202 | + allow-create | ||
203 | + default-first-option | ||
204 | + remote | ||
205 | + :remote-method="getAirportCode" | ||
206 | + :loading="loading" placeholder="请选择"> | ||
207 | + <el-option | ||
208 | + v-for="item in airportcodes" | ||
209 | + :key="item.airportid" | ||
210 | + :label="item.airportid" | ||
211 | + :value="item.airportid"> | ||
212 | + <span style="float: left">{{ item.airportid }}</span> | ||
213 | + <span style="float: right; color: #8492a6; font-size: 13px">-{{ item.airportname}}</span> | ||
214 | + </el-option> | ||
215 | + </el-select> | ||
216 | + </el-form-item> | ||
217 | + </el-col> | ||
218 | + <el-col :span="6"> | ||
219 | + <el-form-item label="停机位" prop="callarea"> | ||
220 | + <el-input v-model="form.callarea"></el-input> | ||
221 | + </el-form-item> | ||
222 | + </el-col> | ||
223 | + </el-row> | ||
224 | + <el-divider content-position="left"><span style="color: #1d8ce0">备注信息</span></el-divider> | ||
225 | + <el-row :gutter="20"> | ||
226 | + <el-col :span="6"> | ||
227 | + <el-form-item label="滞留原因"> | ||
228 | + <el-select v-model="form.reasons" placeholder="请选择"> | ||
229 | + <el-option label="移泊" value="1"></el-option> | ||
230 | + <el-option label="待命" value="2"></el-option> | ||
231 | + <el-option label="维修" value="3"></el-option> | ||
232 | + <el-option label="其它" value="4"></el-option> | ||
233 | + </el-select> | ||
234 | + </el-form-item> | ||
235 | + </el-col> | ||
236 | + <el-col :span="6"> | ||
237 | + <el-form-item label="海关备注"> | ||
238 | + <el-input v-model="form.remark"></el-input> | ||
239 | + </el-form-item> | ||
240 | + </el-col> | ||
241 | + </el-row> | ||
242 | + <el-divider></el-divider> | ||
243 | + <el-row :gutter="20"> | ||
244 | + <el-col :span="12" :offset="6"> | ||
245 | + <el-form-item> | ||
246 | + <el-button @click="dialogVisible=false">取消</el-button> | ||
247 | + <el-button type="primary" @click="dialogStatus==='create'?createData('form'):updateData('form')">暂存</el-button> | ||
248 | + </el-form-item> | ||
249 | + </el-col> | ||
250 | + </el-row> | ||
251 | + </el-form> | ||
252 | + </el-dialog> | ||
253 | + <el-dialog | ||
254 | + title="回执列表" | ||
255 | + :visible.sync="returnVisible" | ||
256 | + width="55%" | ||
257 | + :before-close="handleClose"> | ||
258 | + <el-table :data="gridData"> | ||
259 | + <el-table-column property="sendtime" label="操作时间" ></el-table-column> | ||
260 | + <el-table-column property="createBy" label="操作人" ></el-table-column> | ||
261 | + <el-table-column property="flightNo" label="航班号"></el-table-column> | ||
262 | + <el-table-column property="flightDate" label="航班日期" ></el-table-column> | ||
263 | + <el-table-column property="receiptContent" label="回执内容" ></el-table-column> | ||
264 | + </el-table> | ||
265 | + </el-dialog> | ||
266 | + </div> | ||
267 | +</template> | ||
268 | +<script> | ||
269 | + import {selectBycustomcode,selectByairportcode,selectLists,insertSelective,updateByPrimaryKeySelective, | ||
270 | + selectReturnMsgList,sendAircraftstaying} from "../../api/transport/transport2.0"; | ||
271 | + | ||
272 | + export default { | ||
273 | + data(){ | ||
274 | + return{ | ||
275 | + returnVisible:false, | ||
276 | + query:{ | ||
277 | + aircraftno:'', | ||
278 | + flightno:'', | ||
279 | + flightdate:'', | ||
280 | + starttime:'', | ||
281 | + endtime:'', | ||
282 | + pageNum:0, | ||
283 | + pageSize:10 | ||
284 | + }, | ||
285 | + customcodes:[], | ||
286 | + customcodes2:[], | ||
287 | + airportcodes:[], | ||
288 | + form:{ | ||
289 | + uuid:'', | ||
290 | + customcode:'', | ||
291 | + aircraftno:'', | ||
292 | + registeredcustom:'', | ||
293 | + aircrafttype:'', | ||
294 | + flightno:'', | ||
295 | + flightdate:'', | ||
296 | + callport:'', | ||
297 | + callarea:'', | ||
298 | + reasons:'', | ||
299 | + remark:'', | ||
300 | + userid:'', | ||
301 | + status:'', | ||
302 | + statusmsg:'', | ||
303 | + messageid:'' | ||
304 | + }, | ||
305 | + rules: { | ||
306 | + customcode: [ | ||
307 | + { required: true, message: '海关关区不可为空', trigger: 'blur' } | ||
308 | + ], | ||
309 | + aircraftno: [ | ||
310 | + { required: true, message: '航空器注册编号不可为空', trigger: 'blur' } | ||
311 | + ], | ||
312 | + flightno: [ | ||
313 | + { required: true, message: '进境(港)航班号不可为空', trigger: 'blur' } | ||
314 | + ], | ||
315 | + flightdate: [ | ||
316 | + { required: true, message: '航班日期不可为空', trigger: 'blur' } | ||
317 | + ], | ||
318 | + callport: [ | ||
319 | + { required: true, message: '停靠港不可为空', trigger: 'blur' } | ||
320 | + ], | ||
321 | + callarea: [ | ||
322 | + { required: true, message: '停机位不可为空', trigger: 'blur' } | ||
323 | + ] | ||
324 | + }, | ||
325 | + dialogVisible: false, | ||
326 | + currentPage4: 4, | ||
327 | + textMap:{ | ||
328 | + update: '编辑', | ||
329 | + create: '新增' | ||
330 | + }, | ||
331 | + dialogStatus:'', | ||
332 | + loading:false, | ||
333 | + flightdate:'', | ||
334 | + total:0, | ||
335 | + pickerOptions: { | ||
336 | + shortcuts: [{ | ||
337 | + text: '最近一周', | ||
338 | + onClick(picker) { | ||
339 | + const end = new Date(); | ||
340 | + const start = new Date(); | ||
341 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); | ||
342 | + picker.$emit('pick', [start, end]); | ||
343 | + } | ||
344 | + }, { | ||
345 | + text: '最近一个月', | ||
346 | + onClick(picker) { | ||
347 | + const end = new Date(); | ||
348 | + const start = new Date(); | ||
349 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); | ||
350 | + picker.$emit('pick', [start, end]); | ||
351 | + } | ||
352 | + }, { | ||
353 | + text: '最近三个月', | ||
354 | + onClick(picker) { | ||
355 | + const end = new Date(); | ||
356 | + const start = new Date(); | ||
357 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); | ||
358 | + picker.$emit('pick', [start, end]); | ||
359 | + } | ||
360 | + }] | ||
361 | + }, | ||
362 | + tableData: [], | ||
363 | + gridData:[] | ||
364 | + } | ||
365 | + }, | ||
366 | + methods:{ | ||
367 | + sendstying(row,FunctionCode){ | ||
368 | + const params = { | ||
369 | + row: row, | ||
370 | + FunctionCode: FunctionCode | ||
371 | + }; | ||
372 | + sendAircraftstaying(params).then(res =>{ | ||
373 | + let response=res.data; | ||
374 | + if(response.code=='200'){ | ||
375 | + this.selectList(); | ||
376 | + this.$message.success(response.msg) | ||
377 | + }else{ | ||
378 | + this.$message.error(response.msg) | ||
379 | + } | ||
380 | + }); | ||
381 | + }, | ||
382 | + //查询回执列表 | ||
383 | + returnlist(row){ | ||
384 | + this.gridData=[]; | ||
385 | + let params={messageid:row.messageid}; | ||
386 | + selectReturnMsgList(params).then(res=>{ | ||
387 | + let response=res.data.data; | ||
388 | + this.gridData=response; | ||
389 | + }); | ||
390 | + this.returnVisible=true; | ||
391 | + }, | ||
392 | + handleClose() { | ||
393 | + this.returnVisible=false; | ||
394 | + }, | ||
395 | + //暂存新增 | ||
396 | + createData(formName){ | ||
397 | + this.$refs[formName].validate((valid) => { | ||
398 | + if (valid) { | ||
399 | + insertSelective(this.form).then(res =>{ | ||
400 | + let response=res.data; | ||
401 | + if(response.code=='200'){ | ||
402 | + this.dialogVisible=false; | ||
403 | + this.$message.success(response.msg) | ||
404 | + }else{ | ||
405 | + this.$message.error(response.msg) | ||
406 | + } | ||
407 | + }); | ||
408 | + } else { | ||
409 | + return false; | ||
410 | + } | ||
411 | + }); | ||
412 | + }, | ||
413 | + //暂存更新 | ||
414 | + updateData(formName){ | ||
415 | + this.$refs[formName].validate((valid) => { | ||
416 | + if (valid) { | ||
417 | + updateByPrimaryKeySelective(this.form).then(res =>{ | ||
418 | + let response=res.data; | ||
419 | + if(response.code=='200'){ | ||
420 | + this.dialogVisible=false; | ||
421 | + Object.assign(this.$data, this.$options.data()); | ||
422 | + this.$message.success(response.msg) | ||
423 | + }else{ | ||
424 | + this.$message.error(response.msg) | ||
425 | + } | ||
426 | + }); | ||
427 | + } else { | ||
428 | + return false; | ||
429 | + } | ||
430 | + }); | ||
431 | + }, | ||
432 | + //查询列表 | ||
433 | + selectList(){ | ||
434 | + if(this.flightdate !== null && this.flightdate !== ""){ | ||
435 | + this.query.starttime = this.flightdate[0]; | ||
436 | + this.query.endtime = this.flightdate[1]; | ||
437 | + }else{ | ||
438 | + return this.$message.error('请选取时间区间') | ||
439 | + } | ||
440 | + this.loading = true; | ||
441 | + selectLists(this.query).then((response) => { | ||
442 | + const res = response.data | ||
443 | + if (res.code !== '200') { | ||
444 | + this.loading = false; | ||
445 | + return this.$message.error('获取消息收发记录,失败!') | ||
446 | + } | ||
447 | + // 获取列表数据 | ||
448 | + this.tableData = res.data.list | ||
449 | + // 获取列表的总记录数 | ||
450 | + this.total = res.data.total | ||
451 | + this.loading = false; | ||
452 | + this.$message.success('获取消息收发记录,成功!'); | ||
453 | + }).catch(error => { | ||
454 | + // 关闭加载 | ||
455 | + this.$message.error(error.toString()) | ||
456 | + }) | ||
457 | + | ||
458 | + }, | ||
459 | + //获取机场代码 | ||
460 | + getAirportCode:function(query){ | ||
461 | + this.airportcodes=[]; | ||
462 | + let params={airportid:query}; | ||
463 | + this.loading = true; | ||
464 | + selectByairportcode(params).then(res =>{ | ||
465 | + if (res !== '') { | ||
466 | + setTimeout(() => { | ||
467 | + this.loading = false; | ||
468 | + this.airportcodes=res.data.data; | ||
469 | + }, 200); | ||
470 | + } else { | ||
471 | + this.airportcodes = []; | ||
472 | + } | ||
473 | + | ||
474 | + }); | ||
475 | + }, | ||
476 | + //获取关区代码 | ||
477 | + getCustomCode:function(query){ | ||
478 | + this.customcodes=[]; | ||
479 | + let params={customcode:query}; | ||
480 | + this.loading = true; | ||
481 | + selectBycustomcode(params).then(res =>{ | ||
482 | + if (res !== '') { | ||
483 | + setTimeout(() => { | ||
484 | + this.loading = false; | ||
485 | + this.customcodes=res.data.data; | ||
486 | + }, 200); | ||
487 | + } else { | ||
488 | + this.customcodes = []; | ||
489 | + } | ||
490 | + | ||
491 | + }); | ||
492 | + }, | ||
493 | + getCustomCode2:function(query){ | ||
494 | + this.customcodes2=[]; | ||
495 | + let params={customcode:query}; | ||
496 | + this.loading = true; | ||
497 | + selectBycustomcode(params).then(res =>{ | ||
498 | + if (res !== '') { | ||
499 | + setTimeout(() => { | ||
500 | + this.loading = false; | ||
501 | + this.customcodes2=res.data.data; | ||
502 | + }, 200); | ||
503 | + } else { | ||
504 | + this.customcodes2 = []; | ||
505 | + } | ||
506 | + | ||
507 | + }); | ||
508 | + }, | ||
509 | + //新增 | ||
510 | + addForm(){ | ||
511 | + this.dialogVisible=true; | ||
512 | + this.dialogStatus='create'; | ||
513 | + }, | ||
514 | + //编辑 | ||
515 | + ediForm(row){ | ||
516 | + this.dialogVisible=true; | ||
517 | + this.dialogStatus='update'; | ||
518 | + this.form=row; | ||
519 | + }, | ||
520 | + handleClick(row) { | ||
521 | + }, | ||
522 | + //分页 | ||
523 | + handleSizeChange(val) { | ||
524 | + this.query.pageSize=val; | ||
525 | + this.selectList(); | ||
526 | + }, | ||
527 | + handleCurrentChange(val) { | ||
528 | + this.query.pageNum=val; | ||
529 | + this.selectList(); | ||
530 | + } | ||
531 | + } | ||
532 | + } | ||
533 | +</script> |
@@ -2189,7 +2189,7 @@ Handling Information | @@ -2189,7 +2189,7 @@ Handling Information | ||
2189 | quantity_density:'', | 2189 | quantity_density:'', |
2190 | quantity_picecs:'', | 2190 | quantity_picecs:'', |
2191 | //体积 | 2191 | //体积 |
2192 | - quantity_volume:'0', | 2192 | + quantity_volume:'0.0', |
2193 | quantity_volume_code:'MC', | 2193 | quantity_volume_code:'MC', |
2194 | quantity_weight:'', | 2194 | quantity_weight:'', |
2195 | quantity_weight_code:'K', | 2195 | quantity_weight_code:'K', |
@@ -3142,7 +3142,7 @@ Handling Information | @@ -3142,7 +3142,7 @@ Handling Information | ||
3142 | this.form.cer.cer_signature=this.fileContent.O34; | 3142 | this.form.cer.cer_signature=this.fileContent.O34; |
3143 | this.form.isu.isu_signature=this.fileContent.AF38; | 3143 | this.form.isu.isu_signature=this.fileContent.AF38; |
3144 | this.dimension_textarea=this.fileContent.AF23; | 3144 | this.dimension_textarea=this.fileContent.AF23; |
3145 | - this.convertAndCalculateVolume(); | 3145 | + //this.convertAndCalculateVolume(); |
3146 | 3146 | ||
3147 | this.form.isu.isu_day_mounth_year=this.formattedDate(); | 3147 | this.form.isu.isu_day_mounth_year=this.formattedDate(); |
3148 | }else{ | 3148 | }else{ |
@@ -3176,7 +3176,7 @@ Handling Information | @@ -3176,7 +3176,7 @@ Handling Information | ||
3176 | X38: X38, | 3176 | X38: X38, |
3177 | AF38: cleanString(AF38), | 3177 | AF38: cleanString(AF38), |
3178 | }; | 3178 | }; |
3179 | - this.convertAndCalculateVolume(); | 3179 | + //this.convertAndCalculateVolume(); |
3180 | this.form.bill.waybillNum=this.fileContent.AF1; | 3180 | this.form.bill.waybillNum=this.fileContent.AF1; |
3181 | this.form.cvd.cvd_currency_code=this.fileContent.S16; | 3181 | this.form.cvd.cvd_currency_code=this.fileContent.S16; |
3182 | this.form.rtg.destinationAirport=this.fileContent.A16; | 3182 | this.form.rtg.destinationAirport=this.fileContent.A16; |
@@ -3197,7 +3197,6 @@ Handling Information | @@ -3197,7 +3197,6 @@ Handling Information | ||
3197 | this.dimension_textarea=this.fileContent.AF23; | 3197 | this.dimension_textarea=this.fileContent.AF23; |
3198 | 3198 | ||
3199 | this.form.isu.isu_day_mounth_year=this.formattedDate(); | 3199 | this.form.isu.isu_day_mounth_year=this.formattedDate(); |
3200 | - | ||
3201 | } | 3200 | } |
3202 | 3201 | ||
3203 | } else { | 3202 | } else { |
@@ -3205,6 +3204,7 @@ Handling Information | @@ -3205,6 +3204,7 @@ Handling Information | ||
3205 | } | 3204 | } |
3206 | }; | 3205 | }; |
3207 | reader.readAsArrayBuffer(files); | 3206 | reader.readAsArrayBuffer(files); |
3207 | + this.convertAndCalculateVolume(); | ||
3208 | }, | 3208 | }, |
3209 | formattedDate() { | 3209 | formattedDate() { |
3210 | // 格式化日期为 yyyy-MM-dd | 3210 | // 格式化日期为 yyyy-MM-dd |
src/views/nav3/statistics.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <el-form :inline="true" :model="formInline" class="demo-form-inline"> | ||
4 | + <el-form-item label=""> | ||
5 | + <div class="block"> | ||
6 | + <el-date-picker | ||
7 | + size="medium" | ||
8 | + v-model="value2" | ||
9 | + type="datetimerange" | ||
10 | + :picker-options="pickerOptions" | ||
11 | + value-format="yyyy-MM-dd HH:mm:ss" | ||
12 | + range-separator="至" | ||
13 | + start-placeholder="开始日期" | ||
14 | + end-placeholder="结束日期" | ||
15 | + align="right"> | ||
16 | + </el-date-picker> | ||
17 | + </div> | ||
18 | + </el-form-item> | ||
19 | + <el-form-item> | ||
20 | + <el-button type="primary" size="medium" @click="onSubmit">查询</el-button> | ||
21 | + </el-form-item> | ||
22 | + <el-form-item> | ||
23 | + <el-button type="primary" size="medium" @click="exportToExcel">导出</el-button> | ||
24 | + </el-form-item> | ||
25 | + </el-form> | ||
26 | + <div style="margin-bottom: 10px"><span style="color: red">总计: {{ totalItems }} 主单: {{ emptyAwbhCount }} 分单: {{ nonEmptyAwbhCount }}</span></div> | ||
27 | + <div> | ||
28 | + <el-table | ||
29 | + size="medium" | ||
30 | + :data="tableData" | ||
31 | + border | ||
32 | + style="width: 100%"> | ||
33 | + <el-table-column | ||
34 | + prop="awba" | ||
35 | + label="主单号" | ||
36 | + width="180"> | ||
37 | + </el-table-column> | ||
38 | + <el-table-column | ||
39 | + prop="awbh" | ||
40 | + label="分单号" | ||
41 | + width="180"> | ||
42 | + </el-table-column> | ||
43 | + <el-table-column | ||
44 | + prop="billtype" | ||
45 | + label="单证类型"> | ||
46 | + </el-table-column> | ||
47 | + <el-table-column | ||
48 | + prop="costs" | ||
49 | + label="应结费用"> | ||
50 | + </el-table-column> | ||
51 | + <el-table-column | ||
52 | + prop="flightdate" | ||
53 | + label="航班日期"> | ||
54 | + </el-table-column> | ||
55 | + </el-table> | ||
56 | + </div> | ||
57 | + </div> | ||
58 | +</template> | ||
59 | +<script> | ||
60 | + import { | ||
61 | + selectStatistics | ||
62 | + } from '../../api/remote_interface/byont_import'; | ||
63 | + import XLSX from 'xlsx'; | ||
64 | + import { saveAs } from 'file-saver'; | ||
65 | + import moment from 'moment'; | ||
66 | + export default { | ||
67 | + data() { | ||
68 | + return { | ||
69 | + pickerOptions: { | ||
70 | + shortcuts: [{ | ||
71 | + text: '最近一周', | ||
72 | + onClick(picker) { | ||
73 | + const end = new Date(); | ||
74 | + const start = new Date(); | ||
75 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); | ||
76 | + picker.$emit('pick', [start, end]); | ||
77 | + } | ||
78 | + }, { | ||
79 | + text: '最近一个月', | ||
80 | + onClick(picker) { | ||
81 | + const end = new Date(); | ||
82 | + const start = new Date(); | ||
83 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); | ||
84 | + picker.$emit('pick', [start, end]); | ||
85 | + } | ||
86 | + }, { | ||
87 | + text: '最近三个月', | ||
88 | + onClick(picker) { | ||
89 | + const end = new Date(); | ||
90 | + const start = new Date(); | ||
91 | + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); | ||
92 | + picker.$emit('pick', [start, end]); | ||
93 | + } | ||
94 | + }] | ||
95 | + }, | ||
96 | + value2: '', | ||
97 | + tableData: [], | ||
98 | + query:{ | ||
99 | + starttime:'', | ||
100 | + endtime:'' | ||
101 | + }, | ||
102 | + formInline:{}, | ||
103 | + columns: [ | ||
104 | + { prop: 'awba', label: '主单号' }, | ||
105 | + { prop: 'awbh', label: '分单号' }, | ||
106 | + { prop: 'billtype', label: '单证类型' }, | ||
107 | + { prop: 'costs', label: '应结费用' }, | ||
108 | + { prop: 'flightdate', label: '航班日期' } | ||
109 | + ] | ||
110 | + }; | ||
111 | + }, | ||
112 | + computed: { | ||
113 | + totalItems() { | ||
114 | + return this.tableData.length; | ||
115 | + }, | ||
116 | + emptyAwbhCount() { | ||
117 | + return this.tableData.filter(item => !item.awbh).length; | ||
118 | + }, | ||
119 | + nonEmptyAwbhCount() { | ||
120 | + return this.tableData.filter(item => item.awbh).length; | ||
121 | + } | ||
122 | + }, | ||
123 | + methods:{ | ||
124 | + onSubmit(){ | ||
125 | + if(this.value2 !== null && this.value2 !== ""){ | ||
126 | + this.query.starttime = this.value2[0]; | ||
127 | + this.query.endtime = this.value2[1]; | ||
128 | + }else{ | ||
129 | + return this.$message.error('请选取时间段!') | ||
130 | + } | ||
131 | + selectStatistics(this.query).then((response) => { | ||
132 | + const res = response.data | ||
133 | + if (res.code !== '200') { | ||
134 | + return this.$message.error('获取消息收发记录,失败!') | ||
135 | + } | ||
136 | + // 获取列表数据 | ||
137 | + this.tableData = res.data; | ||
138 | + this.$message.success('获取消息收发记录,成功!'); | ||
139 | + }).catch(error => { | ||
140 | + // 关闭加载 | ||
141 | + this.$message.error(error.toString()) | ||
142 | + }) | ||
143 | + }, | ||
144 | + exportToExcel() { | ||
145 | + // 创建一个新的工作簿 | ||
146 | + const wb = XLSX.utils.book_new(); | ||
147 | + | ||
148 | + // 创建一个自定义的头部数组,按照 columns 中的顺序和 label | ||
149 | + const header = this.columns.map(col => col.label); | ||
150 | + | ||
151 | + // 将 tableData 转换成二维数组,并添加到 worksheet 中 | ||
152 | + const data = this.tableData.map(row => | ||
153 | + this.columns.map(col => { | ||
154 | + // 如果是 costs 列,则转换为数值 | ||
155 | + if (col.prop === 'costs') { | ||
156 | + return parseFloat(row[col.prop]) || 0; // 确保无效值转换为0 | ||
157 | + } | ||
158 | + return row[col.prop]; | ||
159 | + }) | ||
160 | + ); | ||
161 | + | ||
162 | + // 使用 XLSX.utils.aoa_to_sheet 创建工作表,指定头部 | ||
163 | + const ws = XLSX.utils.aoa_to_sheet([header, ...data]); | ||
164 | + | ||
165 | + // 指定每一列的数据类型 | ||
166 | + const columnTypes = this.columns.map(col => ({ | ||
167 | + t: col.prop === 'costs' ? 'n' : 's' // 'n' for number, 's' for string | ||
168 | + })); | ||
169 | + | ||
170 | + // 更新工作表中的单元格类型 | ||
171 | + for (let i = 1; i <= data.length; i++) { // 从1开始,因为第0行是标题 | ||
172 | + const cellRef = XLSX.utils.encode_cell({ c: this.columns.findIndex(col => col.prop === 'costs'), r: i }); | ||
173 | + ws[cellRef].t = 'n'; // 设置单元格类型为数值 | ||
174 | + } | ||
175 | + | ||
176 | + // 添加 worksheet 到 workbook | ||
177 | + XLSX.utils.book_append_sheet(wb, ws, 'Sheet1'); | ||
178 | + | ||
179 | + // 生成 Excel 文件并下载 | ||
180 | + const wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'array' }); | ||
181 | + const blob = new Blob([wbout], { type: 'application/octet-stream' }); | ||
182 | + | ||
183 | + // 计算明天的日期 | ||
184 | + const tomorrow = moment().add(1, 'days').format('M月D日'); | ||
185 | + | ||
186 | + // 使用 file-saver 保存文件,并使用明天的日期作为文件名 | ||
187 | + saveAs(blob, `${tomorrow}航班结算统计.xlsx`); | ||
188 | + } | ||
189 | + } | ||
190 | + | ||
191 | + }; | ||
192 | +</script> |
-
请 注册 或 登录 后发表评论