作者 朱兆平

合并分支 'nmms' 到 'master'

页面部分修改 (更新)



查看合并请求 !8
@@ -8,6 +8,6 @@ export const getByCountryCodeForName = params => { return http.post(`${baseUrl}/ @@ -8,6 +8,6 @@ export const getByCountryCodeForName = params => { return http.post(`${baseUrl}/
8 8
9 export const getByCountryCode = params => { return http.post(`${baseUrl}/getByCountryCode`,params)}; 9 export const getByCountryCode = params => { return http.post(`${baseUrl}/getByCountryCode`,params)};
10 10
11 -export const getAirportCode = params =>{return http.post(`/nmms-server-import/nmms/mt1201/selectList`,params)} 11 +export const getAirportCode = params =>{return http.get(`/nmms-server-import/nmms/mt1201/selectList`,params)}
12 12
13 -export const getCustomCode = params =>{return http.post(`/nmms-server-import/nmms/mt1201/selectCustomcode`,params)} 13 +export const getCustomCode = params =>{return http.get(`/nmms-server-import/nmms/mt1201/selectCustomcode`,params)}
@@ -91,21 +91,26 @@ @@ -91,21 +91,26 @@
91 </el-table-column> 91 </el-table-column>
92 <el-table-column label="状态" width="100" align="center"> 92 <el-table-column label="状态" width="100" align="center">
93 <template slot-scope="scope"> 93 <template slot-scope="scope">
94 - <span v-if="scope.row.status ==='01'">未发送</span>  
95 - <span v-if="scope.row.status ==='02'">已发舱单报</span>  
96 - <span v-if="scope.row.status ==='04'">已发送</span> 94 + <span v-if="scope.row.status ==='01'">接受申报</span>
  95 + <span v-if="scope.row.status ==='02'">待人工审核</span>
  96 + <span v-if="scope.row.status ==='03'">退单</span>
97 <span v-if="scope.row.status ==='05'">舱单报退单</span> 97 <span v-if="scope.row.status ==='05'">舱单报退单</span>
98 <span v-if="scope.row.status ==='06'">舱单转人工</span> 98 <span v-if="scope.row.status ==='06'">舱单转人工</span>
99 <span v-if="scope.row.status ==='07'">舱单报申报成功</span> 99 <span v-if="scope.row.status ==='07'">舱单报申报成功</span>
100 <span v-if="scope.row.status ==='08'">已发舱单删除报</span> 100 <span v-if="scope.row.status ==='08'">已发舱单删除报</span>
101 <span v-if="scope.row.status ==='09'">舱单删除报退单</span> 101 <span v-if="scope.row.status ==='09'">舱单删除报退单</span>
102 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span> 102 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span>
103 - <span v-if="scope.row.status ==='11'">舱单删除成功</span>  
104 - <span v-if="scope.row.status ==='12'">已发舱单修改报</span>  
105 - <span v-if="scope.row.status ==='13'">舱单修改报退单</span> 103 + <span v-if="scope.row.status ==='11'">放行</span>
  104 + <span v-if="scope.row.status ==='12'">拒装</span>
  105 + <span v-if="scope.row.status ==='13'">禁卸</span>
106 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span> 106 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span>
107 <span v-if="scope.row.status ==='15'">舱单修改报成功</span> 107 <span v-if="scope.row.status ==='15'">舱单修改报成功</span>
108 <span v-if="scope.row.status ==='16'">海关已存在</span> 108 <span v-if="scope.row.status ==='16'">海关已存在</span>
  109 + <span v-if="scope.row.status ==='21'">可自动发送</span>
  110 + <span v-if="scope.row.status ==='22'">未发送</span>
  111 + <span v-if="scope.row.status ==='23'">已发送新增报</span>
  112 + <span v-if="scope.row.status ==='24'">已发送删除报</span>
  113 + <span v-if="scope.row.status ==='25'">已发送修改报</span>
109 </template> 114 </template>
110 </el-table-column> 115 </el-table-column>
111 <el-table-column prop="receipt" label="回执信息" width="180" align="center"> 116 <el-table-column prop="receipt" label="回执信息" width="180" align="center">
@@ -115,13 +120,13 @@ @@ -115,13 +120,13 @@
115 </el-table-column> 120 </el-table-column>
116 <el-table-column prop="operation" label="操作" align="center"> 121 <el-table-column prop="operation" label="操作" align="center">
117 <template slot-scope="scope"> 122 <template slot-scope="scope">
118 - <el-button size="mini" @click="handleSend(scope.row)">收发明细</el-button>  
119 - <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='01'">编辑</el-button> 123 + <el-button size="mini" @click="handleSendDesc(scope.row)">收发明细</el-button>
  124 + <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='22'">编辑</el-button>
120 <el-button size="mini" type="primary" @click="handleSendAwb(scope.row)" 125 <el-button size="mini" type="primary" @click="handleSendAwb(scope.row)"
121 - :disabled="scope.row.status !=='01'">发送舱单报</el-button> 126 + :disabled="scope.row.status !=='22'">发送舱单报</el-button>
122 <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单</el-button> 127 <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单</el-button>
123 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)" 128 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)"
124 - :disabled="scope.row.status ==='01'">修改状态</el-button> 129 + :disabled="scope.row.status ==='22'">更改状态</el-button>
125 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button> 130 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button>
126 </template> 131 </template>
127 </el-table-column> 132 </el-table-column>
@@ -184,7 +189,8 @@ @@ -184,7 +189,8 @@
184 <el-row> 189 <el-row>
185 <el-col :span="7.5"> 190 <el-col :span="7.5">
186 <el-form-item label="起始站" prop="originstation"> 191 <el-form-item label="起始站" prop="originstation">
187 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="arriveModel.originstation"> 192 + <el-select filterable clearable placeholder="请选择起始站" :remote-method="remoteMethodAirport"
  193 + allow-create v-model="originstation" remote>
188 <el-option v-for="item in airportCode" 194 <el-option v-for="item in airportCode"
189 :key="item.airportid" :label="item.airportid" 195 :key="item.airportid" :label="item.airportid"
190 :value="item.airportid" :disabled="dialogFormVisible === 'update'"> 196 :value="item.airportid" :disabled="dialogFormVisible === 'update'">
@@ -196,7 +202,8 @@ @@ -196,7 +202,8 @@
196 </el-col> 202 </el-col>
197 <el-col :span="7.5"> 203 <el-col :span="7.5">
198 <el-form-item label="目的站" prop="destinationstation"> 204 <el-form-item label="目的站" prop="destinationstation">
199 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="arriveModel.destinationstation"> 205 + <el-select filterable clearable placeholder="请选择起始站" :remote-method="remoteMethodAirport"
  206 + allow-create v-model="destinationstation" remote>
200 <el-option v-for="item in airportCode" 207 <el-option v-for="item in airportCode"
201 :key="item.airportid" :label="item.airportid" 208 :key="item.airportid" :label="item.airportid"
202 :value="item.airportid" :disabled="dialogFormVisible === 'update'"> 209 :value="item.airportid" :disabled="dialogFormVisible === 'update'">
@@ -237,7 +244,8 @@ @@ -237,7 +244,8 @@
237 </el-col> 244 </el-col>
238 <el-col :span="7.5"> 245 <el-col :span="7.5">
239 <el-form-item label="海关关区" prop="customcode"> 246 <el-form-item label="海关关区" prop="customcode">
240 - <el-select v-model="arriveModel.customcode" placeholder="请选择关区代码" filterable clearable 247 + <el-select v-model="arriveModel.customcode" placeholder="请选择关区代码" :loading="customLoading"
  248 + filterable clearable remote :remote-method="remoteMethodCustomCode"
241 :disabled="dialogStatus === 'addAwbh'"> 249 :disabled="dialogStatus === 'addAwbh'">
242 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode" 250 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode"
243 :value="item.customcode"> 251 :value="item.customcode">
@@ -404,6 +412,7 @@ @@ -404,6 +412,7 @@
404 dialogFormVisible: false, 412 dialogFormVisible: false,
405 dialogDeleteVisible: false, 413 dialogDeleteVisible: false,
406 listLoading: false, 414 listLoading: false,
  415 + customLoading: false,
407 arriveRoles: { 416 arriveRoles: {
408 awba: [{required: true, trigger: 'blur', validator: validatorAwb}], 417 awba: [{required: true, trigger: 'blur', validator: validatorAwb}],
409 awbh: [{required: true, trigger: 'blur', validator: validatorAwbh}], 418 awbh: [{required: true, trigger: 'blur', validator: validatorAwbh}],
@@ -464,8 +473,6 @@ @@ -464,8 +473,6 @@
464 this.arriveQuery.destinationstation = this.$route.params.flightData.destinationstation 473 this.arriveQuery.destinationstation = this.$route.params.flightData.destinationstation
465 this.getList() 474 this.getList()
466 } 475 }
467 - this.getAirportCode()  
468 - this.getCustomCode()  
469 let username = JSON.parse(sessionStorage.getItem('user')).username 476 let username = JSON.parse(sessionStorage.getItem('user')).username
470 if (username === 'admin') { 477 if (username === 'admin') {
471 this.isAdmin = true 478 this.isAdmin = true
@@ -707,14 +714,14 @@ @@ -707,14 +714,14 @@
707 this.dialogDeleteVisible = false 714 this.dialogDeleteVisible = false
708 this.getList() 715 this.getList()
709 } else { 716 } else {
710 - Message.success(res.data.respMessage) 717 + Message.error(res.data.respMessage)
711 } 718 }
712 }) 719 })
713 } 720 }
714 }) 721 })
715 }, 722 },
716 // 收发明细 723 // 收发明细
717 - handleSend(row) { 724 + handleSendDesc(row) {
718 const resQuery = { 725 const resQuery = {
719 carrier: row.carrier, 726 carrier: row.carrier,
720 flightNo: row.flightno, 727 flightNo: row.flightno,
@@ -728,7 +735,7 @@ @@ -728,7 +735,7 @@
728 this.detailData = res.data 735 this.detailData = res.data
729 }) 736 })
730 }, 737 },
731 - //发送删除报 738 + //删除运单
732 handleAwbDelete(row) { 739 handleAwbDelete(row) {
733 this.$confirm("是否删除", "确认消息", { 740 this.$confirm("是否删除", "确认消息", {
734 distinguishCancelAndClose: true, 741 distinguishCancelAndClose: true,
@@ -789,16 +796,41 @@ @@ -789,16 +796,41 @@
789 }) 796 })
790 }) 797 })
791 }, 798 },
792 - getAirportCode(){  
793 - getAirportCode().then(res=>{  
794 - this.airportCode = res.data.data  
795 - }) 799 + //获取机场三字码
  800 + remoteMethodAirport(query){
  801 + this.airportCode = []
  802 + if (query !== '') {
  803 + this.listLoading = true
  804 + getAirportCode({airportid: query}).then(res => {
  805 + if(res !== null){
  806 + setTimeout(() => {
  807 + this.listLoading = false
  808 + this.airportCode = res.data.data
  809 + }, 200)
  810 + }
  811 + })
  812 + } else {
  813 + this.airportCode = []
  814 + }
796 }, 815 },
797 - getCustomCode(){  
798 - getCustomCode().then(res =>{  
799 - this.customCodeList = res.data.data  
800 - }) 816 + //关区代码
  817 + remoteMethodCustomCode(query){
  818 + this.customCodeList = []
  819 + if (query !== '') {
  820 + this.customLoading = true
  821 + getCustomCode({customcode: query}).then(res => {
  822 + if(res !== null){
  823 + setTimeout(() => {
  824 + this.customLoading = false
  825 + this.customCodeList = res.data.data
  826 + }, 200)
  827 + }
  828 + })
  829 + } else {
  830 + this.airportCode = []
  831 + }
801 }, 832 },
  833 +
802 // 携数据跳转 新增运抵 834 // 携数据跳转 新增运抵
803 handleAddArrive() { 835 handleAddArrive() {
804 const row = { 836 const row = {
@@ -27,7 +27,7 @@ @@ -27,7 +27,7 @@
27 </el-col> 27 </el-col>
28 <el-col :span="4"> 28 <el-col :span="4">
29 <el-select 29 <el-select
30 - :remote-method="remoteMethod" 30 + :remote-method="remoteMethodAirport"
31 :loading="listLoading" 31 :loading="listLoading"
32 v-model="flight.originstation" 32 v-model="flight.originstation"
33 allow-create 33 allow-create
@@ -36,17 +36,17 @@ @@ -36,17 +36,17 @@
36 placeholder="请选择起始站" clearable> 36 placeholder="请选择起始站" clearable>
37 <el-option 37 <el-option
38 v-for="item in airportCode" 38 v-for="item in airportCode"
39 - :key="item.value"  
40 - :label="item.value"  
41 - :value="item.value">  
42 - <span style="float: left">{{ item.label }}</span>  
43 - <span style="float: right; color: #8492a6; font-size: 13px">{{ item.value }}</span> 39 + :key="item.airportid"
  40 + :label="item.airportid"
  41 + :value="item.airportid">
  42 + <span style="float: left">{{ item.airportdescchn }}</span>
  43 + <span style="float: right; color: #8492a6; font-size: 13px">{{ item.airportid }}</span>
44 </el-option> 44 </el-option>
45 </el-select> 45 </el-select>
46 </el-col> 46 </el-col>
47 <el-col :span="4" style="margin-left: 20px"> 47 <el-col :span="4" style="margin-left: 20px">
48 <el-select 48 <el-select
49 - :remote-method="remoteMethod" 49 + :remote-method="remoteMethodAirport"
50 :loading="listLoading" 50 :loading="listLoading"
51 v-model="flight.destinationstation" 51 v-model="flight.destinationstation"
52 allow-create 52 allow-create
@@ -55,11 +55,11 @@ @@ -55,11 +55,11 @@
55 placeholder="请选择目的站" clearable> 55 placeholder="请选择目的站" clearable>
56 <el-option 56 <el-option
57 v-for="item in airportCode" 57 v-for="item in airportCode"
58 - :key="item.value"  
59 - :label="item.value"  
60 - :value="item.value">  
61 - <span style="float: left">{{ item.label }}</span>  
62 - <span style="float: right; color: #8492a6; font-size: 13px">{{ item.value }}</span> 58 + :key="item.airportid"
  59 + :label="item.airportdescchn"
  60 + :value="item.airportid">
  61 + <span style="float: left">{{ item.airportdescchn }}</span>
  62 + <span style="float: right; color: #8492a6; font-size: 13px">{{ item.airportid }}</span>
63 </el-option> 63 </el-option>
64 </el-select> 64 </el-select>
65 </el-col> 65 </el-col>
@@ -83,7 +83,8 @@ @@ -83,7 +83,8 @@
83 83
84 <script> 84 <script>
85 import {Message} from "element-ui"; 85 import {Message} from "element-ui";
86 - import {getCountry,getAirportCode} from "@/api/country"; 86 + import {getCountry, getAirportCode} from "@/api/country";
  87 +
87 export default { 88 export default {
88 name: 'ExitFlightDesc', 89 name: 'ExitFlightDesc',
89 data() { 90 data() {
@@ -94,18 +95,18 @@ @@ -94,18 +95,18 @@
94 originstation: undefined, 95 originstation: undefined,
95 destinationstation: undefined, 96 destinationstation: undefined,
96 awba: undefined, 97 awba: undefined,
97 - messageType:undefined 98 + messageType: undefined
98 }, 99 },
99 btnStatus: true, 100 btnStatus: true,
100 listLoading: false, 101 listLoading: false,
101 - airportList:[], 102 + airportList: [],
102 airportResultCode: [], 103 airportResultCode: [],
103 airportCode: [], 104 airportCode: [],
104 }; 105 };
105 }, 106 },
106 created() { 107 created() {
107 if (this.$route.params.scopeRow !== undefined) { 108 if (this.$route.params.scopeRow !== undefined) {
108 - if(this.$route.params.scopeRow.carrier === undefined){ 109 + if (this.$route.params.scopeRow.carrier === undefined) {
109 this.flight.flightno = this.$route.params.scopeRow.flightno 110 this.flight.flightno = this.$route.params.scopeRow.flightno
110 } else { 111 } else {
111 this.flight.flightno = this.$route.params.scopeRow.carrier + this.$route.params.scopeRow.flightno 112 this.flight.flightno = this.$route.params.scopeRow.carrier + this.$route.params.scopeRow.flightno
@@ -114,70 +115,68 @@ @@ -114,70 +115,68 @@
114 this.flight.originstation = this.$route.params.scopeRow.originstation 115 this.flight.originstation = this.$route.params.scopeRow.originstation
115 this.flight.destinationstation = this.$route.params.scopeRow.destinationstation 116 this.flight.destinationstation = this.$route.params.scopeRow.destinationstation
116 this.flight.messageType = this.$route.params.scopeRow.messageType 117 this.flight.messageType = this.$route.params.scopeRow.messageType
117 - if(this.$route.params.scopeRow.awba !== undefined){  
118 - this.flight.awba = this.$route.params.scopeRow.awba.replace('-','') 118 + if (this.$route.params.scopeRow.awba !== undefined) {
  119 + this.flight.awba = this.$route.params.scopeRow.awba.replace('-', '')
119 } 120 }
120 } 121 }
121 - this.getCountryList()  
122 - this.getAirport()  
123 - },  
124 - mounted() {  
125 - // 延迟加载,否则会出错  
126 - setTimeout(() => {  
127 - this.airportResultCode = this.airportCode.map(item =>{  
128 - return {label: item.airportdescchn,value: item.airportid}  
129 - })  
130 - }, 6000)  
131 }, 122 },
132 - computed:{  
133 - flightno : { 123 + // mounted() {
  124 + // // 延迟加载,否则会出错
  125 + // setTimeout(() => {
  126 + // this.airportResultCode = this.airportCode.map(item =>{
  127 + // return {label: item.airportdescchn,value: item.airportid}
  128 + // })
  129 + // }, 6000)
  130 + // },
  131 + computed: {
  132 + flightno: {
134 get: function () { 133 get: function () {
135 return this.flight.flightno 134 return this.flight.flightno
136 }, 135 },
137 - set: function(val){ 136 + set: function (val) {
138 this.flight.flightno = val.toUpperCase().trim() 137 this.flight.flightno = val.toUpperCase().trim()
139 } 138 }
140 }, 139 },
141 - originstation :{ 140 + originstation: {
142 get: function () { 141 get: function () {
143 return this.flight.originstation 142 return this.flight.originstation
144 }, 143 },
145 - set: function(val){ 144 + set: function (val) {
146 this.flight.originstation = val.toUpperCase().trim() 145 this.flight.originstation = val.toUpperCase().trim()
147 } 146 }
148 }, 147 },
149 - destinationstation :{ 148 + destinationstation: {
150 get: function () { 149 get: function () {
151 return this.flight.destinationstation 150 return this.flight.destinationstation
152 }, 151 },
153 - set: function(val){ 152 + set: function (val) {
154 this.flight.destinationstation = val.toUpperCase().trim() 153 this.flight.destinationstation = val.toUpperCase().trim()
155 } 154 }
156 }, 155 },
157 - awba :{ 156 + awba: {
158 get: function () { 157 get: function () {
159 return this.flight.awba 158 return this.flight.awba
160 }, 159 },
161 - set: function(val){ 160 + set: function (val) {
162 this.flight.awba = val.trim() 161 this.flight.awba = val.trim()
163 } 162 }
164 } 163 }
165 }, 164 },
166 methods: { 165 methods: {
167 nstep() { 166 nstep() {
168 - if (this.flight.flightno !== undefined && this.flight.flightno !==''&&  
169 - this.flight.flightdate !== undefined &&this.flight.flightdate !== '' &&  
170 - this.flight.destinationstation !== undefined && this.flight.destinationstation !==''&&  
171 - this.flight.originstation !== undefined && this.flight.originstation !=='') {  
172 - if(this.flight.awba !== '' && this.flight.awba !== undefined){ 167 + if (this.flight.flightno !== undefined && this.flight.flightno !== '' &&
  168 + this.flight.flightdate !== undefined && this.flight.flightdate !== '' &&
  169 + this.flight.destinationstation !== undefined && this.flight.destinationstation !== '' &&
  170 + this.flight.originstation !== undefined && this.flight.originstation !== '') {
  171 + if (this.flight.awba !== '' && this.flight.awba !== undefined) {
173 const manifest = this.flight.awba; 172 const manifest = this.flight.awba;
174 const reg = /^[0-9]{11}$/ 173 const reg = /^[0-9]{11}$/
175 - if(!reg.test(manifest)){ 174 + if (!reg.test(manifest)) {
176 Message.error("主单号只支持数字并且最多11位") 175 Message.error("主单号只支持数字并且最多11位")
177 return 176 return
178 } 177 }
179 - const num = (manifest.substring(3,10)) % 7  
180 - if(num !== eval(manifest.substring(10))){ 178 + const num = (manifest.substring(3, 10)) % 7
  179 + if (num !== eval(manifest.substring(10))) {
181 Message.error("主单号不符合模7校验") 180 Message.error("主单号不符合模7校验")
182 return 181 return
183 } 182 }
@@ -185,43 +184,35 @@ @@ -185,43 +184,35 @@
185 this.flight.awba = undefined 184 this.flight.awba = undefined
186 } 185 }
187 186
188 - if(this.flight.messageType ==="MT5202"){ 187 + if (this.flight.messageType === "MT5202") {
189 this.$router.push({name: '出港理货', params: {flightData: this.flight}}); 188 this.$router.push({name: '出港理货', params: {flightData: this.flight}});
190 } 189 }
191 - if(this.flight.messageType ==="MT4201"){ 190 + if (this.flight.messageType === "MT4201") {
192 this.$router.push({name: '出港装载', params: {flightData: this.flight}}); 191 this.$router.push({name: '出港装载', params: {flightData: this.flight}});
193 } 192 }
194 - if(this.flight.messageType ==="MT3201"){  
195 - this.$router.push({name:'出港运抵',params:{flightData: this.flight}}) 193 + if (this.flight.messageType === "MT3201") {
  194 + this.$router.push({name: '出港运抵', params: {flightData: this.flight}})
196 } 195 }
197 - if(this.flight.messageType ==="MT2201"){  
198 - this.$router.push({name:'出港预配舱单',params:{flightData: this.flight}}) 196 + if (this.flight.messageType === "MT2201") {
  197 + this.$router.push({name: '出港预配舱单', params: {flightData: this.flight}})
199 } 198 }
200 } else { 199 } else {
201 Message.warning("请将航班信息填写完整") 200 Message.warning("请将航班信息填写完整")
202 } 201 }
203 202
204 }, 203 },
205 -  
206 - getAirport(){  
207 - getAirportCode().then(res =>{  
208 - this.airportCode = res.data.data  
209 - })  
210 - },  
211 - getCountryList() {  
212 - getCountry().then(res => {  
213 - this.countryList = res.data.dataList  
214 - })  
215 - },  
216 - remoteMethod(query) { 204 + remoteMethodAirport(query) {
  205 + this.airportCode = []
217 if (query !== '') { 206 if (query !== '') {
218 this.listLoading = true 207 this.listLoading = true
219 - setTimeout(() => {  
220 - this.listLoading = false  
221 - this.airportCode = this.airportResultCode.filter(item => {  
222 - return item.value.trim().indexOf(query.toUpperCase()) > -1  
223 - })  
224 - }, 200) 208 + getAirportCode({airportid: query}).then(res => {
  209 + if(res !== null){
  210 + setTimeout(() => {
  211 + this.listLoading = false
  212 + this.airportCode = res.data.data
  213 + }, 200)
  214 + }
  215 + })
225 } else { 216 } else {
226 this.airportCode = [] 217 this.airportCode = []
227 } 218 }
@@ -49,18 +49,14 @@ @@ -49,18 +49,14 @@
49 <div class="grid-content content" style="margin-top: 6px">出港装载明细</div> 49 <div class="grid-content content" style="margin-top: 6px">出港装载明细</div>
50 </el-col> 50 </el-col>
51 </el-row> 51 </el-row>
52 - <tree-table v-loading="listLoading" :data="loadingData" :eval-func="func" :expand-all="true" stripe  
53 - style="font-size: 12px" border @selection-change="handleSelectionChange"> 52 + <el-table v-loading="listLoading" :data="loadingData"stripe style="font-size: 12px"
  53 + border @selection-change="handleSelectionChange">
  54 + <el-table-column type="selection" width="60"></el-table-column>
54 <el-table-column label="主单号" width="160" align="center"> 55 <el-table-column label="主单号" width="160" align="center">
55 <template slot-scope="scope"> 56 <template slot-scope="scope">
56 <span>{{scope.row.awba}}</span> 57 <span>{{scope.row.awba}}</span>
57 </template> 58 </template>
58 </el-table-column> 59 </el-table-column>
59 - <!--<el-table-column label="分单号" width="160" align="center">-->  
60 - <!--<template slot-scope="scope">-->  
61 - <!--<span>{{scope.row.awbh}}</span>-->  
62 - <!--</template>-->  
63 - <!--</el-table-column>-->  
64 <el-table-column label="运载件数" width="70" align="center"> 60 <el-table-column label="运载件数" width="70" align="center">
65 <template slot-scope="scope"> 61 <template slot-scope="scope">
66 <span>{{scope.row.lodingpiece}}</span> 62 <span>{{scope.row.lodingpiece}}</span>
@@ -83,44 +79,50 @@ @@ -83,44 +79,50 @@
83 </el-table-column> 79 </el-table-column>
84 <el-table-column label="状态" width="100" align="center"> 80 <el-table-column label="状态" width="100" align="center">
85 <template slot-scope="scope"> 81 <template slot-scope="scope">
86 - <span v-if="scope.row.status ==='01'">未发送</span>  
87 - <span v-if="scope.row.status ==='02'">已发舱单报</span> 82 + <span v-if="scope.row.status ==='01'">接受申报</span>
  83 + <span v-if="scope.row.status ==='02'">待人工审核</span>
  84 + <span v-if="scope.row.status ==='03'">退单</span>
88 <span v-if="scope.row.status ==='05'">舱单报退单</span> 85 <span v-if="scope.row.status ==='05'">舱单报退单</span>
89 <span v-if="scope.row.status ==='06'">舱单转人工</span> 86 <span v-if="scope.row.status ==='06'">舱单转人工</span>
90 <span v-if="scope.row.status ==='07'">舱单报申报成功</span> 87 <span v-if="scope.row.status ==='07'">舱单报申报成功</span>
91 <span v-if="scope.row.status ==='08'">已发舱单删除报</span> 88 <span v-if="scope.row.status ==='08'">已发舱单删除报</span>
92 <span v-if="scope.row.status ==='09'">舱单删除报退单</span> 89 <span v-if="scope.row.status ==='09'">舱单删除报退单</span>
93 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span> 90 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span>
94 - <span v-if="scope.row.status ==='11'">舱单删除成功</span>  
95 - <span v-if="scope.row.status ==='12'">已发舱单修改报</span>  
96 - <span v-if="scope.row.status ==='13'">舱单修改报退单</span> 91 + <span v-if="scope.row.status ==='11'">放行</span>
  92 + <span v-if="scope.row.status ==='12'">拒装</span>
  93 + <span v-if="scope.row.status ==='13'">禁卸</span>
97 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span> 94 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span>
98 <span v-if="scope.row.status ==='15'">舱单修改报成功</span> 95 <span v-if="scope.row.status ==='15'">舱单修改报成功</span>
99 <span v-if="scope.row.status ==='16'">海关已存在</span> 96 <span v-if="scope.row.status ==='16'">海关已存在</span>
  97 + <span v-if="scope.row.status ==='21'">可自动发送</span>
  98 + <span v-if="scope.row.status ==='22'">未发送</span>
  99 + <span v-if="scope.row.status ==='23'">已发送新增报</span>
  100 + <span v-if="scope.row.status ==='24'">已发送删除报</span>
  101 + <span v-if="scope.row.status ==='25'">已发送修改报</span>
100 </template> 102 </template>
101 </el-table-column> 103 </el-table-column>
102 - <el-table-column prop="receipt" label="回执信息" width="180" align="center"> 104 + <el-table-column label="回执信息" width="180" align="center">
103 <template slot-scope="scope"> 105 <template slot-scope="scope">
104 <span>{{scope.row.ext5}}</span> 106 <span>{{scope.row.ext5}}</span>
105 </template> 107 </template>
106 </el-table-column> 108 </el-table-column>
107 - <el-table-column prop="operation" label="操作" align="center"> 109 + <el-table-column label="操作" align="center">
108 <template slot-scope="scope"> 110 <template slot-scope="scope">
109 <el-button size="mini" @click="handleSend(scope.row)">收发明细</el-button> 111 <el-button size="mini" @click="handleSend(scope.row)">收发明细</el-button>
110 - <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='01'">编辑 112 + <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='22'">编辑
111 </el-button> 113 </el-button>
112 <el-button size="mini" type="primary" @click="handleSendAwb(scope.row)" 114 <el-button size="mini" type="primary" @click="handleSendAwb(scope.row)"
113 - :disabled="scope.row.status !=='00'">发送舱单报 115 + :disabled="scope.row.status !=='22'">发送舱单报
114 </el-button> 116 </el-button>
115 <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单 117 <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单
116 </el-button> 118 </el-button>
117 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)" 119 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)"
118 - :disabled="scope.row.status ==='00'">更改状态 120 + :disabled="scope.row.status ==='22'">更改状态
119 </el-button> 121 </el-button>
120 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button> 122 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button>
121 </template> 123 </template>
122 </el-table-column> 124 </el-table-column>
123 - </tree-table> 125 + </el-table>
124 <div class="btnFoot"> 126 <div class="btnFoot">
125 <el-row> 127 <el-row>
126 <el-button type="primary" size="mini" 128 <el-button type="primary" size="mini"
@@ -164,7 +166,8 @@ @@ -164,7 +166,8 @@
164 166
165 <el-col :span="7.5"> 167 <el-col :span="7.5">
166 <el-form-item label="起始站" prop="originstation"> 168 <el-form-item label="起始站" prop="originstation">
167 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="loadingModel.originstation"> 169 + <el-select filterable clearable placeholder="请选择起始站" :remote-method="remoteMethodAirport"
  170 + allow-create v-model="originstation" remote>
168 <el-option v-for="item in airportCode" 171 <el-option v-for="item in airportCode"
169 :key="item.airportid" :label="item.airportid" 172 :key="item.airportid" :label="item.airportid"
170 :value="item.airportid" :disabled="dialogStatus === 'update'"> 173 :value="item.airportid" :disabled="dialogStatus === 'update'">
@@ -176,7 +179,8 @@ @@ -176,7 +179,8 @@
176 </el-col> 179 </el-col>
177 <el-col :span="7.5"> 180 <el-col :span="7.5">
178 <el-form-item label="目的站" prop="originstation"> 181 <el-form-item label="目的站" prop="originstation">
179 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="loadingModel.destinationstation"> 182 + <el-select filterable clearable placeholder="请选择起始站" :remote-method="remoteMethodAirport"
  183 + allow-create v-model="destinationstation" remote>
180 <el-option v-for="item in airportCode" 184 <el-option v-for="item in airportCode"
181 :key="item.airportid" :label="item.airportid" 185 :key="item.airportid" :label="item.airportid"
182 :value="item.airportid" :disabled="dialogStatus === 'update'"> 186 :value="item.airportid" :disabled="dialogStatus === 'update'">
@@ -228,7 +232,8 @@ @@ -228,7 +232,8 @@
228 </el-col> 232 </el-col>
229 <el-col :span="7.5"> 233 <el-col :span="7.5">
230 <el-form-item label="海关关区" prop="customcode"> 234 <el-form-item label="海关关区" prop="customcode">
231 - <el-select v-model="loadingModel.customcode" placeholder="请选择关区代码" filterable clearable 235 + <el-select v-model="loadingModel.customcode" placeholder="请选择关区代码"
  236 + filterable clearable remote :remote-method="remoteMethodCustomCode" :loading="customLoading"
232 :disabled="dialogStatus === 'addAwbh'"> 237 :disabled="dialogStatus === 'addAwbh'">
233 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode" 238 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode"
234 :value="item.customcode"> 239 :value="item.customcode">
@@ -321,8 +326,6 @@ @@ -321,8 +326,6 @@
321 </div> 326 </div>
322 </template> 327 </template>
323 <script> 328 <script>
324 - import treeTable from '@/components/TreeTable'  
325 - import treeToArray from '@/utils/customEval'  
326 import Pagination from '@/components/Pagination' 329 import Pagination from '@/components/Pagination'
327 import {getCustomCode,getAirportCode} from "@/api/country"; 330 import {getCustomCode,getAirportCode} from "@/api/country";
328 import { 331 import {
@@ -337,10 +340,10 @@ @@ -337,10 +340,10 @@
337 validAlphabetsAndSpanceKey, 340 validAlphabetsAndSpanceKey,
338 validatorNum 341 validatorNum
339 } from "@/utils/validate" 342 } from "@/utils/validate"
340 - 343 + import {getResponseForParam} from '@/api/responseDetail'
341 export default { 344 export default {
342 name: "ExitLoading", 345 name: "ExitLoading",
343 - components: {treeTable, Pagination}, 346 + components: { Pagination},
344 inject: ['reload'], 347 inject: ['reload'],
345 data() { 348 data() {
346 const validatorAwb = (rule, value, callback) => { 349 const validatorAwb = (rule, value, callback) => {
@@ -374,7 +377,6 @@ @@ -374,7 +377,6 @@
374 callback() 377 callback()
375 } 378 }
376 return { 379 return {
377 - func: treeToArray,  
378 total: 1, 380 total: 1,
379 isAdmin: false, 381 isAdmin: false,
380 dialogMap: { 382 dialogMap: {
@@ -387,6 +389,7 @@ @@ -387,6 +389,7 @@
387 dialogTableVisible: false, 389 dialogTableVisible: false,
388 dialogFormVisible: false, 390 dialogFormVisible: false,
389 dialogDeleteVisible: false, 391 dialogDeleteVisible: false,
  392 + customLoading: false,
390 listLoading: false, 393 listLoading: false,
391 loadingQuery: { 394 loadingQuery: {
392 pageSize: 1, 395 pageSize: 1,
@@ -467,8 +470,6 @@ @@ -467,8 +470,6 @@
467 this.loadingQuery.destinationstation = this.$route.params.flightData.destinationstation 470 this.loadingQuery.destinationstation = this.$route.params.flightData.destinationstation
468 this.getList() 471 this.getList()
469 } 472 }
470 - this.getAirportCode()  
471 - this.getCustomCode()  
472 let username = JSON.parse(sessionStorage.getItem('user')).username 473 let username = JSON.parse(sessionStorage.getItem('user')).username
473 if (username === 'admin') { 474 if (username === 'admin') {
474 this.isAdmin = true 475 this.isAdmin = true
@@ -560,7 +561,7 @@ @@ -560,7 +561,7 @@
560 this.getList() 561 this.getList()
561 }, 562 },
562 // 收发明细 563 // 收发明细
563 - handleSend() { 564 + handleSend(row) {
564 const resQuery = { 565 const resQuery = {
565 carrier: row.carrier, 566 carrier: row.carrier,
566 flightNo: row.flightno, 567 flightNo: row.flightno,
@@ -782,15 +783,39 @@ @@ -782,15 +783,39 @@
782 } 783 }
783 }) 784 })
784 }, 785 },
785 - getAirportCode(){  
786 - getAirportCode().then(res=>{  
787 - this.airportCode = res.data.data  
788 - }) 786 + //获取机场三字码
  787 + remoteMethodAirport(query){
  788 + this.airportCode = []
  789 + if (query !== '') {
  790 + this.listLoading = true
  791 + getAirportCode({airportid: query}).then(res => {
  792 + if(res !== null){
  793 + setTimeout(() => {
  794 + this.listLoading = false
  795 + this.airportCode = res.data.data
  796 + }, 200)
  797 + }
  798 + })
  799 + } else {
  800 + this.airportCode = []
  801 + }
789 }, 802 },
790 - getCustomCode(){  
791 - getCustomCode().then(res =>{  
792 - this.customCodeList = res.data.data  
793 - }) 803 + //关区代码
  804 + remoteMethodCustomCode(query){
  805 + this.customCodeList = []
  806 + if (query !== '') {
  807 + this.customLoading = true
  808 + getCustomCode({customcode: query}).then(res => {
  809 + if(res !== null){
  810 + setTimeout(() => {
  811 + this.customLoading = false
  812 + this.customCodeList = res.data.data
  813 + }, 200)
  814 + }
  815 + })
  816 + } else {
  817 + this.airportCode = []
  818 + }
794 }, 819 },
795 handleAddLoading() { 820 handleAddLoading() {
796 const row = { 821 const row = {
@@ -94,21 +94,26 @@ @@ -94,21 +94,26 @@
94 <!--</el-table-column>--> 94 <!--</el-table-column>-->
95 <el-table-column label="状态" width="100" align="center"> 95 <el-table-column label="状态" width="100" align="center">
96 <template slot-scope="scope"> 96 <template slot-scope="scope">
97 - <span v-if="scope.row.status ==='01'">未发送</span>  
98 - <span v-if="scope.row.status ==='02'">已发舱单报</span>  
99 - <span v-if="scope.row.status ==='04'">已发送</span> 97 + <span v-if="scope.row.status ==='01'">接受申报</span>
  98 + <span v-if="scope.row.status ==='02'">待人工审核</span>
  99 + <span v-if="scope.row.status ==='03'">退单</span>
100 <span v-if="scope.row.status ==='05'">舱单报退单</span> 100 <span v-if="scope.row.status ==='05'">舱单报退单</span>
101 <span v-if="scope.row.status ==='06'">舱单转人工</span> 101 <span v-if="scope.row.status ==='06'">舱单转人工</span>
102 <span v-if="scope.row.status ==='07'">舱单报申报成功</span> 102 <span v-if="scope.row.status ==='07'">舱单报申报成功</span>
103 <span v-if="scope.row.status ==='08'">已发舱单删除报</span> 103 <span v-if="scope.row.status ==='08'">已发舱单删除报</span>
104 <span v-if="scope.row.status ==='09'">舱单删除报退单</span> 104 <span v-if="scope.row.status ==='09'">舱单删除报退单</span>
105 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span> 105 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span>
106 - <span v-if="scope.row.status ==='11'">舱单删除成功</span>  
107 - <span v-if="scope.row.status ==='12'">已发舱单修改报</span>  
108 - <span v-if="scope.row.status ==='13'">舱单修改报退单</span> 106 + <span v-if="scope.row.status ==='11'">放行</span>
  107 + <span v-if="scope.row.status ==='12'">拒装</span>
  108 + <span v-if="scope.row.status ==='13'">禁卸</span>
109 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span> 109 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span>
110 <span v-if="scope.row.status ==='15'">舱单修改报成功</span> 110 <span v-if="scope.row.status ==='15'">舱单修改报成功</span>
111 <span v-if="scope.row.status ==='16'">海关已存在</span> 111 <span v-if="scope.row.status ==='16'">海关已存在</span>
  112 + <span v-if="scope.row.status ==='21'">可自动发送</span>
  113 + <span v-if="scope.row.status ==='22'">未发送</span>
  114 + <span v-if="scope.row.status ==='23'">已发送新增报</span>
  115 + <span v-if="scope.row.status ==='24'">已发送删除报</span>
  116 + <span v-if="scope.row.status ==='25'">已发送修改报</span>
112 </template> 117 </template>
113 </el-table-column> 118 </el-table-column>
114 <el-table-column prop="receipt" label="回执信息" align="center"> 119 <el-table-column prop="receipt" label="回执信息" align="center">
@@ -119,19 +124,18 @@ @@ -119,19 +124,18 @@
119 </el-table-column> 124 </el-table-column>
120 <el-table-column label="操作" width="450"> 125 <el-table-column label="操作" width="450">
121 <template slot-scope="scope"> 126 <template slot-scope="scope">
122 - <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='01'">编辑</el-button> 127 + <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='22'">编辑</el-button>
123 <el-button size="mini" type="success" v-if="scope.row.awbh ===null" 128 <el-button size="mini" type="success" v-if="scope.row.awbh ===null"
124 @click="handleAddAwbh(scope.row)">新增分单 129 @click="handleAddAwbh(scope.row)">新增分单
125 </el-button> 130 </el-button>
126 <el-button size="mini" type="primary" @click="handleAwbSend(scope.row)" 131 <el-button size="mini" type="primary" @click="handleAwbSend(scope.row)"
127 - :disabled="scope.row.status !== '01'">发舱单报 132 + :disabled="scope.row.status !== '22'">发舱单报
128 </el-button> 133 </el-button>
129 <p></p> 134 <p></p>
130 <el-button size="mini" type="primary" @click="handleAwbEdit(scope.row)">发修改报</el-button> 135 <el-button size="mini" type="primary" @click="handleAwbEdit(scope.row)">发修改报</el-button>
131 - <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单  
132 - </el-button> 136 + <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单</el-button>
133 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)" 137 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)"
134 - :disabled="scope.row.status === '01'">更改状态 138 + :disabled="scope.row.status === '22'">更改状态
135 </el-button> 139 </el-button>
136 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button> 140 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button>
137 </template> 141 </template>
@@ -194,7 +198,14 @@ @@ -194,7 +198,14 @@
194 <el-row> 198 <el-row>
195 <el-col :span="7.5"> 199 <el-col :span="7.5">
196 <el-form-item label="起始站" prop="originstation"> 200 <el-form-item label="起始站" prop="originstation">
197 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="preModel.originstation"> 201 + <el-select
  202 + filterable
  203 + clearable
  204 + placeholder="请选择起始站"
  205 + :remote-method="remoteMethodAirport"
  206 + allow-create remote
  207 + v-model="originstation"
  208 + :loading="airportLoading">
198 <el-option v-for="item in airportCode" 209 <el-option v-for="item in airportCode"
199 :key="item.airportid" :label="item.airportid" 210 :key="item.airportid" :label="item.airportid"
200 :value="item.airportid" :disabled="dialogStatus === 'addAwbh'"> 211 :value="item.airportid" :disabled="dialogStatus === 'addAwbh'">
@@ -202,12 +213,12 @@ @@ -202,12 +213,12 @@
202 <span style="float: right; color: #8492a6; font-size: 13px">{{ item.airportid }}</span> 213 <span style="float: right; color: #8492a6; font-size: 13px">{{ item.airportid }}</span>
203 </el-option> 214 </el-option>
204 </el-select> 215 </el-select>
205 - <!--<el-input v-model="preModel.originstation" :disabled="dialogStatus === 'addAwbh'" clearable/>-->  
206 </el-form-item> 216 </el-form-item>
207 </el-col> 217 </el-col>
208 <el-col :span="7.5"> 218 <el-col :span="7.5">
209 <el-form-item label="目的站" prop="destinationstation"> 219 <el-form-item label="目的站" prop="destinationstation">
210 - <el-select filterable clearable placeholder="请选择目的站" allow-create v-model="preModel.destinationstation"> 220 + <el-select filterable clearable placeholder="请选择目的站" allow-create remote
  221 + v-model="destinationstation" :remote-method="remoteMethodAirport">
211 <el-option v-for="item in airportCode" 222 <el-option v-for="item in airportCode"
212 :key="item.airportid" :label="item.airportid" 223 :key="item.airportid" :label="item.airportid"
213 :value="item.airportid" :disabled="dialogStatus === 'addAwbh'" > 224 :value="item.airportid" :disabled="dialogStatus === 'addAwbh'" >
@@ -323,7 +334,8 @@ @@ -323,7 +334,8 @@
323 <el-row> 334 <el-row>
324 <el-col :span="7.5"> 335 <el-col :span="7.5">
325 <el-form-item label="关区代码" prop="customcode"> 336 <el-form-item label="关区代码" prop="customcode">
326 - <el-select v-model="preModel.customcode" placeholder="请选择关区代码" filterable clearable 337 + <el-select v-model="preModel.customcode" placeholder="请选择关区代码"
  338 + filterable clearable :remote-method="remoteMethodCustomCode" :loading="customLoading" remote
327 :disabled="dialogStatus === 'addAwbh'"> 339 :disabled="dialogStatus === 'addAwbh'">
328 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode" 340 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode"
329 :value="item.customcode"> 341 :value="item.customcode">
@@ -728,6 +740,8 @@ @@ -728,6 +740,8 @@
728 dialogTableVisible: false, 740 dialogTableVisible: false,
729 dialogDeleteVisble: false, 741 dialogDeleteVisble: false,
730 listLoading: false, 742 listLoading: false,
  743 + customLoading:false,
  744 + airportLoading:false,
731 disabledStatus: false, 745 disabledStatus: false,
732 dialogFormVisible: false, 746 dialogFormVisible: false,
733 countryOption: [], 747 countryOption: [],
@@ -868,8 +882,6 @@ @@ -868,8 +882,6 @@
868 this.getList() 882 this.getList()
869 } 883 }
870 this.getCountryList() 884 this.getCountryList()
871 - this.getAirportCode()  
872 - this.getCustomCode()  
873 let username = JSON.parse(sessionStorage.getItem('user')).username 885 let username = JSON.parse(sessionStorage.getItem('user')).username
874 if (username === 'admin') { 886 if (username === 'admin') {
875 this.isAdmin = true 887 this.isAdmin = true
@@ -1466,7 +1478,7 @@ @@ -1466,7 +1478,7 @@
1466 }) 1478 })
1467 }, 1479 },
1468 1480
1469 - //获取城市列表 1481 + //获取国家列表
1470 getCountryList() { 1482 getCountryList() {
1471 getCountry().then(res => { 1483 getCountry().then(res => {
1472 this.countryList = res.data.dataList 1484 this.countryList = res.data.dataList
@@ -1486,17 +1498,40 @@ @@ -1486,17 +1498,40 @@
1486 this.countryOption = [] 1498 this.countryOption = []
1487 } 1499 }
1488 }, 1500 },
1489 -  
1490 - getAirportCode(){  
1491 - getAirportCode().then(res=>{  
1492 - this.airportCode = res.data.data  
1493 - }) 1501 + remoteMethodAirport(query){
  1502 + this.airportCode = []
  1503 + if (query !== '') {
  1504 + this.airportLoading = true
  1505 + getAirportCode({airportid: query}).then(res => {
  1506 + if(res !== null){
  1507 + setTimeout(() => {
  1508 + this.airportLoading = false
  1509 + this.airportCode = res.data.data
  1510 + }, 200)
  1511 + }
  1512 + })
  1513 + } else {
  1514 + this.airportCode = []
  1515 + }
1494 }, 1516 },
1495 - getCustomCode(){  
1496 - getCustomCode().then(res =>{  
1497 - this.customCodeList = res.data.data  
1498 - }) 1517 +
  1518 + remoteMethodCustomCode(query){
  1519 + this.customCodeList = []
  1520 + if (query !== '') {
  1521 + this.customLoading = true
  1522 + getCustomCode({customcode: query}).then(res => {
  1523 + if(res !== null){
  1524 + setTimeout(() => {
  1525 + this.customLoading = false
  1526 + this.customCodeList = res.data.data
  1527 + }, 200)
  1528 + }
  1529 + })
  1530 + } else {
  1531 + this.airportCode = []
  1532 + }
1499 }, 1533 },
  1534 +
1500 handleAddpre() { 1535 handleAddpre() {
1501 const row = { 1536 const row = {
1502 'messageType': 'MT2201' 1537 'messageType': 'MT2201'
@@ -32,7 +32,7 @@ @@ -32,7 +32,7 @@
32 <div class="grid-content"> 32 <div class="grid-content">
33 <el-col :span="4"> 33 <el-col :span="4">
34 <div class="grid-content"> 34 <div class="grid-content">
35 - <el-input v-model="tidyQuery.awba" placeholder="请输入主单号"></el-input> 35 + <el-input v-model="tidyQuery.awba" placeholder="请输入主单号" clearable></el-input>
36 </div> 36 </div>
37 </el-col> 37 </el-col>
38 <div class="grid-content el-btn"> 38 <div class="grid-content el-btn">
@@ -58,7 +58,7 @@ @@ -58,7 +58,7 @@
58 <span>{{scope.row.awba}}</span> 58 <span>{{scope.row.awba}}</span>
59 </template> 59 </template>
60 </el-table-column> 60 </el-table-column>
61 - <el-table-column label="单号" width="120" align="center"> 61 + <el-table-column label="单号" width="120" align="center">
62 <template slot-scope="scope"> 62 <template slot-scope="scope">
63 <span>{{scope.row.awbh}}</span> 63 <span>{{scope.row.awbh}}</span>
64 </template> 64 </template>
@@ -80,38 +80,42 @@ @@ -80,38 +80,42 @@
80 </el-table-column> 80 </el-table-column>
81 <el-table-column label="状态" width="100" align="center"> 81 <el-table-column label="状态" width="100" align="center">
82 <template slot-scope="scope"> 82 <template slot-scope="scope">
83 - <span v-if="scope.row.status ==='01'">未发送</span>  
84 - <span v-if="scope.row.status ==='02'">已发舱单报</span> 83 + <span v-if="scope.row.status ==='01'">接受申报</span>
  84 + <span v-if="scope.row.status ==='02'">待人工审核</span>
  85 + <span v-if="scope.row.status ==='03'">退单</span>
85 <span v-if="scope.row.status ==='05'">舱单报退单</span> 86 <span v-if="scope.row.status ==='05'">舱单报退单</span>
86 <span v-if="scope.row.status ==='06'">舱单转人工</span> 87 <span v-if="scope.row.status ==='06'">舱单转人工</span>
87 <span v-if="scope.row.status ==='07'">舱单报申报成功</span> 88 <span v-if="scope.row.status ==='07'">舱单报申报成功</span>
88 - <span v-if="scope.row.status ==='08'">已发舱单删除报</span>  
89 <span v-if="scope.row.status ==='09'">舱单删除报退单</span> 89 <span v-if="scope.row.status ==='09'">舱单删除报退单</span>
90 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span> 90 <span v-if="scope.row.status ==='10'">舱单删除报转人工</span>
91 - <span v-if="scope.row.status ==='11'">舱单删除成功</span>  
92 - <span v-if="scope.row.status ==='12'">已发舱单修改报</span>  
93 - <span v-if="scope.row.status ==='13'">舱单修改报退单</span> 91 + <span v-if="scope.row.status ==='11'">放行</span>
  92 + <span v-if="scope.row.status ==='12'">拒装</span>
  93 + <span v-if="scope.row.status ==='13'">禁卸</span>
94 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span> 94 <span v-if="scope.row.status ==='14'">舱单修改报转人工</span>
95 <span v-if="scope.row.status ==='15'">舱单修改报成功</span> 95 <span v-if="scope.row.status ==='15'">舱单修改报成功</span>
96 <span v-if="scope.row.status ==='16'">海关已存在</span> 96 <span v-if="scope.row.status ==='16'">海关已存在</span>
  97 + <span v-if="scope.row.status ==='21'">可自动发送</span>
  98 + <span v-if="scope.row.status ==='22'">未发送</span>
  99 + <span v-if="scope.row.status ==='23'">已发送新增报</span>
  100 + <span v-if="scope.row.status ==='24'">已发送删除报</span>
  101 + <span v-if="scope.row.status ==='25'">已发送修改报</span>
97 </template> 102 </template>
98 </el-table-column> 103 </el-table-column>
99 - <el-table-column prop="receipt" label="回执信息" width="300" align="center"> 104 + <el-table-column label="回执信息" show-overflow-tooltip width="300" align="center">
100 <template slot-scope="scope"> 105 <template slot-scope="scope">
101 <span>{{scope.row.ext5}}</span> 106 <span>{{scope.row.ext5}}</span>
102 </template> 107 </template>
103 </el-table-column> 108 </el-table-column>
104 - <el-table-column prop="operation" label="操作" show-overflow-tooltip align="center"> 109 + <el-table-column prop="operation" label="操作" align="center">
105 <template slot-scope="scope"> 110 <template slot-scope="scope">
106 -  
107 <el-button size="mini" @click="handleSend(scope.row)">收发明细</el-button> 111 <el-button size="mini" @click="handleSend(scope.row)">收发明细</el-button>
108 - <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='01'">编辑</el-button> 112 + <el-button size="mini" type="success" @click="handleEdit(scope.row)" :disabled="scope.row.status !=='22'">编辑</el-button>
109 <el-button size="mini" type="primary" @click="handleAwbSend(scope.row)" 113 <el-button size="mini" type="primary" @click="handleAwbSend(scope.row)"
110 - :disabled="scope.row.status !=='01'">发舱单报</el-button> 114 + :disabled="scope.row.status !=='22'">发舱单报</el-button>
111 <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单</el-button> 115 <el-button size="mini" type="danger" v-if="isAdmin" @click="handleAwbDelete(scope.row)">删除运单</el-button>
112 <p></p> 116 <p></p>
113 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)" 117 <el-button size="mini" type="warning" @click="handleAwbStatus(scope.row)"
114 - :disabled="scope.row.status ==='01'">更改状态</el-button> 118 + :disabled="scope.row.status ==='22'">更改状态</el-button>
115 <el-button size="mini" type="primary" v-if="scope.row.awbh ===null" 119 <el-button size="mini" type="primary" v-if="scope.row.awbh ===null"
116 @click="handleAddAwbh(scope.row)">新增分单</el-button> 120 @click="handleAddAwbh(scope.row)">新增分单</el-button>
117 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button> 121 <el-button size="mini" type="danger" @click="handleSendDelete(scope.row)">发删除报</el-button>
@@ -173,7 +177,8 @@ @@ -173,7 +177,8 @@
173 <el-col :span="7.5"> 177 <el-col :span="7.5">
174 <el-form-item label="起始站" prop="originstation"> 178 <el-form-item label="起始站" prop="originstation">
175 179
176 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="tidyModel.originstation"> 180 + <el-select filterable clearable placeholder="请选择起始站" :remote-method="remoteMethodAirport"
  181 + allow-create v-model="originstation" remote>
177 <el-option v-for="item in airportCode" 182 <el-option v-for="item in airportCode"
178 :key="item.airportid" :label="item.airportid" 183 :key="item.airportid" :label="item.airportid"
179 :value="item.airportid" :disabled="dialogStatus === 'update'"> 184 :value="item.airportid" :disabled="dialogStatus === 'update'">
@@ -185,7 +190,8 @@ @@ -185,7 +190,8 @@
185 </el-col> 190 </el-col>
186 <el-col :span="7.5"> 191 <el-col :span="7.5">
187 <el-form-item label="目的站" prop="destinationstation"> 192 <el-form-item label="目的站" prop="destinationstation">
188 - <el-select filterable clearable placeholder="请选择起始站" allow-create v-model="tidyModel.destinationstation"> 193 + <el-select filterable clearable placeholder="请选择起始站" :remote-method="remoteMethodAirport"
  194 + allow-create v-model="destinationstation" remote>
189 <el-option v-for="item in airportCode" 195 <el-option v-for="item in airportCode"
190 :key="item.airportid" :label="item.airportid" 196 :key="item.airportid" :label="item.airportid"
191 :value="item.airportid" :disabled="dialogStatus === 'update'"> 197 :value="item.airportid" :disabled="dialogStatus === 'update'">
@@ -249,7 +255,8 @@ @@ -249,7 +255,8 @@
249 </el-col> 255 </el-col>
250 <el-col :span="7.5"> 256 <el-col :span="7.5">
251 <el-form-item label="海关关区" prop="customcode"> 257 <el-form-item label="海关关区" prop="customcode">
252 - <el-select v-model="tidyModel.customcode" placeholder="请选择关区代码" filterable clearable 258 + <el-select v-model="tidyModel.customcode" placeholder="请选择关区代码"
  259 + filterable clearable remote :remote-method="remoteMethodCustomCode" :loading="customLoading"
253 :disabled="dialogStatus === 'addAwbh'"> 260 :disabled="dialogStatus === 'addAwbh'">
254 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode" 261 <el-option v-for="item in customCodeList" :key="item.customcode" :label="item.customcode"
255 :value="item.customcode"> 262 :value="item.customcode">
@@ -418,6 +425,7 @@ @@ -418,6 +425,7 @@
418 dialogStatus: undefined, 425 dialogStatus: undefined,
419 disabledStatus: false, 426 disabledStatus: false,
420 listLoading: false, 427 listLoading: false,
  428 + customLoading:false,
421 dialogFormVisible: false, 429 dialogFormVisible: false,
422 tidyModel: { 430 tidyModel: {
423 carrier: undefined, 431 carrier: undefined,
@@ -470,8 +478,6 @@ @@ -470,8 +478,6 @@
470 } 478 }
471 this.getList() 479 this.getList()
472 } 480 }
473 - this.getAirportCode()  
474 - this.getCustomCode()  
475 let username = JSON.parse(sessionStorage.getItem('user')).username 481 let username = JSON.parse(sessionStorage.getItem('user')).username
476 if(username === 'admin'){ 482 if(username === 'admin'){
477 this.isAdmin = true 483 this.isAdmin = true
@@ -825,15 +831,39 @@ @@ -825,15 +831,39 @@
825 } 831 }
826 }) 832 })
827 }, 833 },
828 - getAirportCode(){  
829 - getAirportCode().then(res=>{  
830 - this.airportCode = res.data.data  
831 - }) 834 + //获取机场三字码
  835 + remoteMethodAirport(query){
  836 + this.airportCode = []
  837 + if (query !== '') {
  838 + this.listLoading = true
  839 + getAirportCode({airportid: query}).then(res => {
  840 + if(res !== null){
  841 + setTimeout(() => {
  842 + this.listLoading = false
  843 + this.airportCode = res.data.data
  844 + }, 200)
  845 + }
  846 + })
  847 + } else {
  848 + this.airportCode = []
  849 + }
832 }, 850 },
833 - getCustomCode(){  
834 - getCustomCode().then(res =>{  
835 - this.customCodeList = res.data.data  
836 - }) 851 + //关区代码
  852 + remoteMethodCustomCode(query){
  853 + this.customCodeList = []
  854 + if (query !== '') {
  855 + this.customLoading = true
  856 + getCustomCode({customcode: query}).then(res => {
  857 + if(res !== null){
  858 + setTimeout(() => {
  859 + this.customLoading = false
  860 + this.customCodeList = res.data.data
  861 + }, 200)
  862 + }
  863 + })
  864 + } else {
  865 + this.airportCode = []
  866 + }
837 }, 867 },
838 // 新增理货弹框 868 // 新增理货弹框
839 handleAddTidy() { 869 handleAddTidy() {