Bläddra i källkod

行李视图-数据来源判断修改

zhongxiaoyu 2 år sedan
förälder
incheckning
d954cf218b

+ 19 - 14
src/views/baggageManagement/components/baggage/index.vue

@@ -262,6 +262,7 @@ export default {
       airlineList: [],
       selectedAirline: '',
       basicInfoHeight: 0,
+      debounceTime: 300,
       baggageBasicInfoCols: [
         {
           label: '行李牌号',
@@ -480,26 +481,30 @@ export default {
     selectedAirline() {
       this.stopQueryTrack()
       this.startQueryTrack()
-    },
-    'sidebar.expand'() {
-      this.$refs['table']?.doLayout()
-    },
+    }
   },
   created() {
     this.resetStepNodes()
   },
   activated() {
-    this.basicInfoHeight = this.$refs['basicInfo'].offsetHeight
-    this.$refs['table']?.doLayout()
+    this.resizeHandler()
+    this.debouncedResizeHandler = this._.debounce(this.resizeHandler, this.debounceTime)
+    window.addEventListener('resize', this.debouncedResizeHandler)
   },
   updated() {
-    this.basicInfoHeight = this.$refs['basicInfo'].offsetHeight
-    this.$refs['table']?.doLayout()
+    this.resizeHandler()
+  },
+  deactivated() {
+    window.removeEventListener('resize', this.debouncedResizeHandler)
   },
   beforeDestroy() {
     this.stopLoopAll()
   },
   methods: {
+    resizeHandler() {
+      this.basicInfoHeight = this.$refs['basicInfo'].offsetHeight
+      this.$refs['table']?.doLayout()
+    },
     baggageBasicInfoClickHandler(prop) {
       if (prop !== 'compensationSign') {
         return
@@ -806,13 +811,13 @@ export default {
           item['landingInfo'] = `${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'
+          const codeReflect = {
+            '0100': 'Manual Load',
+            '0101': 'BRS',
+            '0102': 'RFID'
           }
+          const resourceCode = item['resourceFile']?.slice(-4)
+          item['dataSource'] = codeReflect[resourceCode] ?? ''
           return item
         })
         this.initTableData(this.baggageTableData)

+ 11 - 15
src/views/baggageManagement/components/flight/index.vue

@@ -517,7 +517,6 @@ import TableHeaderCell from '@/components/TableHeaderCell'
 import { setTableFilters } from '@/utils/table'
 import { mapGetters } from 'vuex'
 import { throttledExportToExcel } from '@/utils/table'
-import { parseTime } from '@/utils'
 
 export default {
   name: 'FlightView',
@@ -571,6 +570,7 @@ export default {
       queryData: {},
       flightInfo: {},
       warningRules: [],
+      debounceTime: 300,
       containerTableColumn: [
         { label: '容器编号', prop: 'containerNumber', width: 100 },
         { label: '类型', prop: 'style' },
@@ -948,30 +948,26 @@ export default {
   },
   activated() {
     this.getWarningData()
-    this.$nextTick(() => {
-      this.$refs['containerTable']?.doLayout()
-      // this.$refs['transferInBaggageTable']?.doLayout()
-      // this.$refs['transferOutBaggageTable']?.doLayout()
-      this.$refs['flightBaggageTable']?.doLayout()
-    })
-  },
-  updated() {
-    this.$nextTick(() => {
-      this.$refs['containerTable']?.doLayout()
-      // this.$refs['transferInBaggageTable']?.doLayout()
-      // this.$refs['transferOutBaggageTable']?.doLayout()
-      this.$refs['flightBaggageTable']?.doLayout()
-    })
+    this.resizeHandler()
+    this.debouncedResizeHandler = this._.debounce(this.resizeHandler, this.debounceTime)
+    window.addEventListener('resize', this.debouncedResizeHandler)
   },
   deactivated() {
     this.dragHeight = 0
     this.dragY = 0
     this.loading?.close()
+    window.removeEventListener('resize', this.debouncedResizeHandler)
   },
   beforeDestroy() {
     this.loading?.close()
   },
   methods: {
+    resizeHandler() {
+      this.$refs['containerTable']?.doLayout()
+      // this.$refs['transferInBaggageTable']?.doLayout()
+      // this.$refs['transferOutBaggageTable']?.doLayout()
+      this.$refs['flightBaggageTable']?.doLayout()
+    },
     setfastFilterValues() {
       const inFlightNOList = new Set()
       const transferFlightNOList = new Set()

+ 10 - 9
src/views/baggageManagement/mixins/terminal.js

@@ -21,17 +21,20 @@ export default {
       spanArr: [],
       pos: 0,
       loading: false,
-      computedTableHeight: undefined
+      computedTableHeight: undefined,
+      debounceTime: 300
     }
   },
   created() {
     this.setFilterAndSort(this.tableCols)
   },
-  updated() {
-    this.setTableHeight()
-  },
   activated() {
-    this.setTableHeight()
+    this.resizeHandler()
+    this.debouncedResizeHandler = this._.debounce(this.resizeHandler, this.debounceTime)
+    window.addEventListener('resize', this.debouncedResizeHandler)
+  },
+  deactivated() {
+    window.removeEventListener('resize', this.debouncedResizeHandler)
   },
   computed: {
     ...mapGetters(['clickedCells']),
@@ -86,14 +89,12 @@ export default {
   },
   methods: {
     // 设置表格高度
-    setTableHeight() {
+    resizeHandler() {
       const headerHeight = 80
       const bottomBlankHeight = 41
       const formWrapHeight = this.$refs['formWrap'].offsetHeight
       this.computedTableHeight = `calc(100vh - ${headerHeight + bottomBlankHeight + formWrapHeight}px)`
-      this.$nextTick(() => {
-        this.$refs.table?.doLayout()
-      })
+      this.$refs.table?.doLayout()
     },
     // 设置筛选和排序
     setFilterAndSort(tableCols) {