瀏覽代碼

8.11问题修改

zhongxiaoyu 2 年之前
父節點
當前提交
6f411d8d96

+ 57 - 45
public/config.js

@@ -1,13 +1,13 @@
-var PLATFROM_CONFIG = {}
-PLATFROM_CONFIG.baseNewUrl = 'http://10.211.67.163:16300' //登录前的http请求地址
-PLATFROM_CONFIG.baseUrl = 'http://10.211.67.163:16300' // 4A-http请求地址
-PLATFROM_CONFIG.appSecret = '9inu7zpllz1folzsljm498dcpi0lsog1' //appSecret
-PLATFROM_CONFIG.appId = 'q7kdjmmaf0kerwpf' //appid
-PLATFROM_CONFIG.baseURLCA = 'http://10.211.67.163:16300' // 登录后的http请求地址-测试
-
-PLATFROM_CONFIG.baggageMessageURL = '/openApi/query'
+window.PLATFROM_CONFIG = {
+  baseNewUrl: 'http://10.211.67.163:16300', //登录前的http请求地址
+  baseUrl: 'http://10.211.67.163:16300', // 4A-http请求地址
+  appSecret: '9inu7zpllz1folzsljm498dcpi0lsog1', //appSecret
+  appId: 'q7kdjmmaf0kerwpf', //appid
+  baseURLCA: 'http://10.211.67.163:16300', // 登录后的http请求地址-测试
+  baggageMessageURL: '/openApi/query'
+}
 
 
-const DATACONTENT_ID = {
+window.DATACONTENT_ID = {
   /***-----登录------***/
   /***-----登录------***/
   loginId: 36, //登录-获取权限-id
   loginId: 36, //登录-获取权限-id
 
 
@@ -49,36 +49,37 @@ const DATACONTENT_ID = {
   sysServiceNodeListId: 89,
   sysServiceNodeListId: 89,
 
 
   /***-----进港管理------***/
   /***-----进港管理------***/
-  arrivalAirId: 67, //进港管理-机场选择-id
-  arrivalTableId: 38, //进港管理-表格-id
+  arrivalAirId: 67, //进港管理-机场选择
+  arrivalTableId: 38, //进港管理-表格
 
 
   /***-----离港管理------***/
   /***-----离港管理------***/
-  departureAirMainId: 65, //离港管理-机场选择-id
-  departureTableMainId: 66, //离港管理-表格-id
+  departureAirMainId: 65, //离港管理-机场选择
+  departureTableMainId: 66, //离港管理-表格
 
 
-  /***-----离港管理===>中转进港------***/
-  departureAirId: 72, //离港管理-机场选择-id
-  departureAviJoinId: 71, //离港管理-进港承运航司-id
-  departureAviLeaveId: 74, //离港管理-离港承运航司-id
-  departureTableId: 69, //离港管理-表格-id
+  /***-----中转进港------***/
+  departureAirId: 72, // 中转进港-机场选择
+  departureAviJoinId: 71, // 中转进港-进港承运航司
+  departureAviLeaveId: 74, // 中转进港-离港承运航司
+  departureTableId: 69, // 中转进港-表格
 
 
-  /***-----离港管理===>中转离港------***/
-  departureAirLtId: 72, //离港管理-机场选择-id
-  departureAviJoinLtId: 71, //离港管理-进港承运航司-id
-  departureAviLeaveLtId: 74, //离港管理-离港承运航司-id
-  departureTableLtId: 68, //离港管理-表格-id
+  /***-----中转离港------***/
+  departureAirLtId: 72, // 中转离港-机场选择
+  departureAviJoinLtId: 71, // 中转离港-进港承运航司
+  departureAviLeaveLtId: 74, // 中转离港-离港承运航司
+  departureTableLtId: 68, // 中转离港-表格
 
 
   /***-----航班视图------***/
   /***-----航班视图------***/
-  flightAirline: 1141,
-  flightInfo: 1142,
-  flightContainer: 1143,
-  flightBaggage: 1144,
+  flightAirline: 1141, // 航班-航段
+  flightInfo: 1142, // 航班-基础信息
+  flightContainer: 41, // 航班-容器
+  flightBaggage: 1144, // 航班-行李列表
 
 
   /***-----行李视图------***/
   /***-----行李视图------***/
-  baggageBasicInfo: 255,
-  baggageTrack: 61,
-  baggageDetails: 44,
-  baggageMessage: 3065,
+  baggageBasicInfo: 255, // 行李-基础信息
+  baggageAirline: 18009, // 行李-航段
+  baggageTrack: 18010, // 行李-追踪节点
+  baggageDetails: 44, // 行李-详情列表
+  baggageMessage: 3066, // 行李-原始报文
 
 
   /***-----基础数据------***/
   /***-----基础数据------***/
   deployNodeId: 54, //基础数据-节点信息维护-获取二级节点(表格)-id
   deployNodeId: 54, //基础数据-节点信息维护-获取二级节点(表格)-id
@@ -127,23 +128,34 @@ const DATACONTENT_ID = {
   nodeAxisDesc: 90 // 节点统计指示器名称解释
   nodeAxisDesc: 90 // 节点统计指示器名称解释
 }
 }
 
 
-const SERVICE_ID = {
+window.SERVICE_ID = {
   /***-----账号管理------***/
   /***-----账号管理------***/
-  accountScId: 17, //账号管理-增删改-id
-  roleScId: 16, //账号管理-角色授权-增删改-id
+  accountScId: 17, //账号管理-增删改
+  roleScId: 16, //账号管理-角色授权-增删改
 
 
   /***-----角色管理------***/
   /***-----角色管理------***/
-  roleMsgId: 14, //角色管理-增删改-id
-  roleMsgTreeId: 15, //角色管理-权限树-增删改-id
-  roleMsgAuthId: 20, //角色管理-权限树规则-增删改-id
+  roleMsgId: 14, //角色管理-增删改
+  roleMsgTreeId: 15, //角色管理-权限树-增删改
+  roleMsgAuthId: 20, //角色管理-权限树规则-增删改
 
 
   /***-----权限项管理------***/
   /***-----权限项管理------***/
-  authScId: 13, //权限项管理-增删改-id
-
-  sysProtoTabId: 1, //系统设置-协议管理-表格-增删改-id
-  sysServiceAddId: 3, //系统设置-服务管理-新增服务-提交-id/服务管理-编辑服务-保存-id
-  sysServiceEditBoxId: 4, //系统设置-服务管理-编辑服务-部署机器-多选框-id
-  sysQueryTabId: 5, //系统设置-查询模板-表格-增删改-id
-  sysServiceAddXyId: 10, //系统设置-服务管理-新增服务-新增数据源-提交-id
-  sysDataTabId: 9 //系统设置-数据结构-数据项-表格-增删改-id
+  authScId: 13, //权限项管理-增删改
+
+  sysProtoTabId: 1, //系统设置-协议管理-表格-增删改
+  sysServiceAddId: 3, //系统设置-服务管理-新增服务-提交-id/服务管理-编辑服务-保存
+  sysServiceEditBoxId: 4, //系统设置-服务管理-编辑服务-部署机器-多选框
+  sysQueryTabId: 5, //系统设置-查询模板-表格-增删改
+  sysServiceAddXyId: 10, //系统设置-服务管理-新增服务-新增数据源-提交
+  sysDataTabId: 9 //系统设置-数据结构-数据项-表格-增删改
+}
+
+/* 轮询间隔 */
+window.LOOP_INTERVAL = {
+  arrivalTable: 5 * 1000, // 进港视图表格
+  departureTable: 5 * 1000, // 离港视图表格
+  transferArrivalTable: 5 * 1000, // 中转进港表格
+  transferDepartureTable: 5 * 1000, // 中转离港表格
+  baggageTrack: 5 * 1000, // 行李跟踪节点信息
+  baggageDetails: 5 * 1000, // 行李详情表格
+  baggageMessage: 15 * 1000 // 行李原始报文
 }
 }

+ 9 - 0
public/configLoader.js

@@ -0,0 +1,9 @@
+const config = document.createElement('script')
+config.id = 'configJS'
+config.src = 'config.js'
+config.type = 'text/javascript'
+document.head.appendChild(config)
+setInterval(function () {
+  document.head.removeChild(document.getElementById('configJS'))
+  document.head.appendChild(config)
+}, 60 * 1000)

+ 1 - 1
public/index.html

@@ -7,7 +7,7 @@
     <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-eval';style-src 'self' 'unsafe-inline'">
     <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-eval';style-src 'self' 'unsafe-inline'">
     <link rel="icon" href="<%= BASE_URL %>favicon.ico">
     <link rel="icon" href="<%= BASE_URL %>favicon.ico">
     <title><%= webpackConfig.name %></title>
     <title><%= webpackConfig.name %></title>
-    <script src="<%= BASE_URL %>config.js"></script>
+    <script src="<%= BASE_URL %>configLoader.js" type="text/javascript"></script>
   </head>
   </head>
   <body>
   <body>
     <div id="app"></div>
     <div id="app"></div>

+ 10 - 2
src/views/advancedQuery/views/advancedHome.vue

@@ -564,7 +564,7 @@ export default {
         {
         {
           prop: 'checkInSequence',
           prop: 'checkInSequence',
           label: '值机序号',
           label: '值机序号',
-          hintText: '示例:1',
+          hintText: '示例:001',
           hintVisible: false
           hintVisible: false
         },
         },
         {
         {
@@ -1014,6 +1014,14 @@ export default {
     },
     },
     // 高级查询-确定
     // 高级查询-确定
     onCheckGj(singleJump) {
     onCheckGj(singleJump) {
+      function digitFormat(num) {
+        if (num) {
+          num = '000' + num
+          return num.slice(-3)
+        } else {
+          return ''
+        }
+      }
       this.resetTable()
       this.resetTable()
       /* 参数顺序
       /* 参数顺序
       【航班开始日期,航班结束日期,航班号,航班号,行李牌号,行李牌号,起飞站,起飞站,目的站,目的站,特殊行李类型,特殊行李类型,旅客姓名大写拼音,旅客姓名大写拼音,
       【航班开始日期,航班结束日期,航班号,航班号,行李牌号,行李牌号,起飞站,起飞站,目的站,目的站,特殊行李类型,特殊行李类型,旅客姓名大写拼音,旅客姓名大写拼音,
@@ -1057,7 +1065,7 @@ export default {
             specialType,
             specialType,
             passengerName,
             passengerName,
             PNR,
             PNR,
-            checkInSequence,
+            digitFormat(checkInSequence),
             transferArrival,
             transferArrival,
             transferDeparture,
             transferDeparture,
             U_Device_ID,
             U_Device_ID,

+ 176 - 62
src/views/baggageManagement/components/arrival/index.vue

@@ -8,8 +8,17 @@
 <template>
 <template>
   <div class="arrival-one">
   <div class="arrival-one">
     <!--功能区-表单-->
     <!--功能区-表单-->
-    <div ref="formWrap" class="terminal-form-wrap">
-      <el-form ref="form" :inline="true" :model="formData" :rules="rules" class="form">
+    <div
+      ref="formWrap"
+      class="terminal-form-wrap"
+    >
+      <el-form
+        ref="form"
+        :inline="true"
+        :model="formData"
+        :rules="rules"
+        class="form"
+      >
         <div class="form-left">
         <div class="form-left">
           <el-form-item prop="currentAirport">
           <el-form-item prop="currentAirport">
             <!-- <el-cascader
             <!-- <el-cascader
@@ -66,51 +75,148 @@
               @change="endDateChangeHandler"
               @change="endDateChangeHandler"
             />
             />
           </el-form-item> -->
           </el-form-item> -->
-          <el-form-item prop="flightDate" label="航班日期">
-            <el-date-picker v-model="formData.flightDate" :clearable="false" size="small" style="width: 300px;" type="daterange" value-format="yyyy-MM-dd" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="dateRangePickerOptions" @change="dateChangeHandler" />
+          <el-form-item
+            prop="flightDate"
+            label="航班日期"
+          >
+            <el-date-picker
+              v-model="formData.flightDate"
+              :clearable="false"
+              size="small"
+              style="width: 300px;"
+              type="daterange"
+              value-format="yyyy-MM-dd"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              :picker-options="dateRangePickerOptions"
+              @change="dateChangeHandler"
+            />
           </el-form-item>
           </el-form-item>
           <el-form-item>
           <el-form-item>
             <div class="box-item">
             <div class="box-item">
               <p>预计装载总数:</p>
               <p>预计装载总数:</p>
-              <li v-for="(item, index) in orderNum" :key="index" :class="{ 'number-item': !isNaN(item), 'mark-item': isNaN(item) }">
+              <li
+                v-for="(item, index) in orderNum"
+                :key="index"
+                :class="{ 'number-item': !isNaN(item), 'mark-item': isNaN(item) }"
+              >
                 <span v-if="!isNaN(item)">
                 <span v-if="!isNaN(item)">
                   <i ref="numberItem">0123456789</i>
                   <i ref="numberItem">0123456789</i>
                 </span>
                 </span>
-                <span v-else class="comma">{{ item }}</span>
+                <span
+                  v-else
+                  class="comma"
+                >{{ item }}</span>
               </li>
               </li>
             </div>
             </div>
           </el-form-item>
           </el-form-item>
         </div>
         </div>
-        <div class="form-right" @keyup.enter="onSubmit(1)">
+        <div
+          class="form-right"
+          @keyup.enter="onSubmit(1)"
+        >
           <el-form-item prop="search">
           <el-form-item prop="search">
-            <el-popover :value="popoverVisible" placement="bottom" trigger="manual">
+            <el-popover
+              :value="popoverVisible"
+              placement="bottom"
+              trigger="manual"
+            >
               <span>请输入航班号(示例:CA1234)或行李牌号(示例:1234567890)</span>
               <span>请输入航班号(示例:CA1234)或行李牌号(示例:1234567890)</span>
-              <el-input slot="reference" v-model="formData.search" class="input-shadow" style="width: 240px; margin-left: 105px" size="small" placeholder="请输入内容" prefix-icon="el-icon-search" clearable @focus="popoverVisible = true" @blur="popoverVisible = false" />
+              <el-input
+                slot="reference"
+                v-model="formData.search"
+                class="input-shadow"
+                style="width: 240px; margin-left: 105px"
+                size="small"
+                placeholder="请输入内容"
+                prefix-icon="el-icon-search"
+                clearable
+                @focus="popoverVisible = true"
+                @blur="popoverVisible = false"
+              />
             </el-popover>
             </el-popover>
           </el-form-item>
           </el-form-item>
           <el-form-item>
           <el-form-item>
-            <el-button class="btn-shadow" size="mini" type="primary" @click="onSubmit(1)">搜索</el-button>
+            <el-button
+              class="btn-shadow"
+              size="mini"
+              type="primary"
+              @click="onSubmit(1)"
+            >搜索</el-button>
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['is_timeIcon']">
           <el-form-item v-is="['is_timeIcon']">
             <TimeZoneSelector />
             <TimeZoneSelector />
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['is_columnSettings']">
           <el-form-item v-is="['is_columnSettings']">
-            <img class="btn-img btn-shadow" src="../../../../assets/baggage/ic_setting.png" title="列设置" @click="show">
+            <img
+              class="btn-img btn-shadow"
+              src="../../../../assets/baggage/ic_setting.png"
+              title="列设置"
+              @click="show"
+            >
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['dm_dt_columnSettings']">
           <el-form-item v-is="['dm_dt_columnSettings']">
-            <img class="btn-img btn-shadow" src="../../../../assets/baggage/ic_export.png" title="导出" @click="exportHandler('table', '航站进港列表')">
+            <img
+              class="btn-img btn-shadow"
+              src="../../../../assets/baggage/ic_export.png"
+              title="导出"
+              @click="exportHandler('table', '航站进港列表')"
+            >
           </el-form-item>
           </el-form-item>
         </div>
         </div>
       </el-form>
       </el-form>
     </div>
     </div>
     <!--表格-->
     <!--表格-->
-    <div v-loading="loading" class="terminal-table" element-loading-text="拼命加载中" element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)">
-      <el-table ref="table" class="table" :height="computedTableHeight" :data="dealedTableData" :header-cell-class-name="headerCellClass" :row-class-name="tableRowClassName" :cell-class-name="cellClass" show-summary :summary-method="summaryMethod" border stripe fit @cell-click="cellClickHandler">
-        <el-table-column v-for="col in tableColsCopy" :key="col.prop" :prop="col.prop" :label="col.label" :width="col.width" :fixed="col.fixed">
-          <el-table-column v-for="childCol in col.children" :key="childCol.prop" :prop="childCol.prop" :label="childCol.label" :width="childCol.width" :formatter="tableFormat">
+    <div
+      v-loading="loading"
+      class="terminal-table"
+      element-loading-text="拼命加载中"
+      element-loading-spinner="el-icon-loading"
+      element-loading-background="rgba(0, 0, 0, 0.8)"
+    >
+      <el-table
+        ref="table"
+        class="table"
+        :height="computedTableHeight"
+        :data="dealedTableData"
+        :header-cell-class-name="headerCellClass"
+        :row-class-name="tableRowClassName"
+        :cell-class-name="cellClass"
+        show-summary
+        :summary-method="summaryMethod"
+        border
+        stripe
+        fit
+        @cell-click="cellClickHandler"
+      >
+        <el-table-column
+          v-for="col in tableColsCopy"
+          :key="col.prop"
+          :prop="col.prop"
+          :label="col.label"
+          :width="col.width"
+          :fixed="col.fixed"
+        >
+          <el-table-column
+            v-for="childCol in col.children"
+            :key="childCol.prop"
+            :prop="childCol.prop"
+            :label="childCol.label"
+            :width="childCol.width"
+            :formatter="tableFormat"
+          >
             <template #header>
             <template #header>
-              <el-tooltip :content="childCol.desc || childCol.label" placement="top">
-                <TableHeaderCell :label="childCol.label" :filter-options="tableDataFilters[childCol.prop]" :filter-values.sync="filterValues[childCol.prop]" :sortable="childCol.sortable" :sort-rule.sync="tableDataSortRules[childCol.prop]" />
+              <el-tooltip
+                :content="childCol.desc || childCol.label"
+                placement="top"
+              >
+                <TableHeaderCell
+                  :label="childCol.label"
+                  :filter-options="tableDataFilters[childCol.prop]"
+                  :filter-values.sync="filterValues[childCol.prop]"
+                  :sortable="childCol.sortable"
+                  :sort-rule.sync="tableDataSortRules[childCol.prop]"
+                />
               </el-tooltip>
               </el-tooltip>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
@@ -118,18 +224,38 @@
       </el-table>
       </el-table>
     </div>
     </div>
     <!--列设置-->
     <!--列设置-->
-    <Dialog :flag="dialogFlag" class="dialog-check-group">
+    <Dialog
+      :flag="dialogFlag"
+      class="dialog-check-group"
+    >
       <div class="dialog-wrapper">
       <div class="dialog-wrapper">
         <div class="title">列设置</div>
         <div class="title">列设置</div>
         <div class="content">
         <div class="content">
-          <el-tree :data="tableCols" :class="colsCheckClass" show-checkbox node-key="index" :default-expand-all="true" :props="{
+          <el-tree
+            :data="tableCols"
+            :class="colsCheckClass"
+            show-checkbox
+            node-key="index"
+            :default-expand-all="true"
+            :props="{
               label: 'label',
               label: 'label',
               children: 'children'
               children: 'children'
-            }" :default-checked-keys="checkedKeysTemp" @check="handleCheck" />
+            }"
+            :default-checked-keys="checkedKeysTemp"
+            @check="handleCheck"
+          />
         </div>
         </div>
         <div class="foot right t30">
         <div class="foot right t30">
-          <el-button size="medium" class="r24" type="primary" @click="onCheck">确定</el-button>
-          <el-button size="medium" @click="hide">取消</el-button>
+          <el-button
+            size="medium"
+            class="r24"
+            type="primary"
+            @click="onCheck"
+          >确定</el-button>
+          <el-button
+            size="medium"
+            @click="hide"
+          >取消</el-button>
         </div>
         </div>
       </div>
       </div>
     </Dialog>
     </Dialog>
@@ -151,7 +277,7 @@ export default {
   name: 'DepartureTerminalView',
   name: 'DepartureTerminalView',
   components: { Dialog, TimeZoneSelector, TableHeaderCell },
   components: { Dialog, TimeZoneSelector, TableHeaderCell },
   mixins: [terminalMixin, formMixin, tableColsMixin, timeZoneMixin],
   mixins: [terminalMixin, formMixin, tableColsMixin, timeZoneMixin],
-  data () {
+  data() {
     return {
     return {
       orderNum: ['0', '0', '0', '0', '0', '0'], // 默认总数
       orderNum: ['0', '0', '0', '0', '0', '0'], // 默认总数
       popoverVisible: false,
       popoverVisible: false,
@@ -181,8 +307,8 @@ export default {
             },
             },
             {
             {
               prop: 'arrivalTime',
               prop: 'arrivalTime',
-              label: '到港时间',
-              desc: '指航班预计降落时间,数据是变化的,仅显示最新结果',
+              label: '降落时间',
+              desc: '根据优先级别显示时间。优先级别:1.实际降落时间,2.预计降落时间,3.计划降落时间',
               width: 150,
               width: 150,
               filterable: true,
               filterable: true,
               sortable: true
               sortable: true
@@ -348,11 +474,11 @@ export default {
     }
     }
   },
   },
   computed: {
   computed: {
-    singleDay () {
+    singleDay() {
       return this.startDate === this.endDate
       return this.startDate === this.endDate
     }
     }
   },
   },
-  mounted () {
+  mounted() {
     this.getAirPortData()
     this.getAirPortData()
     this.table = this.$refs.table.bodyWrapper
     this.table = this.$refs.table.bodyWrapper
     const that = this
     const that = this
@@ -360,47 +486,39 @@ export default {
       that.scrollTop = this.table.scrollTop
       that.scrollTop = this.table.scrollTop
     })
     })
   },
   },
-  activated () {
+  activated() {
     this.table.scrollTop = this.scrollTop
     this.table.scrollTop = this.scrollTop
     this.getTableData()
     this.getTableData()
-    const that = this
-    this.loopEvent = setInterval(function () {
-      that.getTableData()
-    }, 3000)
+    this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.arrivalTable)
   },
   },
-  deactivated () {
+  deactivated() {
     if (this.loopEvent) {
     if (this.loopEvent) {
       clearInterval(this.loopEvent)
       clearInterval(this.loopEvent)
       this.loopEvent = null
       this.loopEvent = null
     }
     }
   },
   },
-  beforeDestroy () {
+  beforeDestroy() {
     if (this.loopEvent) {
     if (this.loopEvent) {
       clearInterval(this.loopEvent)
       clearInterval(this.loopEvent)
       this.loopEvent = null
       this.loopEvent = null
     }
     }
   },
   },
   methods: {
   methods: {
-    resetLoopEvent () {
+    resetLoopEvent() {
       this.loading = true
       this.loading = true
       this.hasSetTableScroll = false
       this.hasSetTableScroll = false
-      if (this.loopEvent) {
-        clearInterval(this.loopEvent)
-      }
+      this.loopEvent && clearInterval(this.loopEvent)
       this.getTableData()
       this.getTableData()
-      const that = this
-      this.loopEvent = setInterval(function () {
-        that.getTableData()
-      }, 3000)
+      this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.arrivalTable)
     },
     },
-    airPortChange () {
+    airPortChange() {
       this.resetLoopEvent()
       this.resetLoopEvent()
     },
     },
-    dateChangeHandler () {
+    dateChangeHandler() {
       this.resetLoopEvent()
       this.resetLoopEvent()
     },
     },
     // 选择机场
     // 选择机场
-    async getAirPortData () {
+    async getAirPortData() {
       try {
       try {
         const res = await getQuery({
         const res = await getQuery({
           id: DATACONTENT_ID.arrivalAirId,
           id: DATACONTENT_ID.arrivalAirId,
@@ -417,7 +535,7 @@ export default {
         console.log('出错了', error.message || error)
         console.log('出错了', error.message || error)
       }
       }
     },
     },
-    tableRowClassName ({ row, rowIndex }) {
+    tableRowClassName({ row, rowIndex }) {
       const classes = []
       const classes = []
       if (row.flightStatus === 'DLY') {
       if (row.flightStatus === 'DLY') {
         classes.push('bgl-delayed')
         classes.push('bgl-delayed')
@@ -433,7 +551,7 @@ export default {
       }
       }
       return classes.join(' ')
       return classes.join(' ')
     },
     },
-    headerCellClass ({ row, column }) {
+    headerCellClass({ row, column }) {
       const classes = []
       const classes = []
       const rule = this.tableDataSortRules[column.property]
       const rule = this.tableDataSortRules[column.property]
       if (rule) {
       if (rule) {
@@ -452,7 +570,7 @@ export default {
     //   this.flightAttrQuery(params)
     //   this.flightAttrQuery(params)
     // },
     // },
     // 获取表格数据
     // 获取表格数据
-    async getTableData () {
+    async getTableData() {
       if (!this.formData.currentAirport || !this.startDate || !this.endDate) {
       if (!this.formData.currentAirport || !this.startDate || !this.endDate) {
         return
         return
       }
       }
@@ -477,7 +595,7 @@ export default {
         console.log('出错了', error.message || error)
         console.log('出错了', error.message || error)
       }
       }
     },
     },
-    initTableData (tableData) {
+    initTableData(tableData) {
       this.arrivalCount = 0
       this.arrivalCount = 0
       this.baggageCount = 0
       this.baggageCount = 0
       tableData.forEach(item => {
       tableData.forEach(item => {
@@ -490,15 +608,11 @@ export default {
       this.tableData = this._.orderBy(tableData, ['hasArrived', 'arrivalTime'], ['desc', 'asc'])
       this.tableData = this._.orderBy(tableData, ['hasArrived', 'arrivalTime'], ['desc', 'asc'])
       setTableFilters(this.tableData, this.tableDataFilters)
       setTableFilters(this.tableData, this.tableDataFilters)
       this.toOrderNum(this.baggageCount)
       this.toOrderNum(this.baggageCount)
-      // setInterval(() => {
-      //   this.baggageCount = this.baggageCount+1;
-      //    // 这里输入数字即可调用
-      // }, 2000);
       this.$nextTick(() => {
       this.$nextTick(() => {
         this.setTableScroll()
         this.setTableScroll()
       })
       })
     },
     },
-    hasArrived (flight) {
+    hasArrived(flight) {
       if (flight.arrivalTime) {
       if (flight.arrivalTime) {
         const now = new Date()
         const now = new Date()
         const arrivalTime = new Date(flight.arrivalTime)
         const arrivalTime = new Date(flight.arrivalTime)
@@ -508,7 +622,7 @@ export default {
       }
       }
       return flight['hasArrived']
       return flight['hasArrived']
     },
     },
-    setTableScroll () {
+    setTableScroll() {
       if (!this.singleDay || this.hasSetTableScroll || this.arrivalCount === 0) {
       if (!this.singleDay || this.hasSetTableScroll || this.arrivalCount === 0) {
         return
         return
       }
       }
@@ -528,7 +642,7 @@ export default {
       }, 0)
       }, 0)
       this.hasSetTableScroll = true
       this.hasSetTableScroll = true
     },
     },
-    setNumberTransform () {
+    setNumberTransform() {
       const numberItems = this.$refs.numberItem // 拿到数字的ref,计算元素数量
       const numberItems = this.$refs.numberItem // 拿到数字的ref,计算元素数量
       const numberArr = this.orderNum.filter(item => !isNaN(item))
       const numberArr = this.orderNum.filter(item => !isNaN(item))
       // 结合CSS 对数字字符进行滚动,显示订单数量
       // 结合CSS 对数字字符进行滚动,显示订单数量
@@ -538,7 +652,7 @@ export default {
       }
       }
     },
     },
 
 
-    toOrderNum (num) {
+    toOrderNum(num) {
       num = num.toString()
       num = num.toString()
       if (num.length < 6) {
       if (num.length < 6) {
         num = '0' + num // 如未满八位数,添加"0"补位
         num = '0' + num // 如未满八位数,添加"0"补位
@@ -551,7 +665,7 @@ export default {
       }
       }
       this.setNumberTransform()
       this.setNumberTransform()
     },
     },
-    exportHandler (refName, tableName) {
+    exportHandler(refName, tableName) {
       if (this.loading) {
       if (this.loading) {
         return
         return
       }
       }
@@ -584,7 +698,7 @@ export default {
       optgroup,
       optgroup,
       select,
       select,
       textarea {
       textarea {
-        font-family: Helvetica, "Microsoft YaHei";
+        font-family: Helvetica, 'Microsoft YaHei';
         font-size: 14px;
         font-size: 14px;
       }
       }
       .el-switch__label {
       .el-switch__label {
@@ -690,7 +804,7 @@ export default {
       padding: 0;
       padding: 0;
       text-align: center;
       text-align: center;
       font-size: 14px;
       font-size: 14px;
-      font-family: Helvetica, "Microsoft YaHei";
+      font-family: Helvetica, 'Microsoft YaHei';
       letter-spacing: 0;
       letter-spacing: 0;
     }
     }
     .cell-click {
     .cell-click {
@@ -724,7 +838,7 @@ export default {
         &.redBorder {
         &.redBorder {
           position: relative;
           position: relative;
           &::after {
           &::after {
-            content: "";
+            content: '';
             position: absolute;
             position: absolute;
             left: 0;
             left: 0;
             bottom: 0;
             bottom: 0;

+ 0 - 1067
src/views/baggageManagement/components/baggage/index copy.vue

@@ -1,1067 +0,0 @@
-<!--
- * @Author: your name
- * @Date: 2022-01-17 10:39:22
- * @LastEditTime: 2022-06-30 09:46:18
- * @LastEditors: your name
- * @Description: 行李视图
--->
-<template>
-  <div class="baggage-view">
-    <div
-      ref="basicInfo"
-      class="part1"
-    >
-      <div class="title">
-        <span>行李基本信息</span>
-        <el-radio-group
-          v-model="infoBtn"
-          class="radioBtn"
-          size="mini"
-          fill="#FFFFFF"
-          text-color="#28344D"
-        >
-          <el-radio-button
-            v-for="item in infoRadios"
-            :key="item"
-            :label="item"
-          />
-        </el-radio-group>
-      </div>
-      <div class="part1_info">
-        <el-row :gutter="12">
-          <el-col
-            v-for="(item, index) in baggageBasicInfoCols"
-            :key="index"
-            :xl="[1, 4, 5].includes(index % 7) ? 4 : 3"
-            :sm="6"
-            :xs="6"
-          >
-            <span class="label">{{ item.label }}:</span><span
-              class="content"
-              :title="formattedBaggageInfo(item.prop)"
-            >{{ formattedBaggageInfo(item.prop) }}</span>
-          </el-col>
-        </el-row>
-      </div>
-    </div>
-    <div
-      v-show="infoBtn === infoRadios[0]"
-      class="part2"
-    >
-      <div class="part2_info">
-        <div
-          style="width: 120px"
-          class="title"
-        >行李跟踪信息</div>
-        <div class="type normal">
-          {{ baggageBasicInfo.BagStatus }}
-        </div>
-        <div class="step">
-          <div class="baggage-track-chart">
-            <div class="stepLine">
-              <div
-                :style="{ width: lineWidth }"
-                class="stepLineBlue"
-              />
-            </div>
-            <!-- <el-popover
-              v-for="(item, index) in stepData"
-              :key="index"
-              :ref="'popover' + index"
-              :value="popoverVisible(item)"
-              :open-delay="500"
-              placement="left-end"
-              popper-class="popover-dark"
-              trigger="manual"
-            >
-              <div class="pre-line">{{ messageTooltip(item.resourceFile) }}</div>
-              <div
-                slot="reference"
-                :class="{ 'stepItem': true, activeItem: item.DealTime }"
-                @mouseenter="itemMouseEnterHandler(item)"
-                @mouseleave="itemMouseLeaveHandler(item)"
-              >
-                <span class="head">
-                  <span>{{ item.NodeNameEN }}</span>
-                </span>
-                <span>{{ item.DealTime }}</span>
-              </div>
-            </el-popover> -->
-            <div
-              v-for="(item, index) in stepData"
-              :key="index"
-              :class="{ 'stepItem': true, activeItem: item.DealTime }"
-              @mouseenter="itemMouseEnterHandler(item)"
-              @mouseleave="itemMouseLeaveHandler(item)"
-            >
-              <span class="head">
-                <!-- {{ item.airPort }} -->
-                <!-- <span v-if="item.airPort && item.nodeName !== ''">-</span> -->
-                <span>{{ item.NodeNameEN }}</span>
-              </span>
-              <span>{{ item.DealTime }}</span>
-              <!-- <span>{{ item.time }}</span> -->
-            </div>
-          </div>
-        </div>
-      </div>
-      <div class="btns">
-        <img
-          class="btn-square btn-shadow"
-          src="../../../../assets/baggage/ic_export.png"
-          title="导出"
-          @click="exportHandler('table', '行李节点列表')"
-        >
-        <img
-          class="btn-square btn-shadow"
-          src="../../../../assets/baggage/ic_setting.png"
-          title="列设置"
-          @click="show"
-        >
-      </div>
-    </div>
-    <div
-      v-show="infoBtn == infoRadios[0]"
-      class="part3"
-      :style="{
-        'height': `calc(100vh - 80px - ${basicInfoHeight}px - 128px - 3 * 8px - 44px)`
-      }"
-    >
-      <!-- <el-popover
-        trigger="hover"
-        placement="top-start"
-        popper-class="popover-dark"
-        :visible-arrow="false"
-        :disabled="!messageTooltipVisible"
-      >
-        <div class="pre-line">{{ messageTooltip }}</div> -->
-      <el-table
-        ref="table"
-        :data="baggageTableData"
-        height="100%"
-        size="mini"
-        border
-        fit
-        :header-cell-class-name="headerCellClass"
-        :header-cell-style="{ color: '#101116' }"
-        :cell-class-name="cellClass"
-        :span-method="tableSpanMethod"
-        @cell-mouse-enter="cellMouseEnterHandler"
-        @cell-mouse-leave="cellMouseLeaveHandler"
-        @cell-click="cellClickHandler"
-      >
-        <el-table-column
-          v-for="item in tableColsCopy"
-          :key="item.index"
-          :prop="item.prop"
-          :label="item.name"
-          :align="item.align || 'center'"
-          :width="item.width"
-          show-overflow-tooltip
-        >
-          <template slot="header">
-            <div class="cell-content">{{ item.name }}</div>
-          </template>
-          <template slot-scope="scope">
-            <div class="cell-content">{{ scope.row[item.prop] }}</div>
-          </template>
-        </el-table-column>
-      </el-table>
-      <!-- </el-popover> -->
-    </div>
-
-    <div
-      v-show="infoBtn === infoRadios[1]"
-      class="part4"
-      :style="{
-        'height': `calc(100vh - 80px - ${basicInfoHeight}px - 2 * 8px - 44px)`
-      }"
-    >
-      <header class="head">
-        <div class="title">行李跟踪信息</div>
-        <div class="btns">
-          <!-- <img
-            class="btn-square"
-            src="../../../../assets/baggage/ic_export.png"
-          >
-          <img
-            class="btn-square"
-            src="../../../../assets/baggage/ic_setting.png"
-            @click="show"
-          > -->
-        </div>
-      </header>
-      <main class="main">
-        <template v-if="messageList.length">
-          <el-row
-            :gutter="24"
-            type="flex"
-          >
-            <el-col
-              v-for="(message, index) in messageList"
-              :key="index"
-              :span="6"
-            >
-              <div class="card">
-                <div class="message-date">{{ message.date + ' UTC' }}</div>
-                <div class="message-content">
-                  {{ message.dataContent.replaceAll(/[\r\n]{2,}/g, '\n') }}
-                  <!-- BSM <br>
-              .V/1LHRB <br>
-              .F/XX1640/08APR/PEK/Y <br>
-              .O/ZZ941/08APR/DXB/E <br>
-              .N/0666826758001 <br>
-              .D/SELF//08APR/110023L//PEK30113 <br>
-              .S/N/32L/C/030//Y/I <br>
-              .W/K/l/0 <br>
-              .P/1CUI/DI ENDBSM<br> -->
-                </div>
-              </div>
-            </el-col>
-          </el-row>
-        </template>
-        <template v-else>
-          <el-empty
-            :image-size="1"
-            description="暂无数据"
-          />
-        </template>
-      </main>
-    </div>
-    <!--列设置-->
-    <Dialog
-      :flag="dialogFlag"
-      class="dialog-check-group"
-    >
-      <div class="dialog-wrapper">
-        <div class="title">列设置</div>
-        <div class="content">
-          <el-tree
-            :data="tableCols"
-            :class="colsCheckClass"
-            show-checkbox
-            node-key="index"
-            :default-expand-all="true"
-            :props="{
-              label: 'name',
-              children: 'children',
-            }"
-            :default-checked-keys="checkedKeysTemp"
-            @check="handleCheck"
-          />
-        </div>
-        <div class="foot right t30">
-          <el-button
-            size="medium"
-            class="r24"
-            type="primary"
-            @click="onCheck('baggageTableData')"
-          >确定</el-button>
-          <el-button
-            size="medium"
-            @click="hide"
-          >取消</el-button>
-        </div>
-      </div>
-    </Dialog>
-  </div>
-</template>
-<script>
-import Dialog from '@/layout/components/Dialog/index.vue'
-import { myQuery } from '@/api/dataIntegration'
-import { BaggageMessageQuery } from '@/api/flight'
-import tableColsMixin from '../../mixins/tableCols'
-import { throttledExportToExcel } from '@/utils/table'
-
-export default {
-  name: 'BaggageView',
-  components: {
-    Dialog
-  },
-  mixins: [tableColsMixin],
-  data() {
-    return {
-      departureAirport: '',
-      landingAirport: '',
-      queryData: {},
-      basicInfoHeight: 0,
-      baggageBasicInfoCols: [
-        {
-          label: '行李牌号',
-          prop: 'bagNo'
-        },
-        {
-          label: '航班号',
-          prop: 'flightNO'
-        },
-        {
-          label: '企业或团队名称',
-          prop: 'teamOrGroup'
-        },
-        {
-          label: '值机位置',
-          prop: 'checkInLocation'
-        },
-        {
-          label: '特殊行李类型',
-          prop: 'specialType'
-        },
-        {
-          label: 'PNR编号',
-          prop: 'PNR'
-        },
-        {
-          label: '旅客姓名大写拼音',
-          prop: 'name'
-        },
-        {
-          label: '装载序列号',
-          prop: 'loadSequenceIndex'
-        },
-        {
-          label: '总件数',
-          prop: 'totalNumber'
-        },
-        {
-          label: '总重量',
-          prop: 'totalWeight'
-        },
-        {
-          label: '尺寸',
-          prop: 'size'
-        },
-        {
-          label: '外部特征描述',
-          prop: 'externalCharacterization'
-        },
-        {
-          label: '常旅客号',
-          prop: 'frequentFlyerNumber'
-        },
-        {
-          label: '常旅客级别',
-          prop: 'frequentFlyerClass'
-        },
-        {
-          label: '是否取消值机',
-          prop: 'whetherToCancelTheCheckIn'
-        },
-        {
-          label: '是否可装载',
-          prop: 'isItLoadable'
-        },
-        {
-          label: '是否可运输',
-          prop: 'isItTransportable'
-        },
-        {
-          label: '行李激活状态',
-          prop: 'activeState'
-        },
-        {
-          label: '无BSM状态',
-          prop: 'noBSM'
-        },
-        {
-          label: '中转进航班',
-          prop: 'inFlightNo'
-        },
-        {
-          label: '中转出航班',
-          prop: 'transferFlightNo'
-        },
-        {
-          label: '速运标记',
-          prop: 'expressSign'
-        },
-        {
-          label: '破损标记',
-          prop: 'brokenSign'
-        },
-        {
-          label: '投诉标记',
-          prop: 'complaintSign'
-        },
-        {
-          label: '赔偿标记',
-          prop: 'compensationSign'
-        },
-        {
-          label: '异常状态',
-          prop: 'bagExcType'
-        }
-      ],
-      baggageBasicInfo: {},
-      dialogVisibledele: false,
-      active: 2,
-      infoBtn: '',
-      infoRadios: ['跟踪信息', '跟踪报文'],
-      messageList: [
-        // {
-        //   content: `BSM
-        //     .V/1LHRB
-        //     .F/XX1640/08APR/PEK/Y
-        //     .O/ZZ941/08APR/DXB/E
-        //     .N/0666826758001
-        //     .D/SELF//08APR/110023L//PEK30113
-        //     .S/N/32L/C/030//Y/I
-        //     .W/K/l/0
-        //     .P/1CUI/DI ENDBSM`,
-        //   date: '2022-04-25 12:42:38:00'
-        // }
-      ],
-      // messageTooltipList: [],
-      checkList: [],
-      stepData: new Array(9).fill({}),
-      tableCols: [
-        {
-          name: '航班号',
-          prop: 'flightNO'
-        },
-        { name: '航班日期', prop: 'flightDate', width: 100 },
-        {
-          name: '起飞航站\n预计起飞时间',
-          prop: 'departureAirport',
-          width: 111
-        },
-        {
-          name: '目的航站\n预计降落时间',
-          prop: 'landingAirport',
-          sortable: 'custom',
-          width: 111
-        },
-        { name: '旅客舱位', prop: 'passengerCompartment', width: 70 },
-        { name: '旅客座位号', prop: 'passengerSeatNumber' },
-        { name: '值机序号', prop: 'passengerCheckInNumber', width: 70 },
-        { name: '节点标识', prop: 'nodeCode', width: 100 },
-        { name: '节点名称', prop: 'nodeName' },
-        { name: '位置标识', prop: 'locationCode' },
-        // { name: '位置码', prop: '',  },
-        { name: '位置描述', prop: 'locationRemark' },
-        { name: '读取时间', prop: 'dealTime', width: 158 },
-        { name: '结果', prop: 'status' },
-        { name: '次级代码', prop: 'secondaryCode', width: 70 },
-        { name: '操作人', prop: 'AgentCode', width: 100 },
-        { name: '设备ID', prop: 'DeviceCode' },
-        { name: '发往位置', prop: 'toLocation' },
-        { name: '发往位置描述', prop: 'toLocationMark', width: 110 },
-        { name: '装载序号', prop: 'LoadSN' },
-        { name: '容器编号', prop: 'U_Device_ID', width: 100 },
-        { name: '数据来源', prop: 'dataSource' }
-      ],
-      baggageTableData: [],
-      spanArr: [],
-      pos: 0,
-      hoveredRow: null,
-      loopEvent: null,
-      queryMessageLoop: null
-    }
-  },
-  computed: {
-    lineWidth() {
-      for (let i = this.stepData.length - 1; i > -1; i--) {
-        if (this.stepData[i].DealTime) {
-          return (i * 100) / (this.stepData.length - 1) + '%'
-        }
-      }
-      return 0
-    },
-    // messageTooltip() {
-    //   return function (resourceFile) {
-    //     const message = this.messageTooltipList.find(message => message.resourceFile === resourceFile)
-    //     return message ? `${message.date}\n${message.dataContent.replaceAll(/[\r\n]{2,}/g, '\n')}` : ''
-    //   }
-    // },
-    // popoverVisible() {
-    //   return function (item) {
-    //     return (
-    //       (item.hover || item.tableHover) &&
-    //       this.messageTooltipList.some(message => message.resourceFile === item.resourceFile)
-    //     )
-    //   }
-    // },
-    formattedBaggageInfo() {
-      return function (prop) {
-        const value = this.baggageBasicInfo[prop]
-        if ((value ?? '') === '') {
-          return ''
-        } else if (prop === 'transitSign') {
-          return Number(value) === 1 ? '中转' : '非中转'
-        } else if (
-          [
-            'whetherToCancelTheCheckIn',
-            'isItLoadable',
-            'isItTransportable',
-            'activeState',
-            'noBSM',
-            'expressSign',
-            'brokenSign',
-            'complaintSign',
-            'compensationSign',
-            'bagExcType'
-          ].includes(prop)
-        ) {
-          return Number(value) === 1 || String(value) === 'Y' ? '是' : '否'
-        } else {
-          return value
-        }
-      }
-    }
-  },
-  watch: {
-    $route: {
-      handler({ path, query }) {
-        this.infoBtn = ''
-        if (path.includes('baggageView')) {
-          const { flightNO, flightDate, bagSN } = query
-          if (flightNO && flightDate && bagSN) {
-            this.queryData = { flightNO, flightDate, bagSN }
-            this.infoBtn = this.infoRadios[0]
-          } else {
-            this.$router.push('/advance')
-          }
-        }
-      },
-      deep: true,
-      immediate: true
-    },
-    infoBtn: {
-      handler(val) {
-        this.clearIntervalAll()
-        const that = this
-        if (val === this.infoRadios[0]) {
-          this.queryBaggageAll()
-          this.loopEvent = setInterval(function () {
-            that.queryBaggageAll()
-          }, 3000)
-        } else if (val === this.infoRadios[1]) {
-          this.baggageMessageQuery()
-          this.queryMessageLoop = setInterval(function () {
-            that.baggageMessageQuery()
-          }, 3000)
-        }
-      },
-      immediate: true
-    },
-    hoveredRow: {
-      handler(row) {
-        this.stepData.forEach(item => {
-          item.tableHover = row && item.resourceFile === row.resourceFile
-        })
-      },
-      deep: true
-    }
-  },
-  activated() {
-    this.basicInfoHeight = this.$refs['basicInfo'].offsetHeight
-    this.$refs['table']?.doLayout()
-  },
-  updated() {
-    this.basicInfoHeight = this.$refs['basicInfo'].offsetHeight
-    this.$refs['table']?.doLayout()
-  },
-  deactivated() {
-    this.clearIntervalAll()
-  },
-  beforeDestroy() {
-    this.clearIntervalAll()
-  },
-  methods: {
-    clearIntervalAll() {
-      this.loopEvent && clearInterval(this.loopEvent)
-      this.loopEvent = null
-      this.queryMessageLoop && clearInterval(this.queryMessageLoop)
-      this.queryMessageLoop = null
-    },
-    // objectSpanMethod({ row, column, rowIndex, columnIndex }) {
-    //   if (columnIndex < 4) {
-    //     const _row = this.spanArr[rowIndex]
-    //     const _col = _row > 0 ? 1 : 0
-    //     return {
-    //       rowspan: _row,
-    //       colspan: _col
-    //     }
-    //   }
-    // },
-    initTableData(tableData) {
-      const spanArr = []
-      let pos = 0
-      for (let i = 0; i < tableData.length; i++) {
-        if (i === 0) {
-          spanArr.push(1)
-        } else {
-          if (
-            tableData[i]['flightNO'] === tableData[i - 1]['flightNO'] &&
-            tableData[i]['flightDate'] === tableData[i - 1]['flightDate'] &&
-            tableData[i]['departureAirport'] === tableData[i - 1]['departureAirport'] &&
-            tableData[i]['landingAirport'] === tableData[i - 1]['landingAirport']
-          ) {
-            spanArr[pos] += 1
-            spanArr.push(0)
-          } else {
-            spanArr.push(1)
-            pos = i
-          }
-        }
-      }
-      this.spanArr = spanArr
-      this.pos = pos
-    },
-    headerCellClass({ row, column, rowIndex, columnIndex }) {
-      if (['departureAirport', 'landingAirport'].includes(column.property)) {
-        return 'pre-line'
-      }
-    },
-    cellClass({ row, column, rowIndex, columnIndex }) {
-      const classes = []
-      if (column.property === 'flightNO') {
-        classes.push('cell-click')
-      }
-      if (['departureAirport', 'landingAirport'].includes(column.property)) {
-        classes.push('pre-line')
-      }
-      return classes.join(' ')
-    },
-    cellClickHandler(row, column, cell, event) {
-      switch (column.property) {
-        case 'flightNO':
-          this.$router.push({
-            path: `/${this.$route.path.split('/').slice(1, -1).join('/')}/flightView`,
-            query: {
-              flightNO: row.flightNO,
-              flightDate: row.flightDate
-            }
-          })
-          break
-        default:
-          break
-      }
-    },
-    tableSpanMethod({ row, column, rowIndex, columnIndex }) {
-      if (['flightNO', 'flightDate', 'departureAirport', 'landingAirport'].includes(column['property'])) {
-        const _row = this.spanArr[rowIndex]
-        const _col = _row > 0 ? 1 : 0
-        return {
-          rowspan: _row,
-          colspan: _col
-        }
-      }
-    },
-    itemMouseEnterHandler(item) {
-      if (item.resourceFile) {
-        // this.checkBaggageMessage(item.resourceFile)
-        item.hover = true
-      }
-    },
-    itemMouseLeaveHandler(item) {
-      item.hover = false
-    },
-    cellMouseEnterHandler(row, column, cell, event) {
-      // if (row?.resourceFile) {
-      //   this.checkBaggageMessage(row.resourceFile)
-      // }
-      this.hoveredRow = row
-    },
-    cellMouseLeaveHandler() {
-      this.hoveredRow = null
-    },
-    exportHandler(refName, tableName) {
-      const table = this.$refs[refName].$el.cloneNode(true)
-      const fileName = `${tableName}-${this.queryData.bagSN}-${this.queryData.flightNO}-${this.queryData.flightDate}.xlsx`
-      throttledExportToExcel(table, tableName, fileName)
-    },
-    async checkBaggageMessage(resourceFile) {
-      if (!this.messageTooltipList.some(message => message.resourceFile === resourceFile)) {
-        const result = await this.queryMessage([resourceFile])
-        this.messageTooltipList.push({
-          ...result[0],
-          resourceFile
-        })
-      }
-    },
-    // 行李详情基础信息
-    queryBaggageBasicInfo(dataContent) {
-      return myQuery(DATACONTENT_ID.baggageBasicInfo, ...dataContent)
-    },
-    // 行李详情追踪链
-    queryBaggageTrack(dataContent) {
-      return myQuery(DATACONTENT_ID.baggageTrack, ...dataContent)
-    },
-    // 行李详情表格
-    queryBaggageDetails(dataContent) {
-      return myQuery(DATACONTENT_ID.baggageDetails, ...dataContent)
-    },
-    // 原始报文
-    async queryMessage(dataContent) {
-      try {
-        const { code, returnData, message } = await BaggageMessageQuery({
-          id: DATACONTENT_ID.baggageMessage,
-          dataContent
-        })
-        if (Number(code) === 0) {
-          return returnData.listValues
-        } else {
-          this.$message.error(message ?? '失败')
-        }
-      } catch (error) {
-        console.log('出错了', error.message || error)
-      }
-    },
-    // async queryMessage(dataContent) {
-    //   return myQuery(DATACONTENT_ID.baggageMessage, ...dataContent)
-    // },
-    async queryBaggageAll(queryData = this.queryData) {
-      const { flightNO, flightDate, bagSN } = queryData
-      const dataContent = [flightNO, flightDate, bagSN]
-      try {
-        const [
-          baggageBasicInfo,
-          // baggageTrack,
-          baggageDetails
-        ] = await Promise.all([
-          this.queryBaggageBasicInfo(dataContent),
-          // this.queryBaggageTrack(new Array(2).fill(dataContent).flat()),
-          this.queryBaggageDetails(new Array(6).fill(dataContent).flat())
-        ])
-        if (baggageBasicInfo.length) {
-          baggageBasicInfo[0].flightNO = flightNO
-          this.baggageBasicInfo = baggageBasicInfo[0]
-        }
-        const stepData = baggageDetails.filter((item, index, array) => {
-          if (item.nodeCode === 'CHECKIN') {
-            const firstMatchedIndex = array.findIndex(
-              _item => _item.flightNO === item.flightNO && _item.nodeCode === item.nodeCode
-            )
-            return firstMatchedIndex === index
-          } else {
-            const lastMatchedIndex = array.findLastIndex(
-              _item => _item.flightNO === item.flightNO && _item.nodeCode === item.nodeCode
-            )
-            return lastMatchedIndex === index
-          }
-        })
-        stepData.forEach((item, index) => {
-          const { hover, tableHover } = this.stepData[index] ?? {}
-          this.stepData.splice(index, 1, {
-            NodeNameEN: item.nodeCode,
-            DealTime: item.dealTime?.replace('T', '\n'),
-            resourceFile: item.resourceFile,
-            hover: !!hover,
-            tableHover: !!tableHover
-          })
-        })
-        this.baggageTableData = baggageDetails.map(item => {
-          if (item['dealTime']) {
-            item['dealTime'] = item['dealTime'].replace('T', ' ')
-          }
-          item['departureAirport'] = `${item['departureAirport']}\n${
-            item['departureTime'] ? item['departureTime'].replace('T', '\n') : ''
-          }`
-          item['landingAirport'] = `${item['landingAirport']}\n${
-            item['landingTime'] ? item['landingTime'].replace('T', '\n') : ''
-          }`
-          if (item['DeviceCode'] === 'STARHUB') {
-            item['dataSource'] = 'Manual Load'
-          } else if (item['toLocation']?.length === 2) {
-            item['dataSource'] = 'RFID'
-          } else if (item['secondaryCode'] === 'R') {
-            item['dataSource'] = 'BRS'
-          }
-          return item
-        })
-        this.initTableData(this.baggageTableData)
-      } catch (error) {
-        console.log('出错了', error.message || error)
-      }
-    },
-    async baggageMessageQuery() {
-      const { flightNO, flightDate, bagSN } = this.queryData
-      const dataContent = [flightNO, flightDate, bagSN]
-      try {
-        const result = await this.queryMessage(dataContent)
-        this.messageList = result.map(message => {
-          // message.dataContent = JSON.parse(message.dataContent).dataContent
-          return message
-        })
-      } catch (error) {
-        console.log('出错了', error.message || error)
-      }
-    }
-  }
-}
-</script>
-<style lang="scss">
-.radioBtn {
-  padding: 5px;
-  background: #000d2a;
-  .el-radio-button__inner {
-    background: #000d2a;
-    color: #fff;
-    border: none;
-    font-weight: bold;
-  }
-  .el-radio-button:first-child .el-radio-button__inner {
-    border: none;
-  }
-}
-</style>
-<style lang="scss" scoped>
-.baggage-view {
-  width: 100%;
-  height: calc(100vh - 81px);
-  overflow: hidden;
-  background: #dfe3ea;
-  padding: 8px 8px 0;
-  .part1 {
-    width: 100%;
-    // height: 232px;
-    background: #041741;
-    padding: 16px 30px;
-    .title {
-      font-size: 18px;
-      font-weight: bold;
-      color: #ffffff;
-      width: 320px;
-      display: flex;
-      flex-direction: row;
-      justify-content: space-between;
-      align-items: center;
-    }
-    .part1_info {
-      width: 100%;
-      color: #fff;
-      font-size: 14px;
-      font-weight: 400;
-      color: #ffffff;
-      > .el-row > .el-col {
-        height: 38px;
-        line-height: 38px;
-        display: flex;
-        .label {
-          flex-basis: 126px;
-          text-align: right;
-        }
-        .content {
-          flex: 1;
-          margin: 0;
-          white-space: nowrap;
-          overflow: hidden;
-          text-overflow: ellipsis;
-        }
-      }
-    }
-  }
-  .part2 {
-    margin: 8px 0;
-    width: 100%;
-    padding: 24px 30px;
-    background: #ffffff;
-    display: flex;
-    flex-direction: row;
-    justify-content: space-between;
-    align-items: center;
-    .part2_info {
-      flex: 1;
-      display: flex;
-      flex-direction: row;
-      justify-content: flex-start;
-      align-items: center;
-      .title {
-        font-size: 18px;
-        font-weight: bold;
-        color: #303133;
-        margin-right: 20px;
-      }
-      .type {
-        font-size: 18px;
-        font-weight: bold;
-        margin-right: 20px;
-      }
-      .warn {
-        color: #df3559;
-      }
-      .normal {
-        color: #519f6b;
-      }
-      .step {
-        flex: 1;
-        height: 80px;
-        max-width: 1430px;
-        position: relative;
-        .baggage-track-chart {
-          display: flex;
-          flex-direction: row;
-          justify-content: space-between;
-          align-items: center;
-          width: 100%;
-          overflow-x: scroll;
-          overflow-y: hidden;
-        }
-        .stepLine {
-          width: 100%;
-          height: 20px;
-          background: #afb4bf;
-          position: absolute;
-          top: 50%;
-          margin-top: -10px;
-          border-radius: 10px;
-          .stepLineBlue {
-            position: absolute;
-            height: 100%;
-            background: #041741;
-            border-radius: 10px;
-          }
-        }
-        .stepItem {
-          width: 80px;
-          height: 80px;
-          background: #afb4bf;
-          border-radius: 50%;
-          text-align: center;
-          font-weight: bold;
-          color: #ffffff;
-          font-size: 12px;
-          display: flex;
-          flex-direction: column;
-          align-content: space-around;
-          align-items: center;
-          // padding-top: 19px;
-          justify-content: center;
-          z-index: 1;
-          .head {
-            font-size: 14px;
-          }
-        }
-        .activeItem {
-          background: #041741;
-        }
-      }
-    }
-  }
-  .part3 {
-    width: 100%;
-    // header-80px、part1-232px、part2-128px、间隙3*8px、底部44px
-    // height: calc(100vh - 80px - 232px - 128px - 3 * 8px - 44px);
-    background: #ffffff;
-    ::v-deep .el-table {
-      width: 100%;
-      // &.el-table--striped {
-      //   .el-table__body tr.el-table__row--striped td.el-table__cell,
-      //   .el-table__header .el-table__cell {
-      //     background: #ffffff;
-      //   }
-      // }
-      .el-table__cell {
-        // background: #f0f3f7;
-        padding: 0;
-        &.cell-click {
-          cursor: pointer;
-          .cell {
-            color: #2d7cff;
-          }
-        }
-        .cell {
-          padding: 0;
-          word-spacing: 0;
-          font-size: 14px;
-          font-family: Helvetica, 'Microsoft YaHei';
-          font-weight: 400;
-          color: #303133;
-          .cell-content {
-            padding: 6px 0;
-          }
-        }
-      }
-      .el-table__body .el-table__cell .cell {
-        padding: 6px 10px;
-        .cell-content {
-          display: inline;
-          padding: 0;
-        }
-      }
-    }
-  }
-  .part4 {
-    width: 100%;
-    // height: calc(100vh - 80px - 232px - 2 * 8px - 44px);
-    .head {
-      padding: 16px 24px 11px 30px;
-      background: transparent;
-      display: flex;
-      justify-content: space-between;
-      .title {
-        line-height: 30px;
-        font-size: 18px;
-        font-weight: bold;
-        color: #303133;
-      }
-    }
-    .main {
-      height: calc(100% - 57px);
-      overflow-y: auto;
-      overflow-x: hidden;
-      ::v-deep .el-row {
-        flex-wrap: wrap;
-        .card {
-          width: 100%;
-          min-height: 440px;
-          padding: 20px;
-          background: #ffffff;
-          box-shadow: 0px 3px 2px 0px rgba(0, 0, 0, 0.29);
-          margin-bottom: 24px;
-          > .message-date {
-            width: 180px;
-            height: 26px;
-            line-height: 14px;
-            font-size: 14px;
-            font-family: Helvetica;
-            color: #afb4bf;
-            border-bottom: 1px solid #afb4bf;
-            margin-bottom: 18px;
-          }
-          > .message-content {
-            white-space: pre-line;
-            line-height: 24px;
-            font-size: 14px;
-            color: #303133;
-            word-break: break-all;
-          }
-        }
-      }
-    }
-  }
-  .btns {
-    height: 30px;
-    display: flex;
-    .btn-square {
-      margin-left: 10px;
-      width: 30px;
-    }
-  }
-}
-</style>
-
-<style lang="scss">
-.el-popover {
-  &.popover-dark {
-    background: #303133;
-    color: #ffffff;
-    border: none;
-  }
-  .pre-line {
-    white-space: pre-line;
-  }
-}
-.el-popper[x-placement^='top'].popover-dark .popper__arrow::after {
-  border-top-color: #303133;
-}
-.el-popper[x-placement^='right'].popover-dark .popper__arrow::after {
-  border-right-color: #303133;
-}
-.el-popper[x-placement^='bottom'].popover-dark .popper__arrow::after {
-  border-bottom-color: #303133;
-}
-.el-popper[x-placement^='left'].popover-dark .popper__arrow::after {
-  border-left-color: #303133;
-}
-</style>

File diff suppressed because it is too large
+ 420 - 324
src/views/baggageManagement/components/baggage/index.vue


+ 169 - 61
src/views/baggageManagement/components/departure/index.vue

@@ -8,8 +8,17 @@
 <template>
 <template>
   <div class="departure-one">
   <div class="departure-one">
     <!--功能区-表单-->
     <!--功能区-表单-->
-    <div ref="formWrap" class="terminal-form-wrap">
-      <el-form ref="form" :inline="true" :model="formData" :rules="rules" class="form">
+    <div
+      ref="formWrap"
+      class="terminal-form-wrap"
+    >
+      <el-form
+        ref="form"
+        :inline="true"
+        :model="formData"
+        :rules="rules"
+        class="form"
+      >
         <div class="form-left">
         <div class="form-left">
           <el-form-item prop="currentAirport">
           <el-form-item prop="currentAirport">
             <!-- <el-cascader
             <!-- <el-cascader
@@ -66,68 +75,179 @@
               @change="endDateChangeHandler"
               @change="endDateChangeHandler"
             />
             />
           </el-form-item> -->
           </el-form-item> -->
-          <el-form-item prop="flightDate" label="航班日期">
-            <el-date-picker v-model="formData.flightDate" :clearable="false" size="small" style="width: 300px;" type="daterange" value-format="yyyy-MM-dd" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="dateRangePickerOptions" @change="dateChangeHandler" />
+          <el-form-item
+            prop="flightDate"
+            label="航班日期"
+          >
+            <el-date-picker
+              v-model="formData.flightDate"
+              :clearable="false"
+              size="small"
+              style="width: 300px;"
+              type="daterange"
+              value-format="yyyy-MM-dd"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              :picker-options="dateRangePickerOptions"
+              @change="dateChangeHandler"
+            />
           </el-form-item>
           </el-form-item>
           <el-form-item>
           <el-form-item>
             <div class="box-item">
             <div class="box-item">
               <p>预计装载总数:</p>
               <p>预计装载总数:</p>
-              <li v-for="(item, index) in orderNum" :key="index" :class="{ 'number-item': !isNaN(item), 'mark-item': isNaN(item) }">
+              <li
+                v-for="(item, index) in orderNum"
+                :key="index"
+                :class="{ 'number-item': !isNaN(item), 'mark-item': isNaN(item) }"
+              >
                 <span v-if="!isNaN(item)">
                 <span v-if="!isNaN(item)">
                   <i ref="numberItem">0123456789</i>
                   <i ref="numberItem">0123456789</i>
                 </span>
                 </span>
-                <span v-else class="comma">{{ item }}</span>
+                <span
+                  v-else
+                  class="comma"
+                >{{ item }}</span>
               </li>
               </li>
             </div>
             </div>
           </el-form-item>
           </el-form-item>
         </div>
         </div>
-        <div class="form-right" @keyup.enter="onSubmit(0)">
+        <div
+          class="form-right"
+          @keyup.enter="onSubmit(0)"
+        >
           <el-form-item prop="search">
           <el-form-item prop="search">
-            <el-popover :value="popoverVisible" placement="bottom" trigger="manual">
+            <el-popover
+              :value="popoverVisible"
+              placement="bottom"
+              trigger="manual"
+            >
               <span>请输入航班号(示例:CA1234)或行李牌号(示例:1234567890)</span>
               <span>请输入航班号(示例:CA1234)或行李牌号(示例:1234567890)</span>
-              <el-input slot="reference" v-model="formData.search" class="input-shadow" style="width: 240px; margin-left: 105px" size="small" placeholder="请输入内容" prefix-icon="el-icon-search" clearable @focus="popoverVisible = true" @blur="popoverVisible = false" />
+              <el-input
+                slot="reference"
+                v-model="formData.search"
+                class="input-shadow"
+                style="width: 240px; margin-left: 105px"
+                size="small"
+                placeholder="请输入内容"
+                prefix-icon="el-icon-search"
+                clearable
+                @focus="popoverVisible = true"
+                @blur="popoverVisible = false"
+              />
             </el-popover>
             </el-popover>
           </el-form-item>
           </el-form-item>
           <el-form-item>
           <el-form-item>
-            <el-button class="btn-shadow" size="mini" type="primary" @click="onSubmit(0)">搜索</el-button>
+            <el-button
+              class="btn-shadow"
+              size="mini"
+              type="primary"
+              @click="onSubmit(0)"
+            >搜索</el-button>
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['dm_dt_timeIcon']">
           <el-form-item v-is="['dm_dt_timeIcon']">
             <TimeZoneSelector />
             <TimeZoneSelector />
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['dm_dt_columnSettings']">
           <el-form-item v-is="['dm_dt_columnSettings']">
-            <img class="btn-img btn-shadow" src="../../../../assets/baggage/ic_setting.png" title="列设置" @click="show">
+            <img
+              class="btn-img btn-shadow"
+              src="../../../../assets/baggage/ic_setting.png"
+              title="列设置"
+              @click="show"
+            >
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['dm_dt_columnSettings']">
           <el-form-item v-is="['dm_dt_columnSettings']">
-            <img class="btn-img btn-shadow" src="../../../../assets/baggage/ic_export.png" title="导出" @click="exportHandler('table', '航站离港列表')">
+            <img
+              class="btn-img btn-shadow"
+              src="../../../../assets/baggage/ic_export.png"
+              title="导出"
+              @click="exportHandler('table', '航站离港列表')"
+            >
           </el-form-item>
           </el-form-item>
         </div>
         </div>
       </el-form>
       </el-form>
     </div>
     </div>
     <!--表格-->
     <!--表格-->
-    <div v-loading="loading" class="terminal-table" element-loading-text="拼命加载中" element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)">
-      <el-table ref="table" class="table" :height="computedTableHeight" :data="dealedTableData" :header-cell-class-name="headerCellClass" :row-class-name="tableRowClassName" :cell-class-name="cellClass" show-summary :summary-method="summaryMethod" border stripe fit @cell-click="cellClickHandler">
-        <el-table-column v-for="col in tableColsCopy" :key="col.prop" :prop="col.prop" :label="col.label" :width="col.width" :fixed="col.fixed" :formatter="tableFormat">
+    <div
+      v-loading="loading"
+      class="terminal-table"
+      element-loading-text="拼命加载中"
+      element-loading-spinner="el-icon-loading"
+      element-loading-background="rgba(0, 0, 0, 0.8)"
+    >
+      <el-table
+        ref="table"
+        class="table"
+        :height="computedTableHeight"
+        :data="dealedTableData"
+        :header-cell-class-name="headerCellClass"
+        :row-class-name="tableRowClassName"
+        :cell-class-name="cellClass"
+        show-summary
+        :summary-method="summaryMethod"
+        border
+        stripe
+        fit
+        @cell-click="cellClickHandler"
+      >
+        <el-table-column
+          v-for="col in tableColsCopy"
+          :key="col.prop"
+          :prop="col.prop"
+          :label="col.label"
+          :width="col.width"
+          :fixed="col.fixed"
+          :formatter="tableFormat"
+        >
           <template #header>
           <template #header>
-            <el-tooltip :content="col.desc || childCol.label" placement="top">
-              <TableHeaderCell :label="col.label" :filter-options="tableDataFilters[col.prop]" :filter-values.sync="filterValues[col.prop]" :sortable="col.sortable" :sort-rule.sync="tableDataSortRules[col.prop]" />
+            <el-tooltip
+              :content="col.desc || childCol.label"
+              placement="top"
+            >
+              <TableHeaderCell
+                :label="col.label"
+                :filter-options="tableDataFilters[col.prop]"
+                :filter-values.sync="filterValues[col.prop]"
+                :sortable="col.sortable"
+                :sort-rule.sync="tableDataSortRules[col.prop]"
+              />
             </el-tooltip>
             </el-tooltip>
           </template>
           </template>
         </el-table-column>
         </el-table-column>
       </el-table>
       </el-table>
     </div>
     </div>
     <!--列设置-->
     <!--列设置-->
-    <Dialog :flag="dialogFlag" class="dialog-check-group">
+    <Dialog
+      :flag="dialogFlag"
+      class="dialog-check-group"
+    >
       <div class="dialog-wrapper">
       <div class="dialog-wrapper">
         <div class="title">列设置</div>
         <div class="title">列设置</div>
         <div class="content">
         <div class="content">
-          <el-tree :data="tableCols" :class="colsCheckClass" show-checkbox node-key="index" :default-expand-all="true" :props="{
+          <el-tree
+            :data="tableCols"
+            :class="colsCheckClass"
+            show-checkbox
+            node-key="index"
+            :default-expand-all="true"
+            :props="{
               label: 'label',
               label: 'label',
               children: 'children'
               children: 'children'
-            }" :default-checked-keys="checkedKeysTemp" @check="handleCheck" />
+            }"
+            :default-checked-keys="checkedKeysTemp"
+            @check="handleCheck"
+          />
         </div>
         </div>
         <div class="foot right t30">
         <div class="foot right t30">
-          <el-button size="medium" class="r24" type="primary" @click="onCheck">确定</el-button>
-          <el-button size="medium" @click="hide">取消</el-button>
+          <el-button
+            size="medium"
+            class="r24"
+            type="primary"
+            @click="onCheck"
+          >确定</el-button>
+          <el-button
+            size="medium"
+            @click="hide"
+          >取消</el-button>
         </div>
         </div>
       </div>
       </div>
     </Dialog>
     </Dialog>
@@ -149,7 +269,7 @@ export default {
   name: 'DepartureTerminalView',
   name: 'DepartureTerminalView',
   components: { Dialog, TimeZoneSelector, TableHeaderCell },
   components: { Dialog, TimeZoneSelector, TableHeaderCell },
   mixins: [terminalMixin, formMixin, tableColsMixin, timeZoneMixin],
   mixins: [terminalMixin, formMixin, tableColsMixin, timeZoneMixin],
-  data () {
+  data() {
     return {
     return {
       orderNum: ['0', '0', '0', '0', '0', '0'], // 默认总数
       orderNum: ['0', '0', '0', '0', '0', '0'], // 默认总数
       popoverVisible: false,
       popoverVisible: false,
@@ -175,8 +295,8 @@ export default {
         },
         },
         {
         {
           prop: 'planDepartureTime',
           prop: 'planDepartureTime',
-          label: '预计起飞时间',
-          desc: '指航班预计起飞时间,数据是变化的,仅显示最新结果',
+          label: '起飞时间',
+          desc: '根据优先级别显示时间。优先级别:1.实际起飞时间,2.预计起飞时间,3.计划起飞时间',
           width: 150,
           width: 150,
           filterable: true,
           filterable: true,
           sortable: true
           sortable: true
@@ -298,11 +418,11 @@ export default {
     }
     }
   },
   },
   computed: {
   computed: {
-    singleDay () {
+    singleDay() {
       return this.startDate === this.endDate
       return this.startDate === this.endDate
     }
     }
   },
   },
-  mounted () {
+  mounted() {
     this.getAirPortData()
     this.getAirPortData()
     this.table = this.$refs.table.bodyWrapper
     this.table = this.$refs.table.bodyWrapper
     const that = this
     const that = this
@@ -310,46 +430,38 @@ export default {
       that.scrollTop = this.table.scrollTop
       that.scrollTop = this.table.scrollTop
     })
     })
   },
   },
-  activated () {
+  activated() {
     this.table.scrollTop = this.scrollTop
     this.table.scrollTop = this.scrollTop
     this.getTableData()
     this.getTableData()
-    const that = this
-    this.loopEvent = setInterval(function () {
-      that.getTableData()
-    }, 3000)
+    this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.departureTable)
   },
   },
-  deactivated () {
+  deactivated() {
     if (this.loopEvent) {
     if (this.loopEvent) {
       clearInterval(this.loopEvent)
       clearInterval(this.loopEvent)
       this.loopEvent = null
       this.loopEvent = null
     }
     }
   },
   },
-  beforeDestroy () {
+  beforeDestroy() {
     if (this.loopEvent) {
     if (this.loopEvent) {
       clearInterval(this.loopEvent)
       clearInterval(this.loopEvent)
       this.loopEvent = null
       this.loopEvent = null
     }
     }
   },
   },
   methods: {
   methods: {
-    resetLoopEvent () {
+    resetLoopEvent() {
       this.loading = true
       this.loading = true
       this.hasSetTableScroll = false
       this.hasSetTableScroll = false
-      if (this.loopEvent) {
-        clearInterval(this.loopEvent)
-      }
+      this.loopEvent && clearInterval(this.loopEvent)
       this.getTableData()
       this.getTableData()
-      const that = this
-      this.loopEvent = setInterval(function () {
-        that.getTableData()
-      }, 3000)
+      this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.departureTable)
     },
     },
-    airPortChange () {
+    airPortChange() {
       this.resetLoopEvent()
       this.resetLoopEvent()
     },
     },
-    dateChangeHandler () {
+    dateChangeHandler() {
       this.resetLoopEvent()
       this.resetLoopEvent()
     },
     },
-    async getAirPortData () {
+    async getAirPortData() {
       try {
       try {
         const res = await getQuery({
         const res = await getQuery({
           id: DATACONTENT_ID.departureAirMainId,
           id: DATACONTENT_ID.departureAirMainId,
@@ -366,7 +478,7 @@ export default {
         console.log('出错了', error.message || error)
         console.log('出错了', error.message || error)
       }
       }
     },
     },
-    tableRowClassName ({ row, rowIndex }) {
+    tableRowClassName({ row, rowIndex }) {
       const classes = []
       const classes = []
       if (row.flightStatus === 'DLY') {
       if (row.flightStatus === 'DLY') {
         classes.push('bgl-delayed')
         classes.push('bgl-delayed')
@@ -382,7 +494,7 @@ export default {
       }
       }
       return classes.join(' ')
       return classes.join(' ')
     },
     },
-    headerCellClass ({ row, column }) {
+    headerCellClass({ row, column }) {
       const classes = []
       const classes = []
       if (['warning', 'exceptions', 'midIn'].includes(column.property)) {
       if (['warning', 'exceptions', 'midIn'].includes(column.property)) {
         classes.push('bgl-huang')
         classes.push('bgl-huang')
@@ -404,7 +516,7 @@ export default {
     //   this.flightAttrQuery(params)
     //   this.flightAttrQuery(params)
     // },
     // },
     // 获取表格数据
     // 获取表格数据
-    async getTableData () {
+    async getTableData() {
       if (!this.formData.currentAirport || !this.startDate || !this.endDate) {
       if (!this.formData.currentAirport || !this.startDate || !this.endDate) {
         return
         return
       }
       }
@@ -429,7 +541,7 @@ export default {
         console.log('出错了', error.message || error)
         console.log('出错了', error.message || error)
       }
       }
     },
     },
-    initTableData (tableData) {
+    initTableData(tableData) {
       this.leaveCount = 0
       this.leaveCount = 0
       this.baggageCount = 0
       this.baggageCount = 0
       tableData.forEach(item => {
       tableData.forEach(item => {
@@ -443,15 +555,11 @@ export default {
       this.tableData = this._.orderBy(tableData, ['hasTakeOff', 'planDepartureTime'], ['desc', 'asc'])
       this.tableData = this._.orderBy(tableData, ['hasTakeOff', 'planDepartureTime'], ['desc', 'asc'])
       setTableFilters(this.tableData, this.tableDataFilters)
       setTableFilters(this.tableData, this.tableDataFilters)
       this.toOrderNum(this.baggageCount)
       this.toOrderNum(this.baggageCount)
-      // setInterval(() => {
-      //   this.baggageCount = this.baggageCount+1;
-      //    // 这里输入数字即可调用
-      // }, 2000);
       this.$nextTick(() => {
       this.$nextTick(() => {
         this.setTableScroll()
         this.setTableScroll()
       })
       })
     },
     },
-    setTableScroll () {
+    setTableScroll() {
       if (!this.singleDay || this.hasSetTableScroll || this.leaveCount === 0) {
       if (!this.singleDay || this.hasSetTableScroll || this.leaveCount === 0) {
         return
         return
       }
       }
@@ -471,7 +579,7 @@ export default {
       }, 0)
       }, 0)
       this.hasSetTableScroll = true
       this.hasSetTableScroll = true
     },
     },
-    setNumberTransform () {
+    setNumberTransform() {
       const numberItems = this.$refs.numberItem // 拿到数字的ref,计算元素数量
       const numberItems = this.$refs.numberItem // 拿到数字的ref,计算元素数量
       const numberArr = this.orderNum.filter(item => !isNaN(item))
       const numberArr = this.orderNum.filter(item => !isNaN(item))
       // 结合CSS 对数字字符进行滚动,显示订单数量
       // 结合CSS 对数字字符进行滚动,显示订单数量
@@ -481,7 +589,7 @@ export default {
       }
       }
     },
     },
 
 
-    toOrderNum (num) {
+    toOrderNum(num) {
       num = num.toString()
       num = num.toString()
       if (num.length < 6) {
       if (num.length < 6) {
         num = '0' + num // 如未满八位数,添加"0"补位
         num = '0' + num // 如未满八位数,添加"0"补位
@@ -494,7 +602,7 @@ export default {
       }
       }
       this.setNumberTransform()
       this.setNumberTransform()
     },
     },
-    exportHandler (refName, tableName) {
+    exportHandler(refName, tableName) {
       if (this.loading) {
       if (this.loading) {
         return
         return
       }
       }
@@ -527,7 +635,7 @@ export default {
       optgroup,
       optgroup,
       select,
       select,
       textarea {
       textarea {
-        font-family: Helvetica, "Microsoft YaHei";
+        font-family: Helvetica, 'Microsoft YaHei';
         font-size: 14px;
         font-size: 14px;
       }
       }
       .el-switch__label {
       .el-switch__label {
@@ -633,7 +741,7 @@ export default {
       padding: 0;
       padding: 0;
       text-align: center;
       text-align: center;
       font-size: 14px;
       font-size: 14px;
-      font-family: Helvetica, "Microsoft YaHei";
+      font-family: Helvetica, 'Microsoft YaHei';
       letter-spacing: 0;
       letter-spacing: 0;
     }
     }
     .cell-click {
     .cell-click {
@@ -666,7 +774,7 @@ export default {
         &.redBorder {
         &.redBorder {
           position: relative;
           position: relative;
           &::after {
           &::after {
-            content: "";
+            content: '';
             position: absolute;
             position: absolute;
             left: 0;
             left: 0;
             bottom: 0;
             bottom: 0;
@@ -686,7 +794,7 @@ export default {
         background: lightcoral !important;
         background: lightcoral !important;
         position: relative;
         position: relative;
         &::after {
         &::after {
-          content: "";
+          content: '';
           display: block;
           display: block;
           width: 100%;
           width: 100%;
           height: 100%;
           height: 100%;

+ 4 - 14
src/views/baggageManagement/components/departureC/index.vue

@@ -287,8 +287,8 @@ export default {
         },
         },
         {
         {
           prop: 'planDepartureTime',
           prop: 'planDepartureTime',
-          label: '预计起飞时间',
-          desc: '指航班预计起飞时间,数据是变化的,仅显示最新结果',
+          label: '起飞时间',
+          desc: '根据优先级别显示时间。优先级别:1.实际起飞时间,2.预计起飞时间,3.计划起飞时间',
           width: 150,
           width: 150,
           filterable: true,
           filterable: true,
           sortable: true
           sortable: true
@@ -425,10 +425,7 @@ export default {
   activated() {
   activated() {
     this.table.scrollTop = this.scrollTop
     this.table.scrollTop = this.scrollTop
     this.getTableData()
     this.getTableData()
-    const that = this
-    this.loopEvent = setInterval(function () {
-      that.getTableData()
-    }, 3000)
+    this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.departureTable)
   },
   },
   deactivated() {
   deactivated() {
     if (this.loopEvent) {
     if (this.loopEvent) {
@@ -475,10 +472,7 @@ export default {
         clearInterval(this.loopEvent)
         clearInterval(this.loopEvent)
       }
       }
       this.getTableData()
       this.getTableData()
-      const that = this
-      this.loopEvent = setInterval(function () {
-        that.getTableData()
-      }, 3000)
+      this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.departureTable)
     },
     },
     airPortChange() {
     airPortChange() {
       this.resetLoopEvent()
       this.resetLoopEvent()
@@ -584,10 +578,6 @@ export default {
       this.tableData = this._.orderBy(tableData, ['hasTakeOff', 'planDepartureTime'], ['desc', 'asc'])
       this.tableData = this._.orderBy(tableData, ['hasTakeOff', 'planDepartureTime'], ['desc', 'asc'])
       setTableFilters(this.tableData, this.tableDataFilters)
       setTableFilters(this.tableData, this.tableDataFilters)
       this.toOrderNum(this.baggageCount)
       this.toOrderNum(this.baggageCount)
-      // setInterval(() => {
-      //   this.baggageCount = this.baggageCount+1;
-      //    // 这里输入数字即可调用
-      // }, 2000);
       this.$nextTick(() => {
       this.$nextTick(() => {
         this.setTableScroll()
         this.setTableScroll()
       })
       })

+ 4 - 2
src/views/baggageManagement/components/flight/index.vue

@@ -302,6 +302,7 @@
             :key="col.id"
             :key="col.id"
             :prop="col.prop"
             :prop="col.prop"
             :label="col.label"
             :label="col.label"
+            :width="col.width"
             :align="col.align || 'center'"
             :align="col.align || 'center'"
             :show-overflow-tooltip="true"
             :show-overflow-tooltip="true"
           />
           />
@@ -540,9 +541,10 @@ export default {
       flightInfo: {},
       flightInfo: {},
       keyWords: '',
       keyWords: '',
       containerTableColumn: [
       containerTableColumn: [
-        { label: '容器编号', prop: 'containerNumber' },
+        { label: '容器编号', prop: 'containerNumber', width: 100 },
         { label: '类型', prop: 'style' },
         { label: '类型', prop: 'style' },
-        { label: '行李数', prop: 'numberOfBags' }
+        { label: '行李数', prop: 'numberOfBags' },
+        { label: '仓位', prop: 'containerSpace' }
       ],
       ],
       // transferInTableColumn: [
       // transferInTableColumn: [
       //   { label: '航班号', prop: 'preFlightNO' },
       //   { label: '航班号', prop: 'preFlightNO' },

+ 188 - 64
src/views/baggageManagement/components/transferArrival/index.vue

@@ -8,8 +8,17 @@
 <template>
 <template>
   <div class="transfer-in">
   <div class="transfer-in">
     <!--功能区-表单-->
     <!--功能区-表单-->
-    <div ref="formWrap" class="terminal-form-wrap">
-      <el-form ref="form" :inline="true" :model="formData" :rules="rules" class="form">
+    <div
+      ref="formWrap"
+      class="terminal-form-wrap"
+    >
+      <el-form
+        ref="form"
+        :inline="true"
+        :model="formData"
+        :rules="rules"
+        class="form"
+      >
         <div class="form-left">
         <div class="form-left">
           <el-form-item prop="currentAirport">
           <el-form-item prop="currentAirport">
             <!-- <el-cascader
             <!-- <el-cascader
@@ -98,54 +107,157 @@
               @change="endDateChangeHandler"
               @change="endDateChangeHandler"
             />
             />
           </el-form-item> -->
           </el-form-item> -->
-          <el-form-item prop="flightDate" label="航班日期">
-            <el-date-picker v-model="formData.flightDate" :clearable="false" size="small" style="width: 300px;" type="daterange" value-format="yyyy-MM-dd" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="dateRangePickerOptions" @change="dateChangeHandler" />
+          <el-form-item
+            prop="flightDate"
+            label="航班日期"
+          >
+            <el-date-picker
+              v-model="formData.flightDate"
+              :clearable="false"
+              size="small"
+              style="width: 300px;"
+              type="daterange"
+              value-format="yyyy-MM-dd"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期"
+              :picker-options="dateRangePickerOptions"
+              @change="dateChangeHandler"
+            />
           </el-form-item>
           </el-form-item>
           <el-form-item>
           <el-form-item>
             <div class="box-item">
             <div class="box-item">
               <p>预计中转数:</p>
               <p>预计中转数:</p>
-              <li v-for="(item, index) in orderNum" :key="index" :class="{ 'number-item': !isNaN(item), 'mark-item': isNaN(item) }">
+              <li
+                v-for="(item, index) in orderNum"
+                :key="index"
+                :class="{ 'number-item': !isNaN(item), 'mark-item': isNaN(item) }"
+              >
                 <span v-if="!isNaN(item)">
                 <span v-if="!isNaN(item)">
                   <i ref="numberItem">0123456789</i>
                   <i ref="numberItem">0123456789</i>
                 </span>
                 </span>
-                <span v-else class="comma">{{ item }}</span>
+                <span
+                  v-else
+                  class="comma"
+                >{{ item }}</span>
               </li>
               </li>
             </div>
             </div>
           </el-form-item>
           </el-form-item>
         </div>
         </div>
-        <div class="form-right" @keyup.enter="onSubmit(1)">
+        <div
+          class="form-right"
+          @keyup.enter="onSubmit(1)"
+        >
           <el-form-item prop="search">
           <el-form-item prop="search">
-            <el-popover :value="popoverVisible" placement="bottom" trigger="manual">
+            <el-popover
+              :value="popoverVisible"
+              placement="bottom"
+              trigger="manual"
+            >
               <span>请输入航班号(示例:CA1234)或行李牌号(示例:1234567890)</span>
               <span>请输入航班号(示例:CA1234)或行李牌号(示例:1234567890)</span>
-              <el-input slot="reference" v-model="formData.search" class="input-shadow" style="width: 240px;" size="small" placeholder="请输入内容" prefix-icon="el-icon-search" clearable @focus="popoverVisible = true" @blur="popoverVisible = false" />
+              <el-input
+                slot="reference"
+                v-model="formData.search"
+                class="input-shadow"
+                style="width: 240px;"
+                size="small"
+                placeholder="请输入内容"
+                prefix-icon="el-icon-search"
+                clearable
+                @focus="popoverVisible = true"
+                @blur="popoverVisible = false"
+              />
             </el-popover>
             </el-popover>
           </el-form-item>
           </el-form-item>
           <el-form-item>
           <el-form-item>
-            <el-button class="btn-shadow" size="mini" type="primary" @click="onSubmit(1)">搜索</el-button>
+            <el-button
+              class="btn-shadow"
+              size="mini"
+              type="primary"
+              @click="onSubmit(1)"
+            >搜索</el-button>
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['ti_showTransit']">
           <el-form-item v-is="['ti_showTransit']">
-            <el-button class="btn-shadow" size="mini" type="primary" @click="changeView">切换视角</el-button>
+            <el-button
+              class="btn-shadow"
+              size="mini"
+              type="primary"
+              @click="changeView"
+            >切换视角</el-button>
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['ti_timeIcon']">
           <el-form-item v-is="['ti_timeIcon']">
             <TimeZoneSelector />
             <TimeZoneSelector />
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['ti_columnSettings']">
           <el-form-item v-is="['ti_columnSettings']">
-            <img class="btn-img btn-shadow" src="../../../../assets/baggage/ic_setting.png" title="列设置" @click="show">
+            <img
+              class="btn-img btn-shadow"
+              src="../../../../assets/baggage/ic_setting.png"
+              title="列设置"
+              @click="show"
+            >
           </el-form-item>
           </el-form-item>
           <el-form-item v-is="['dm_dt_columnSettings']">
           <el-form-item v-is="['dm_dt_columnSettings']">
-            <img class="btn-img btn-shadow" src="../../../../assets/baggage/ic_export.png" title="导出" @click="exportHandler('table', '航站中转进港列表')">
+            <img
+              class="btn-img btn-shadow"
+              src="../../../../assets/baggage/ic_export.png"
+              title="导出"
+              @click="exportHandler('table', '航站中转进港列表')"
+            >
           </el-form-item>
           </el-form-item>
         </div>
         </div>
       </el-form>
       </el-form>
     </div>
     </div>
     <!--表格-->
     <!--表格-->
-    <div v-loading="loading" class="terminal-table" element-loading-text="拼命加载中" element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)">
-      <el-table ref="table" class="table" :data="dealedTableData" :height="computedTableHeight" show-summary :summary-method="summaryMethod" :span-method="arraySpanMethod" :header-cell-class-name="headerCellClass" :row-class-name="tableRowClassName" :cell-class-name="cellClass" border stripe fit @cell-click="cellClickHandler">
-        <el-table-column v-for="col in tableColsCopy" :key="col.prop" :prop="col.prop" :label="col.label" :width="col.width" :fixed="col.fixed">
-          <el-table-column v-for="childCol in col.children" :key="childCol.prop" :prop="childCol.prop" :label="childCol.label" :width="childCol.width" :formatter="tableFormat">
+    <div
+      v-loading="loading"
+      class="terminal-table"
+      element-loading-text="拼命加载中"
+      element-loading-spinner="el-icon-loading"
+      element-loading-background="rgba(0, 0, 0, 0.8)"
+    >
+      <el-table
+        ref="table"
+        class="table"
+        :data="dealedTableData"
+        :height="computedTableHeight"
+        show-summary
+        :summary-method="summaryMethod"
+        :span-method="arraySpanMethod"
+        :header-cell-class-name="headerCellClass"
+        :row-class-name="tableRowClassName"
+        :cell-class-name="cellClass"
+        border
+        stripe
+        fit
+        @cell-click="cellClickHandler"
+      >
+        <el-table-column
+          v-for="col in tableColsCopy"
+          :key="col.prop"
+          :prop="col.prop"
+          :label="col.label"
+          :width="col.width"
+          :fixed="col.fixed"
+        >
+          <el-table-column
+            v-for="childCol in col.children"
+            :key="childCol.prop"
+            :prop="childCol.prop"
+            :label="childCol.label"
+            :width="childCol.width"
+            :formatter="tableFormat"
+          >
             <template #header>
             <template #header>
-              <el-tooltip :content="childCol.desc || childCol.label" placement="top">
-                <TableHeaderCell :label="childCol.label" :filter-options="tableDataFilters[childCol.prop]" :filter-values.sync="filterValues[childCol.prop]" :sortable="childCol.sortable" :sort-rule.sync="tableDataSortRules[childCol.prop]" />
+              <el-tooltip
+                :content="childCol.desc || childCol.label"
+                placement="top"
+              >
+                <TableHeaderCell
+                  :label="childCol.label"
+                  :filter-options="tableDataFilters[childCol.prop]"
+                  :filter-values.sync="filterValues[childCol.prop]"
+                  :sortable="childCol.sortable"
+                  :sort-rule.sync="tableDataSortRules[childCol.prop]"
+                />
               </el-tooltip>
               </el-tooltip>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
@@ -153,18 +265,38 @@
       </el-table>
       </el-table>
     </div>
     </div>
     <!--列设置-->
     <!--列设置-->
-    <Dialog :flag="dialogFlag" class="dialog-check-group">
+    <Dialog
+      :flag="dialogFlag"
+      class="dialog-check-group"
+    >
       <div class="dialog-wrapper">
       <div class="dialog-wrapper">
         <div class="title">列设置</div>
         <div class="title">列设置</div>
         <div class="content">
         <div class="content">
-          <el-tree :data="tableCols" :class="colsCheckClass" show-checkbox node-key="index" :default-expand-all="true" :props="{
+          <el-tree
+            :data="tableCols"
+            :class="colsCheckClass"
+            show-checkbox
+            node-key="index"
+            :default-expand-all="true"
+            :props="{
               label: 'label',
               label: 'label',
               children: 'children',
               children: 'children',
-            }" :default-checked-keys="checkedKeysTemp" @check="handleCheck" />
+            }"
+            :default-checked-keys="checkedKeysTemp"
+            @check="handleCheck"
+          />
         </div>
         </div>
         <div class="foot right t30">
         <div class="foot right t30">
-          <el-button size="medium" class="r24" type="primary" @click="onCheck">确定</el-button>
-          <el-button size="medium" @click="hide">取消</el-button>
+          <el-button
+            size="medium"
+            class="r24"
+            type="primary"
+            @click="onCheck"
+          >确定</el-button>
+          <el-button
+            size="medium"
+            @click="hide"
+          >取消</el-button>
         </div>
         </div>
       </div>
       </div>
     </Dialog>
     </Dialog>
@@ -186,7 +318,7 @@ export default {
   name: 'DepartureTerminalView',
   name: 'DepartureTerminalView',
   components: { Dialog, TimeZoneSelector, TableHeaderCell },
   components: { Dialog, TimeZoneSelector, TableHeaderCell },
   mixins: [terminalMixin, formMixin, tableColsMixin, timeZoneMixin],
   mixins: [terminalMixin, formMixin, tableColsMixin, timeZoneMixin],
-  data () {
+  data() {
     return {
     return {
       optionProps: {
       optionProps: {
         value: 'inAicompanyCode2',
         value: 'inAicompanyCode2',
@@ -231,7 +363,7 @@ export default {
             {
             {
               prop: 'actualLandingTime',
               prop: 'actualLandingTime',
               label: '降落时间',
               label: '降落时间',
-              desc: '指航班预计到达时间,数据是变化的,仅显示最新结果',
+              desc: '根据优先级别显示时间。优先级别:1.实际降落时间,2.预计降落时间,3.计划降落时间',
               width: 100
               width: 100
             },
             },
             {
             {
@@ -361,13 +493,13 @@ export default {
     }
     }
   },
   },
   computed: {
   computed: {
-    singleDay () {
+    singleDay() {
       return this.startDate === this.endDate
       return this.startDate === this.endDate
     }
     }
   },
   },
   watch: {
   watch: {
     dealedTableData: {
     dealedTableData: {
-      handler (val) {
+      handler(val) {
         this.spanArr = []
         this.spanArr = []
         let contactDot = this.contactDot
         let contactDot = this.contactDot
         val.forEach((item, index, arr) => {
         val.forEach((item, index, arr) => {
@@ -390,10 +522,10 @@ export default {
       deep: true
       deep: true
     }
     }
   },
   },
-  created () {
+  created() {
     // this.getAirPortData()
     // this.getAirPortData()
   },
   },
-  mounted () {
+  mounted() {
     this.$refs['form'].validateField('flightDate')
     this.$refs['form'].validateField('flightDate')
     this.getAirPortData()
     this.getAirPortData()
     this.table = this.$refs.table.bodyWrapper
     this.table = this.$refs.table.bodyWrapper
@@ -402,13 +534,10 @@ export default {
       that.scrollTop = this.table.scrollTop
       that.scrollTop = this.table.scrollTop
     })
     })
   },
   },
-  activated () {
+  activated() {
     this.table.scrollTop = this.scrollTop
     this.table.scrollTop = this.scrollTop
     this.getTableData()
     this.getTableData()
-    const that = this
-    this.loopEvent = setInterval(function () {
-      that.getTableData()
-    }, 3000)
+    this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.transferArrivalTable)
     // const { startDate, endDate } = this.$route.query
     // const { startDate, endDate } = this.$route.query
     // Object.entries(this.$route.query).forEach(([key, value]) => {
     // Object.entries(this.$route.query).forEach(([key, value]) => {
     //   if ((value ?? '') !== '' && JSON.stringify(value) !== '[]') {
     //   if ((value ?? '') !== '' && JSON.stringify(value) !== '[]') {
@@ -422,32 +551,27 @@ export default {
     //   this.formData.flightDate[1] = endDate
     //   this.formData.flightDate[1] = endDate
     // }
     // }
   },
   },
-  deactivated () {
+  deactivated() {
     if (this.loopEvent) {
     if (this.loopEvent) {
       clearInterval(this.loopEvent)
       clearInterval(this.loopEvent)
       this.loopEvent = null
       this.loopEvent = null
     }
     }
   },
   },
-  beforeDestroy () {
+  beforeDestroy() {
     if (this.loopEvent) {
     if (this.loopEvent) {
       clearInterval(this.loopEvent)
       clearInterval(this.loopEvent)
       this.loopEvent = null
       this.loopEvent = null
     }
     }
   },
   },
   methods: {
   methods: {
-    resetLoopEvent () {
+    resetLoopEvent() {
       this.loading = true
       this.loading = true
       this.hasSetTableScroll = false
       this.hasSetTableScroll = false
-      if (this.loopEvent) {
-        clearInterval(this.loopEvent)
-      }
+      this.loopEvent && clearInterval(this.loopEvent)
       this.getTableData()
       this.getTableData()
-      const that = this
-      this.loopEvent = setInterval(function () {
-        that.getTableData()
-      }, 3000)
+      this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.transferArrivalTable)
     },
     },
-    headerCellClass ({ row, column }) {
+    headerCellClass({ row, column }) {
       const classes = []
       const classes = []
       const rule = this.tableDataSortRules[column.property]
       const rule = this.tableDataSortRules[column.property]
       if (rule) {
       if (rule) {
@@ -455,7 +579,7 @@ export default {
       }
       }
       return classes.join(' ')
       return classes.join(' ')
     },
     },
-    tableRowClassName ({ row, rowIndex }) {
+    tableRowClassName({ row, rowIndex }) {
       const classes = []
       const classes = []
       if (row.hasArrived) {
       if (row.hasArrived) {
         classes.push('bgl-hui')
         classes.push('bgl-hui')
@@ -465,7 +589,7 @@ export default {
       }
       }
       return classes.join(' ')
       return classes.join(' ')
     },
     },
-    changeView () {
+    changeView() {
       // const query = {
       // const query = {
       //   ...this.formData,
       //   ...this.formData,
       //   startDate: this.startDate,
       //   startDate: this.startDate,
@@ -478,18 +602,18 @@ export default {
       // })
       // })
       this.$router.push('/transfer/departure')
       this.$router.push('/transfer/departure')
     },
     },
-    airPortChange () {
+    airPortChange() {
       this.getAviationData()
       this.getAviationData()
       this.upAviationData()
       this.upAviationData()
       this.resetLoopEvent()
       this.resetLoopEvent()
     },
     },
-    dateChangeHandler () {
+    dateChangeHandler() {
       this.getAviationData()
       this.getAviationData()
       this.upAviationData()
       this.upAviationData()
       this.resetLoopEvent()
       this.resetLoopEvent()
     },
     },
     // 选择机场
     // 选择机场
-    async getAirPortData () {
+    async getAirPortData() {
       try {
       try {
         const res = await getQuery({
         const res = await getQuery({
           id: DATACONTENT_ID.departureAirId,
           id: DATACONTENT_ID.departureAirId,
@@ -509,7 +633,7 @@ export default {
       }
       }
     },
     },
     // 选择航司
     // 选择航司
-    async getAviationData () {
+    async getAviationData() {
       try {
       try {
         const res = await getQuery({
         const res = await getQuery({
           id: DATACONTENT_ID.departureAviJoinId,
           id: DATACONTENT_ID.departureAviJoinId,
@@ -525,7 +649,7 @@ export default {
       }
       }
     },
     },
     // 选择航司
     // 选择航司
-    async upAviationData () {
+    async upAviationData() {
       try {
       try {
         const res = await getQuery({
         const res = await getQuery({
           id: DATACONTENT_ID.departureAviLeaveId,
           id: DATACONTENT_ID.departureAviLeaveId,
@@ -551,7 +675,7 @@ export default {
     //   this.flightAttrQuery(params)
     //   this.flightAttrQuery(params)
     // },
     // },
     // 获取表格数据
     // 获取表格数据
-    async getTableData () {
+    async getTableData() {
       if (!this.formData.currentAirport || !this.startDate || !this.endDate) {
       if (!this.formData.currentAirport || !this.startDate || !this.endDate) {
         return
         return
       }
       }
@@ -592,7 +716,7 @@ export default {
         console.log('出错了', error.message || error)
         console.log('出错了', error.message || error)
       }
       }
     },
     },
-    initTableData (tableData) {
+    initTableData(tableData) {
       this.arrivalCount = 0
       this.arrivalCount = 0
       this.baggageCount = 0
       this.baggageCount = 0
       tableData.forEach(item => {
       tableData.forEach(item => {
@@ -608,7 +732,7 @@ export default {
         this.setTableScroll()
         this.setTableScroll()
       })
       })
     },
     },
-    hasArrived (flight) {
+    hasArrived(flight) {
       if (flight.actualLandingTime) {
       if (flight.actualLandingTime) {
         const now = new Date()
         const now = new Date()
         const actualLandingTime = new Date(flight.actualLandingTime.replace('T', ' '))
         const actualLandingTime = new Date(flight.actualLandingTime.replace('T', ' '))
@@ -618,7 +742,7 @@ export default {
       }
       }
       return flight['hasArrived']
       return flight['hasArrived']
     },
     },
-    setTableScroll () {
+    setTableScroll() {
       if (!this.singleDay || this.hasSetTableScroll || this.arrivalCount === 0) {
       if (!this.singleDay || this.hasSetTableScroll || this.arrivalCount === 0) {
         return
         return
       }
       }
@@ -638,7 +762,7 @@ export default {
       }, 0)
       }, 0)
       this.hasSetTableScroll = true
       this.hasSetTableScroll = true
     },
     },
-    setNumberTransform () {
+    setNumberTransform() {
       const numberItems = this.$refs.numberItem // 拿到数字的ref,计算元素数量
       const numberItems = this.$refs.numberItem // 拿到数字的ref,计算元素数量
       const numberArr = this.orderNum.filter(item => !isNaN(item))
       const numberArr = this.orderNum.filter(item => !isNaN(item))
       // 结合CSS 对数字字符进行滚动,显示订单数量
       // 结合CSS 对数字字符进行滚动,显示订单数量
@@ -648,7 +772,7 @@ export default {
       }
       }
     },
     },
 
 
-    toOrderNum (num) {
+    toOrderNum(num) {
       num = num.toString()
       num = num.toString()
       if (num.length < 6) {
       if (num.length < 6) {
         num = '0' + num // 如未满八位数,添加"0"补位
         num = '0' + num // 如未满八位数,添加"0"补位
@@ -661,7 +785,7 @@ export default {
       }
       }
       this.setNumberTransform()
       this.setNumberTransform()
     },
     },
-    arraySpanMethod ({ row, column, rowIndex, columnIndex }) {
+    arraySpanMethod({ row, column, rowIndex, columnIndex }) {
       for (let i = 0; i < 7; i++) {
       for (let i = 0; i < 7; i++) {
         if (columnIndex === i) {
         if (columnIndex === i) {
           const _row = this.spanArr[rowIndex]
           const _row = this.spanArr[rowIndex]
@@ -673,7 +797,7 @@ export default {
         }
         }
       }
       }
     },
     },
-    exportHandler (refName, tableName) {
+    exportHandler(refName, tableName) {
       if (this.loading) {
       if (this.loading) {
         return
         return
       }
       }
@@ -706,7 +830,7 @@ export default {
       optgroup,
       optgroup,
       select,
       select,
       textarea {
       textarea {
-        font-family: Helvetica, "Microsoft YaHei";
+        font-family: Helvetica, 'Microsoft YaHei';
         font-size: 14px;
         font-size: 14px;
       }
       }
       .el-switch__label {
       .el-switch__label {
@@ -812,7 +936,7 @@ export default {
       padding: 0;
       padding: 0;
       text-align: center;
       text-align: center;
       font-size: 14px;
       font-size: 14px;
-      font-family: Helvetica, "Microsoft YaHei";
+      font-family: Helvetica, 'Microsoft YaHei';
       letter-spacing: 0;
       letter-spacing: 0;
     }
     }
     .cell-click {
     .cell-click {
@@ -846,7 +970,7 @@ export default {
         &.redBorder {
         &.redBorder {
           position: relative;
           position: relative;
           &::after {
           &::after {
-            content: "";
+            content: '';
             position: absolute;
             position: absolute;
             left: 0;
             left: 0;
             bottom: 0;
             bottom: 0;

+ 4 - 12
src/views/baggageManagement/components/transferDeparture/index.vue

@@ -353,7 +353,7 @@ export default {
             {
             {
               prop: 'actualDepartureTime',
               prop: 'actualDepartureTime',
               label: '起飞时间',
               label: '起飞时间',
-              desc: '指航班预计起飞时间,数据是变化的,仅显示最新结果',
+              desc: '根据优先级别显示时间。优先级别:1.实际起飞时间,2.预计起飞时间,3.计划起飞时间',
               width: 100
               width: 100
             },
             },
             {
             {
@@ -510,10 +510,7 @@ export default {
   activated() {
   activated() {
     this.table.scrollTop = this.scrollTop
     this.table.scrollTop = this.scrollTop
     this.getTableData()
     this.getTableData()
-    const that = this
-    this.loopEvent = setInterval(function () {
-      that.getTableData()
-    }, 3000)
+    this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.transferDepartureTable)
     // const { startDate, endDate } = this.$route.query
     // const { startDate, endDate } = this.$route.query
     // Object.entries(this.$route.query).forEach(([key, value]) => {
     // Object.entries(this.$route.query).forEach(([key, value]) => {
     //   if ((value ?? '') !== '' && JSON.stringify(value) !== '[]') {
     //   if ((value ?? '') !== '' && JSON.stringify(value) !== '[]') {
@@ -543,14 +540,9 @@ export default {
     resetLoopEvent() {
     resetLoopEvent() {
       this.loading = true
       this.loading = true
       this.hasSetTableScroll = false
       this.hasSetTableScroll = false
-      if (this.loopEvent) {
-        clearInterval(this.loopEvent)
-      }
+      this.loopEvent && clearInterval(this.loopEvent)
       this.getTableData()
       this.getTableData()
-      const that = this
-      this.loopEvent = setInterval(function () {
-        that.getTableData()
-      }, 3000)
+      this.loopEvent = setInterval(this.getTableData, LOOP_INTERVAL.transferDepartureTable)
     },
     },
     headerCellClass({ row, column }) {
     headerCellClass({ row, column }) {
       const classes = []
       const classes = []

+ 2 - 2
src/views/baggageManagement/mixins/form.js

@@ -245,13 +245,13 @@ export default {
           }
           }
           if (az.test(this.formData.search)) {
           if (az.test(this.formData.search)) {
             // 纯字母则为旅客姓名
             // 纯字母则为旅客姓名
-            queryData['name'] = this.formData.search
+            queryData['passengerName'] = this.formData.search
           } else if (azNum.test(this.formData.search) && top2.test(this.formData.search)) {
           } else if (azNum.test(this.formData.search) && top2.test(this.formData.search)) {
             // 字母加数字且前两位为字母则为航班号
             // 字母加数字且前两位为字母则为航班号
             queryData['flightNO'] = this.formData.search
             queryData['flightNO'] = this.formData.search
           } else if (num.test(this.formData.search) && this.formData.search.length === 10) {
           } else if (num.test(this.formData.search) && this.formData.search.length === 10) {
             // 纯数字且位数等于10则为行李牌号
             // 纯数字且位数等于10则为行李牌号
-            queryData['grade'] = this.formData.search
+            queryData['baggageNO'] = this.formData.search
           } else {
           } else {
             // this.$message.error('请输入有效查询信息如航班号、旅客姓名首字母、行李牌号')
             // this.$message.error('请输入有效查询信息如航班号、旅客姓名首字母、行李牌号')
           }
           }

Some files were not shown because too many files changed in this diff