zhaoke 1 жил өмнө
parent
commit
3187429106

+ 118 - 171
src/views/realTime/components/WaybillView/index.vue

@@ -3,17 +3,10 @@
     <div class="waybill-info">
     <div class="waybill-info">
       <div class="waybill-info-title">运单基本信息</div>
       <div class="waybill-info-title">运单基本信息</div>
       <div class="waybill-info-content flex">
       <div class="waybill-info-content flex">
-        <div
-          v-for="(item, index) in waybillInfoItems"
-          :key="index"
-          class="waybill-info-item"
-        >
+        <div v-for="(item, index) in waybillInfoItems" :key="index" class="waybill-info-item">
           <div class="waybill-info-item-label">{{ item.label }}:</div>
           <div class="waybill-info-item-label">{{ item.label }}:</div>
           <div class="waybill-info-item-content">
           <div class="waybill-info-item-content">
-            <OverflowTooltip
-              :content="computedWaybillInfo(item)"
-              effect="light"
-            />
+            <OverflowTooltip :content="computedWaybillInfo(item)" effect="light" />
           </div>
           </div>
         </div>
         </div>
       </div>
       </div>
@@ -28,40 +21,20 @@
         <el-button class="button-sqaure" color="#ac014d" @click="exportHandler">
         <el-button class="button-sqaure" color="#ac014d" @click="exportHandler">
           <i class="icon-export" />
           <i class="icon-export" />
         </el-button>
         </el-button>
-        <ColumnSet
-          class="button-sqaure"
-          :table-columns="isDeparture ? pullTableColumns : tableColumns"
-          @checked-submit="columnChecked"
-        />
+        <ColumnSet class="button-sqaure" :table-columns="isDeparture ? pullTableColumns : tableColumns" @checked-submit="columnChecked" />
       </div>
       </div>
     </div>
     </div>
-    <div
-      v-show="trackAirlines.length"
-      :style="{
+    <div v-show="trackAirlines.length" :style="{
         maxHeight: `${
         maxHeight: `${
           trackAirlines.length > 1 ? 208 * 2 + 8 : trackRowHeight
           trackAirlines.length > 1 ? 208 * 2 + 8 : trackRowHeight
         }px`,
         }px`,
-      }"
-      class="waybill-track"
-    >
+      }" class="waybill-track">
       <el-scrollbar always>
       <el-scrollbar always>
         <div class="waybill-track-warpper">
         <div class="waybill-track-warpper">
-          <div
-            v-for="trackAirline in trackAirlines"
-            :key="trackAirline.flightNO"
-            class="waybill-track-row"
-            :style="{ height: `${trackRowHeight}px` }"
-          >
-            <div
-              v-for="(trackAirport, index) in trackAirline.airports"
-              :key="trackAirport.airport"
-              class="waybill-track-box"
-              :style="trackBoxStyle(trackAirline.airports, index)"
-            >
+          <div v-for="trackAirline in trackAirlines" :key="trackAirline.flightNO" class="waybill-track-row" :style="{ height: `${trackRowHeight}px` }">
+            <div v-for="(trackAirport, index) in trackAirline.airports" :key="trackAirport.airport" class="waybill-track-box" :style="trackBoxStyle(trackAirline.airports, index)">
               <div class="title flex-wrap">
               <div class="title flex-wrap">
-                <span v-if="index === 0" class="title-span"
-                  >航班号:{{ trackAirline.flightNO }}</span
-                >
+                <span v-if="index === 0" class="title-span">航班号:{{ trackAirline.flightNO }}</span>
                 <!-- <span
                 <!-- <span
                   v-if="!name.includes('InternationalDeparture')"
                   v-if="!name.includes('InternationalDeparture')"
                   class="title-span"
                   class="title-span"
@@ -69,149 +42,123 @@
                     trackAirport.airport
                     trackAirport.airport
                   }}</span
                   }}</span
                 > -->
                 > -->
-                <span class="title-span"
-                  >日期:{{ trackAirline.flightDate }}</span
-                >
+                <span class="title-span">日期:{{ trackAirline.flightDate }}</span>
               </div>
               </div>
-              <Steps
-                :steps="trackAirport.trackSteps"
-                :hasMultiple="hasMultiple"
-              />
+              <Steps :steps="trackAirport.trackSteps" :hasMultiple="hasMultiple" />
             </div>
             </div>
           </div>
           </div>
         </div>
         </div>
       </el-scrollbar>
       </el-scrollbar>
     </div>
     </div>
     <div class="goods-list">
     <div class="goods-list">
-      <SimpleTable
-        v-if="isDeparture"
-        ref="tableRef"
-        :data="pullTableData"
-        :columns="pullTableColumns"
-        sequence
-        scrollbar-always-on
-        :column-props="{ formatter }"
-      />
-      <SimpleTable
-        v-else
-        ref="tableRef"
-        :data="tableData"
-        :columns="tableColumns"
-        scrollbar-always-on
-        :row-class-name="rowClass"
-        :cell-class-name="cellClass"
-        @cell-click="cellClickHandler"
-        :column-props="{ formatter, minWidth: 75 }"
-      />
+      <SimpleTable v-if="isDeparture" ref="tableRef" :data="pullTableData" :columns="pullTableColumns" sequence scrollbar-always-on :column-props="{ formatter }" />
+      <SimpleTable v-else ref="tableRef" :data="tableData" :columns="tableColumns" scrollbar-always-on :row-class-name="rowClass" :cell-class-name="cellClass" @cell-click="cellClickHandler" :column-props="{ formatter, minWidth: 75 }" />
     </div>
     </div>
   </div>
   </div>
 </template>
 </template>
 
 
 <script setup lang="ts">
 <script setup lang="ts">
-import OverflowTooltip from '@/components/OverflowTooltip/index.vue'
+import OverflowTooltip from "@/components/OverflowTooltip/index.vue";
 // import Search from '@/components/search/index.vue'
 // import Search from '@/components/search/index.vue'
-import Steps from '@/components/steps/index.vue'
-import ColumnSet from '@/components/ColumnSet/index.vue'
-import SimpleTable from '@/components/SimpleTable/index.vue'
-import { useTrackData } from '../../hooks/useTrackData'
-import { useTable } from '../../hooks/useTable'
-import { useTableColumnSet } from '@/hooks/useTableColumnSet'
-import { useTableExport } from '../../hooks/useTableExport'
-import { useTableStyle } from '../../hooks/useTableStyle'
-import { useTableCellClick } from '../../hooks/useTableCellClick'
-import { useWaybillInfo } from './useWaybillInfo'
-import { CommonData, CommonTableFormatter, CommonValue } from '~/common'
-import { useLoop } from '@/hooks/useLoop'
-import { datetimeToTime } from '@/utils/validate'
+import Steps from "@/components/steps/index.vue";
+import ColumnSet from "@/components/ColumnSet/index.vue";
+import SimpleTable from "@/components/SimpleTable/index.vue";
+import { useTrackData } from "../../hooks/useTrackData";
+import { useTable } from "../../hooks/useTable";
+import { useTableColumnSet } from "@/hooks/useTableColumnSet";
+import { useTableExport } from "../../hooks/useTableExport";
+import { useTableStyle } from "../../hooks/useTableStyle";
+import { useTableCellClick } from "../../hooks/useTableCellClick";
+import { useWaybillInfo } from "./useWaybillInfo";
+import { CommonData, CommonTableFormatter, CommonValue } from "~/common";
+import { useLoop } from "@/hooks/useLoop";
+import { datetimeToTime } from "@/utils/validate";
 
 
 const hasMultiple = computed(() =>
 const hasMultiple = computed(() =>
-  trackAirlines.value.some(airline =>
-    airline.airports.some(airport =>
-      airport.trackSteps.some(step => 'children' in step)
+  trackAirlines.value.some((airline) =>
+    airline.airports.some((airport) =>
+      airport.trackSteps.some((step) => "children" in step)
     )
     )
   )
   )
-)
-const trackRowHeight = computed(() => (unref(hasMultiple) ? 280 : 208))
+);
+const trackRowHeight = computed(() => (unref(hasMultiple) ? 280 : 208));
 
 
 const props = defineProps({
 const props = defineProps({
   name: {
   name: {
     type: String,
     type: String,
     required: true,
     required: true,
   },
   },
-})
+});
 
 
-const isDeparture = props.name.includes('Departure')
+const isDeparture = props.name.includes("Departure");
 
 
-const route = useRoute()
-const { flightDate, waybillNO } = route.query
-const dataContent = [flightDate, waybillNO] as string[]
+const route = useRoute();
+const { flightDate, waybillNO } = route.query;
+const dataContent = [flightDate, waybillNO] as string[];
 
 
-const {
-  waybillInfoItems,
-  waybillInfo,
-  computedWaybillInfo,
-  getWaybillInfo,
-} = useWaybillInfo(props.name, dataContent)
+const { waybillInfoItems, waybillInfo, computedWaybillInfo, getWaybillInfo } =
+  useWaybillInfo(props.name, dataContent);
 
 
-const { tableColumns, tableData: trackData, getTableData } = useTable(
-  `${props.name}Goods`,
-  dataContent
-)
+const {
+  tableColumns,
+  tableData: trackData,
+  getTableData,
+} = useTable(`${props.name}Goods`, dataContent);
 
 
 const {
 const {
   tableColumns: pullTableColumns,
   tableColumns: pullTableColumns,
   tableData: pullTableData,
   tableData: pullTableData,
   getTableData: getPullTableData,
   getTableData: getPullTableData,
-} = useTable(`${props.name}Pull`, dataContent)
+} = useTable(`${props.name}Pull`, dataContent);
 
 
 // 判断是否有另外一个机场的节点信息,没有则隐藏那些列
 // 判断是否有另外一个机场的节点信息,没有则隐藏那些列
-watch(trackData, data => {
-  let anotherAirportNodeFlag = ''
+watch(trackData, (data) => {
+  let anotherAirportNodeFlag = "";
   if (isDeparture) {
   if (isDeparture) {
-    anotherAirportNodeFlag = 'node-arrival'
+    anotherAirportNodeFlag = "node-arrival";
   } else {
   } else {
-    anotherAirportNodeFlag = 'node-departure'
+    anotherAirportNodeFlag = "node-departure";
   }
   }
   const activeNodes = data.reduce((nodes: string[], row) => {
   const activeNodes = data.reduce((nodes: string[], row) => {
-    if (typeof row.nodeCode === 'string' && !nodes.includes(row.nodeCode)) {
-      nodes.push(row.nodeCode)
+    if (typeof row.nodeCode === "string" && !nodes.includes(row.nodeCode)) {
+      nodes.push(row.nodeCode);
     }
     }
-    return nodes
-  }, [])
-  tableColumns.value.forEach(column => {
+    return nodes;
+  }, []);
+  tableColumns.value.forEach((column) => {
     if (
     if (
       column.defaultDisabled ||
       column.defaultDisabled ||
-      (typeof column.className === 'string' &&
+      (typeof column.className === "string" &&
         column.className.includes(anotherAirportNodeFlag))
         column.className.includes(anotherAirportNodeFlag))
     ) {
     ) {
-      column.checkDisabled = true
+      column.checkDisabled = true;
       if (activeNodes.includes(column.columnName)) {
       if (activeNodes.includes(column.columnName)) {
-        column.hidden = false
+        column.hidden = false;
       } else {
       } else {
-        column.hidden = true
+        column.hidden = true;
       }
       }
     }
     }
-  })
-})
+  });
+});
 
 
-const loopFuncs = [getWaybillInfo, getTableData]
+const loopFuncs = [getWaybillInfo, getTableData];
 if (isDeparture) {
 if (isDeparture) {
-  loopFuncs.push(getPullTableData)
+  loopFuncs.push(getPullTableData);
 }
 }
-useLoop(loopFuncs, 'waybill')
+useLoop(loopFuncs, "waybill");
 
 
 // onMounted(getTableData)
 // onMounted(getTableData)
 
 
-const { trackAirlines, trackBoxStyle } = useTrackData(props.name, trackData)
+const { trackAirlines, trackBoxStyle } = useTrackData(props.name, trackData);
 
 
 const tableData = computed(() => {
 const tableData = computed(() => {
   const mergedTableData = trackData.value.reduce(
   const mergedTableData = trackData.value.reduce(
     (data: CommonData[], current) => {
     (data: CommonData[], current) => {
-      const sameRow = data.find(row =>
-        ['flightNO', 'flightDate', 'cargoSN'].every(
-          key => (row[key] ?? '') === (current[key] ?? '')
+      const sameRow = data.find((row) =>
+        ["flightNO", "flightDate", "cargoSN"].every(
+          (key) => (row[key] ?? "") === (current[key] ?? "")
         )
         )
-      )
+      );
       const {
       const {
         flightNO,
         flightNO,
         flightDate,
         flightDate,
@@ -228,93 +175,93 @@ const tableData = computed(() => {
         ConsignmentItemPackagingQuantityQuantity, // 跟踪节点件数
         ConsignmentItemPackagingQuantityQuantity, // 跟踪节点件数
         execResult,
         execResult,
         execTime,
         execTime,
-      } = current
-      const nodeValue = `位置:${execPosition ?? '--'}\n结果:${
-        execResult ? '通过' : '未通过'
-      }\n时间:${execTime ?? ''}`
+      } = current;
+      const nodeValue = `位置:${execPosition ?? "--"}\n结果:${
+        execResult ? "通过" : "未通过"
+      }\n时间:${execTime ?? ""}`;
       if (sameRow) {
       if (sameRow) {
-        sameRow[String(nodeCode)] = nodeValue
-        ;[
-          'ULDNO',
+        sameRow[String(nodeCode)] = nodeValue;
+        [
+          "ULDNO",
           // 'cargoSN'
           // 'cargoSN'
-        ].forEach(key => {
-          const oldValue = sameRow[key]
-          const currentValue = current[key]
-          if (typeof currentValue === 'string' && currentValue !== oldValue) {
-            if (typeof oldValue === 'string') {
+        ].forEach((key) => {
+          const oldValue = sameRow[key];
+          const currentValue = current[key];
+          if (typeof currentValue === "string" && currentValue !== oldValue) {
+            if (typeof oldValue === "string") {
               sameRow[key] = [
               sameRow[key] = [
                 ...new Set([
                 ...new Set([
-                  ...oldValue.split(','),
-                  ...currentValue.split(','),
+                  ...oldValue.split(","),
+                  ...currentValue.split(","),
                 ]),
                 ]),
-              ].join(',')
+              ].join(",");
             } else {
             } else {
-              sameRow[key] = currentValue
+              sameRow[key] = currentValue;
             }
             }
           }
           }
-        })
-        ;['pullMark', 'returnMark'].forEach(key => {
-          sameRow[key] = sameRow[key] ?? current[key]
-        })
+        });
+        ["pullMark", "returnMark"].forEach((key) => {
+          sameRow[key] = sameRow[key] ?? current[key];
+        });
       } else {
       } else {
         data.push({
         data.push({
           ...current,
           ...current,
           [String(nodeCode)]: nodeValue,
           [String(nodeCode)]: nodeValue,
-        })
+        });
       }
       }
-      return data
+      return data;
     },
     },
     []
     []
-  )
+  );
   return mergedTableData.reduce((data: CommonData[], current) => {
   return mergedTableData.reduce((data: CommonData[], current) => {
-    const { cargoSN } = current
-    if (typeof cargoSN === 'string' && cargoSN !== '') {
-      const splitedRows = cargoSN.split(',').map(splitedCargoSN => ({
+    const { cargoSN } = current;
+    if (typeof cargoSN === "string" && cargoSN !== "") {
+      const splitedRows = cargoSN.split(",").map((splitedCargoSN) => ({
         ...current,
         ...current,
         cargoSN: splitedCargoSN,
         cargoSN: splitedCargoSN,
-      }))
-      data.push(...splitedRows)
+      }));
+      data.push(...splitedRows);
     } else {
     } else {
-      data.push(current)
+      data.push(current);
     }
     }
-    return data
-  }, [])
-})
+    return data;
+  }, []);
+});
 
 
 const formatter: CommonTableFormatter = (row, column, cellValue, index) => {
 const formatter: CommonTableFormatter = (row, column, cellValue, index) => {
-  if (column.property === 'wholePull') {
-    return cellValue === 1 ? '是' : '否'
+  if (column.property === "wholePull") {
+    return cellValue === 1 ? "是" : "否";
   }
   }
-  if (column.property === 'pullTime') {
-    return datetimeToTime(cellValue, flightDate as CommonValue)
+  if (column.property === "pullTime") {
+    return datetimeToTime(cellValue, flightDate as CommonValue);
   }
   }
-  const value = String(cellValue ?? '').split('\n')
+  const value = String(cellValue ?? "").split("\n");
   if (value[2]) {
   if (value[2]) {
     value[2] = `时间:${datetimeToTime(
     value[2] = `时间:${datetimeToTime(
-      value[2].replace('时间:', ''),
+      value[2].replace("时间:", ""),
       flightDate as CommonValue
       flightDate as CommonValue
-    )}`
+    )}`;
   }
   }
-  return value.join('\n')
-}
+  return value.join("\n");
+};
 
 
-const search = (text: string) => {}
-const clear = () => {}
+const search = (text: string) => {};
+const clear = () => {};
 
 
-const tableRef = ref<InstanceType<typeof SimpleTable> | null>(null)
-const { exportToExcel } = useTableExport()
+const tableRef = ref<InstanceType<typeof SimpleTable> | null>(null);
+const { exportToExcel } = useTableExport();
 const exportHandler = () => {
 const exportHandler = () => {
-  const table = tableRef.value!.table!
-  exportToExcel({ table })
-}
+  const table = tableRef.value!.table!;
+  exportToExcel({ table });
+};
 
 
 const { columnChecked } = useTableColumnSet(
 const { columnChecked } = useTableColumnSet(
   isDeparture ? pullTableColumns : tableColumns
   isDeparture ? pullTableColumns : tableColumns
-)
+);
 
 
-const { rowClass, cellClass } = useTableStyle(`${props.name}Goods`)
+const { rowClass, cellClass } = useTableStyle(`${props.name}Goods`);
 
 
-const { cellClickHandler } = useTableCellClick(`${props.name}Goods`)
+const { cellClickHandler } = useTableCellClick(`${props.name}Goods`);
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>

+ 10 - 2
src/views/realTime/components/WaybillView/useWaybillInfo.ts

@@ -49,7 +49,7 @@ const waybillInfoItemsMap = {
     {
     {
       label: '机场代理',
       label: '机场代理',
       key: 'proxy',
       key: 'proxy',
-      getter: info => (String(info.proxy) === '1' ? '是' : '否'),
+      getter: (info) => (String(info.proxy) === '1' ? '是' : '否'),
     },
     },
     {
     {
       label: '货代公司',
       label: '货代公司',
@@ -71,6 +71,14 @@ const waybillInfoItemsMap = {
       label: '目的机场',
       label: '目的机场',
       key: 'arriveAirport',
       key: 'arriveAirport',
     },
     },
+    {
+      label: '货物数量',
+      key: 'luggageCount',
+    },
+    {
+      label: '货物总重',
+      key: 'weight',
+    },
   ],
   ],
 }
 }
 
 
@@ -117,7 +125,7 @@ export function useWaybillInfo(name: string, dataContent: CommonValue[]) {
     }
     }
   }
   }
 
 
-  const computedWaybillInfo = computed(() => item => {
+  const computedWaybillInfo = computed(() => (item) => {
     if (item.getter) {
     if (item.getter) {
       return item.getter(waybillInfo)
       return item.getter(waybillInfo)
     }
     }

+ 51 - 265
src/views/systemSettings/warningEdit/index.vue

@@ -9,12 +9,7 @@
         </template>
         </template>
       </Minheader>
       </Minheader>
       <div class="diacont">
       <div class="diacont">
-        <el-form
-          :model="tableForm"
-          class="w100 fw"
-          :rules="formRules"
-          ref="warningEditsForm"
-        >
+        <el-form :model="tableForm" class="w100 fw" :rules="formRules" ref="warningEditsForm">
           <!-- <div class="outersurface pd30">
           <!-- <div class="outersurface pd30">
             <el-form-item label="策略名称" size="default">
             <el-form-item label="策略名称" size="default">
               <el-input v-model="tableForm.name" placeholder="请输入策略名称" />
               <el-input v-model="tableForm.name" placeholder="请输入策略名称" />
@@ -22,128 +17,49 @@
           </div> -->
           </div> -->
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="名称" prop="alarmname" size="default">
             <el-form-item label="名称" prop="alarmname" size="default">
-              <el-input
-                v-model="tableForm.alarmname"
-                placeholder="请输入名称"
-              />
+              <el-input v-model="tableForm.alarmname" placeholder="请输入名称" />
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="航司二字码" size="default" prop="IATACode">
             <el-form-item label="航司二字码" size="default" prop="IATACode">
-              <el-select
-                style="width: 100%"
-                v-model="tableForm.IATACode"
-                class="input-shadow"
-                filterable
-                allow-create
-                default-first-option
-                clearable
-                placeholder="请选择航司二字码"
-              >
-                <el-option
-                  v-for="item in iaCodeArr"
-                  :key="item.airlineCompanyID"
-                  :label="item.ITATCode"
-                  :value="item.ITATCode"
-                >
+              <el-select style="width: 100%" v-model="tableForm.IATACode" class="input-shadow" filterable allow-create default-first-option clearable placeholder="请选择航司二字码">
+                <el-option v-for="item in iaCodeArr" :key="item.airlineCompanyID" :label="item.ITATCode" :value="item.ITATCode">
                 </el-option>
                 </el-option>
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
-            <el-form-item
-              label="国内国际"
-              size="default"
-              prop="ditype"
-              :rules="formRules.isNotNull"
-            >
-              <el-select
-                style="width: 100%"
-                v-model="tableForm.ditype"
-                class="input-shadow"
-                filterable
-                allow-create
-                default-first-option
-                placeholder="请选择国内国际"
-              >
-                <el-option
-                  v-for="(item, index) in ditypeAll"
-                  :key="index"
-                  :label="item.k"
-                  :value="item.v"
-                >
+            <el-form-item label="国内国际" size="default" prop="ditype" :rules="formRules.isNotNull">
+              <el-select style="width: 100%" v-model="tableForm.ditype" class="input-shadow" filterable allow-create default-first-option placeholder="请选择国内国际">
+                <el-option v-for="(item, index) in ditypeAll" :key="index" :label="item.k" :value="item.v">
                 </el-option>
                 </el-option>
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
-            <el-form-item
-              label="起飞机场"
-              size="default"
-              prop="departmentAirport"
-              :rules="formRules.isNotNull"
-            >
-              <el-select
-                style="width: 100%"
-                v-model="tableForm.departmentAirport"
-                class="input-shadow"
-                filterable
-                allow-create
-                default-first-option
-                clearable
-                placeholder="请选择起飞机场"
-              >
-                <el-option
-                  v-for="item in tableOption"
-                  :key="item.airportID"
-                  :label="item.IATACode"
-                  :value="item.IATACode"
-                >
+            <el-form-item label="起飞机场" size="default" prop="departmentAirport" :rules="formRules.isNotNull">
+              <el-select style="width: 100%" v-model="tableForm.departmentAirport" class="input-shadow" filterable allow-create default-first-option clearable placeholder="请选择起飞机场">
+                <el-option v-for="item in tableOption" :key="item.airportID" :label="item.IATACode" :value="item.IATACode">
                 </el-option>
                 </el-option>
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="降落机场" size="default">
             <el-form-item label="降落机场" size="default">
-              <el-select
-                style="width: 100%"
-                v-model="tableForm.landingAirport"
-                class="input-shadow"
-                filterable
-                allow-create
-                default-first-option
-                clearable
-                placeholder="请选择降落机场"
-              >
-                <el-option
-                  v-for="item in tableOption"
-                  :key="item.airportID"
-                  :label="item.IATACode"
-                  :value="item.IATACode"
-                >
+              <el-select style="width: 100%" v-model="tableForm.landingAirport" class="input-shadow" filterable allow-create default-first-option clearable placeholder="请选择降落机场">
+                <el-option v-for="item in tableOption" :key="item.airportID" :label="item.IATACode" :value="item.IATACode">
                 </el-option>
                 </el-option>
               </el-select>
               </el-select>
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="航班号" size="default" prop="flightNo">
             <el-form-item label="航班号" size="default" prop="flightNo">
-              <el-input
-                v-model="tableForm.flightNo"
-                placeholder="请输入航班号"
-              />
+              <el-input v-model="tableForm.flightNo" placeholder="请输入航班号" />
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="机型" prop="planetype" size="default">
             <el-form-item label="机型" prop="planetype" size="default">
-              <el-select
-                style="width: 100%"
-                v-model="tableForm.planetype"
-                class="input-shadow"
-                filterable
-                allow-create
-                default-first-option
-                placeholder="请选择机型"
-              >
+              <el-select style="width: 100%" v-model="tableForm.planetype" class="input-shadow" filterable allow-create default-first-option placeholder="请选择机型">
                 <el-option label="宽体机" value="宽体机" />
                 <el-option label="宽体机" value="宽体机" />
                 <el-option label="窄体机" value="窄体机" />
                 <el-option label="窄体机" value="窄体机" />
                 <el-option label="全部" value="全部" />
                 <el-option label="全部" value="全部" />
@@ -152,15 +68,7 @@
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="客货机" prop="flighttype" size="default">
             <el-form-item label="客货机" prop="flighttype" size="default">
-              <el-select
-                style="width: 100%"
-                v-model="tableForm.flighttype"
-                class="input-shadow"
-                filterable
-                allow-create
-                default-first-option
-                placeholder="请选择客货机"
-              >
+              <el-select style="width: 100%" v-model="tableForm.flighttype" class="input-shadow" filterable allow-create default-first-option placeholder="请选择客货机">
                 <el-option label="客机" value="客机" />
                 <el-option label="客机" value="客机" />
                 <el-option label="货机" value="货机" />
                 <el-option label="货机" value="货机" />
                 <el-option label="全部" value="全部" />
                 <el-option label="全部" value="全部" />
@@ -169,72 +77,32 @@
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="停机位" prop="landingstand" size="default">
             <el-form-item label="停机位" prop="landingstand" size="default">
-              <el-input
-                ref="inputRef"
-                v-model="tableForm.landingstand"
-                placeholder="请输入停机位"
-              />
+              <el-input ref="inputRef" v-model="tableForm.landingstand" placeholder="请输入停机位" />
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
-            <el-form-item
-              label="生效时间"
-              size="default"
-              prop="startDate"
-              :rules="formRules.isNotNull"
-            >
-              <el-date-picker
-                v-model="tableForm.startDate"
-                :rows="1"
-                type="datetime"
-                format="YYYY-MM-DD HH:mm:ss"
-                value-format="YYYY-MM-DD HH:mm:ss"
-                placeholder="选择日期时间"
-              >
+            <el-form-item label="生效时间" size="default" prop="startDate" :rules="formRules.isNotNull">
+              <el-date-picker v-model="tableForm.startDate" :rows="1" type="datetime" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择日期时间">
               </el-date-picker>
               </el-date-picker>
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="失效时间" size="default" prop="endDate">
             <el-form-item label="失效时间" size="default" prop="endDate">
-              <el-date-picker
-                format="YYYY-MM-DD HH:mm:ss"
-                value-format="YYYY-MM-DD HH:mm:ss"
-                v-model="tableForm.endDate"
-                :rows="1"
-                type="datetime"
-                placeholder="选择日期时间"
-              >
+              <el-date-picker format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="tableForm.endDate" :rows="1" type="datetime" placeholder="选择日期时间">
               </el-date-picker>
               </el-date-picker>
             </el-form-item>
             </el-form-item>
           </div>
           </div>
           <div class="outersurface pd30">
           <div class="outersurface pd30">
             <el-form-item label="描述" prop="alarmdesc" size="default">
             <el-form-item label="描述" prop="alarmdesc" size="default">
-              <el-input
-                v-model="tableForm.alarmdesc"
-                placeholder="请输入描述"
-              />
+              <el-input v-model="tableForm.alarmdesc" placeholder="请输入描述" />
             </el-form-item>
             </el-form-item>
           </div>
           </div>
         </el-form>
         </el-form>
       </div>
       </div>
     </div>
     </div>
-    <el-popover
-      ref="popoverRef"
-      :virtual-ref="inputRef"
-      virtual-triggering
-      placement="right"
-      trigger="click"
-      content="多个停机位用逗号分隔,例如 51,52"
-    />
+    <el-popover ref="popoverRef" :virtual-ref="inputRef" virtual-triggering placement="right" trigger="click" content="多个停机位用逗号分隔,例如 51,52" />
     <div class="centerBox">
     <div class="centerBox">
-      <Minheader
-        :is-auth="true"
-        :is-statuser="true"
-        :is-Search="false"
-        powerData="add_alert_policy_button"
-        @addForm="addForm"
-        style="margin-top: 20px"
-      >
+      <Minheader :is-auth="true" :is-statuser="true" :is-Search="false" powerData="add_alert_policy_button" @addForm="addForm" style="margin-top: 20px">
         <template #header>
         <template #header>
           <div class="status flex-wrap">
           <div class="status flex-wrap">
             <div class="manageTitle">预警告警策略</div>
             <div class="manageTitle">预警告警策略</div>
@@ -243,79 +111,29 @@
       </Minheader>
       </Minheader>
     </div>
     </div>
     <div class="containers scroll-y">
     <div class="containers scroll-y">
-      <DataTable
-        :tableHeader="tableCols"
-        :tableData="tableData"
-        :tableBtnGroup="tableBtnGroup"
-        :tableProperty="{ rowKey: 'ID' }"
-        @btnClick="btnClick"
-      />
+      <DataTable :tableHeader="tableCols" :tableData="tableData" :tableBtnGroup="tableBtnGroup" :tableProperty="{ rowKey: 'ID' }" @btnClick="btnClick" />
     </div>
     </div>
-    <Dialog
-      width="600px"
-      :flag="flag"
-      :type="type"
-      :msgTitle="msgTitle"
-      :delName="delName"
-      @resetForm="resetForm"
-      @delRest="delRest"
-      @submitForm="submitForm"
-      @delRemove="delRemove"
-    >
+    <Dialog width="600px" :flag="flag" :type="type" :msgTitle="msgTitle" :delName="delName" @resetForm="resetForm" @delRest="delRest" @submitForm="submitForm" @delRemove="delRemove">
       <div class="diacont">
       <div class="diacont">
         <el-form :model="tableForms" :rules="formRules" ref="warningEditForm">
         <el-form :model="tableForms" :rules="formRules" ref="warningEditForm">
           <el-row :gutter="24">
           <el-row :gutter="24">
             <el-col :span="12">
             <el-col :span="12">
-              <el-form-item
-                label="策略名称"
-                size="default"
-                prop="StrategyName"
-                :rules="formRules.isNotNull"
-              >
-                <el-input
-                  v-model="tableForms.StrategyName"
-                  placeholder="请输入策略名称"
-                />
+              <el-form-item label="策略名称" size="default" prop="StrategyName" :rules="formRules.isNotNull">
+                <el-input v-model="tableForms.StrategyName" placeholder="请输入策略名称" />
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :span="12">
             <el-col :span="12">
               <el-form-item label="计算依据" size="default">
               <el-form-item label="计算依据" size="default">
-                <el-select
-                  style="width: 100%"
-                  v-model="tableForms.calculationBasis"
-                  class="input-shadow"
-                  filterable
-                  default-first-option
-                  placeholder="请选择计算依据"
-                >
-                  <el-option
-                    v-for="item in calculationBasis"
-                    :key="item.v ? item.v : item.planDepartureApt"
-                    :label="item.k ? item.k : item.planDepartureApt"
-                    :value="item.v ? item.v : item.planDepartureApt"
-                  >
+                <el-select style="width: 100%" v-model="tableForms.calculationBasis" class="input-shadow" filterable default-first-option placeholder="请选择计算依据">
+                  <el-option v-for="item in calculationBasis" :key="item.v ? item.v : item.planDepartureApt" :label="item.k ? item.k : item.planDepartureApt" :value="item.v ? item.v : item.planDepartureApt">
                   </el-option>
                   </el-option>
                 </el-select>
                 </el-select>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :span="12">
             <el-col :span="12">
               <el-form-item label="基准节点" size="default">
               <el-form-item label="基准节点" size="default">
-                <el-select
-                  style="width: 100%"
-                  v-model="tableForms.beginNode"
-                  class="input-shadow"
-                  filterable
-                  default-first-option
-                  clearable
-                  placeholder="请选择开始节点"
-                  @change="changeSelect"
-                >
-                  <el-option
-                    v-for="item in tableOptionser"
-                    :key="item.nodeID"
-                    :label="item.nodeName"
-                    :value="item.nodeCode"
-                  >
+                <el-select style="width: 100%" v-model="tableForms.beginNode" class="input-shadow" filterable default-first-option clearable placeholder="请选择开始节点" @change="changeSelect">
+                  <el-option v-for="item in tableOptionser" :key="item.nodeID" :label="item.nodeName" :value="item.nodeCode">
                   </el-option>
                   </el-option>
                 </el-select>
                 </el-select>
               </el-form-item>
               </el-form-item>
@@ -330,22 +148,8 @@
             </el-col> -->
             </el-col> -->
             <el-col :span="12">
             <el-col :span="12">
               <el-form-item label="报警节点" size="default">
               <el-form-item label="报警节点" size="default">
-                <el-select
-                  style="width: 100%"
-                  v-model="tableForms.endNode"
-                  class="input-shadow"
-                  filterable
-                  default-first-option
-                  clearable
-                  placeholder="请选择结束节点"
-                  @change="changeSelected"
-                >
-                  <el-option
-                    v-for="item in tableOptionser"
-                    :key="item.nodeID"
-                    :label="item.nodeName"
-                    :value="item.nodeCode"
-                  >
+                <el-select style="width: 100%" v-model="tableForms.endNode" class="input-shadow" filterable default-first-option clearable placeholder="请选择结束节点" @change="changeSelected">
+                  <el-option v-for="item in tableOptionser" :key="item.nodeID" :label="item.nodeName" :value="item.nodeCode">
                   </el-option>
                   </el-option>
                 </el-select>
                 </el-select>
               </el-form-item>
               </el-form-item>
@@ -359,51 +163,23 @@
               </el-form-item>
               </el-form-item>
             </el-col> -->
             </el-col> -->
             <el-col :span="12">
             <el-col :span="12">
-              <el-form-item
-                label="超时预警"
-                size="default"
-                prop="warningDuration"
-              >
-                <el-input
-                  v-model="tableForms.warningDuration"
-                  placeholder="请输入超时分钟"
-                />
+              <el-form-item label="超时预警" size="default" prop="warningDuration">
+                <el-input v-model="tableForms.warningDuration" placeholder="请输入超时分钟" />
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :span="12">
             <el-col :span="12">
-              <el-form-item
-                label="超时报警"
-                size="default"
-                prop="alarmDuration"
-              >
-                <el-input
-                  v-model="tableForms.alarmDuration"
-                  placeholder="请输入超时分钟"
-                />
+              <el-form-item label="超时报警" size="default" prop="alarmDuration">
+                <el-input v-model="tableForms.alarmDuration" placeholder="请输入超时分钟" />
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :span="24">
             <el-col :span="24">
-              <el-form-item
-                label="运单数报警百分比"
-                :label-width="140"
-                size="default"
-              >
-                <el-input
-                  v-model="tableForms.percentage"
-                  placeholder="请输入运单数报警百分比"
-                />
+              <el-form-item label="运单数报警百分比" :label-width="140" size="default">
+                <el-input v-model="tableForms.percentage" placeholder="请输入运单数报警百分比" />
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :span="24">
             <el-col :span="24">
-              <el-form-item
-                label="板卡数报警百分比"
-                :label-width="140"
-                size="default"
-              >
-                <el-input
-                  v-model="tableForms.percentuld"
-                  placeholder="请输入板卡数报警百分比"
-                />
+              <el-form-item label="板卡数报警百分比" :label-width="140" size="default">
+                <el-input v-model="tableForms.percentuld" placeholder="请输入板卡数报警百分比" />
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
           </el-row>
           </el-row>
@@ -425,7 +201,7 @@ import {
   dataToChange,
   dataToChange,
 } from "@/api/webApi";
 } from "@/api/webApi";
 import { ElMessage } from "element-plus";
 import { ElMessage } from "element-plus";
-import { onMounted } from "vue";
+import { onMounted, onBeforeMount } from "vue";
 const formRules = useElement().formRules;
 const formRules = useElement().formRules;
 const router = useRouter();
 const router = useRouter();
 const route = useRoute();
 const route = useRoute();
@@ -1121,6 +897,16 @@ const getWzData = async () => {
   const result = await htQuery(DATACONTENT_ID.sysServiceWzId);
   const result = await htQuery(DATACONTENT_ID.sysServiceWzId);
   tableOptionbegin.value = result;
   tableOptionbegin.value = result;
 };
 };
+onBeforeMount(() => {
+  const queryParams = route.query;
+  for (const key in tableForm) {
+    for (const p in queryParams) {
+      if (key == p) {
+        tableForm[key] = queryParams[p];
+      }
+    }
+  }
+});
 onMounted(() => {
 onMounted(() => {
   sysServiceWarn();
   sysServiceWarn();
   getQuery();
   getQuery();

+ 47 - 184
src/views/systemSettings/warningSet/index.vue

@@ -1,42 +1,18 @@
 <template>
 <template>
   <div class="airportInfo scroll-y">
   <div class="airportInfo scroll-y">
     <div class="wrap">
     <div class="wrap">
-      <Minheader
-        :is-auth="true"
-        :is-btn="true"
-        :is-search="true"
-        :is-statuser="true"
-        powerData="alert_alarm_settings_add_button"
-        @addForm="addForm"
-        @searchForms="searchForms"
-        @clearForm="clearForm"
-      >
+      <Minheader :is-auth="true" :is-btn="true" :is-search="true" :is-statuser="true" powerData="alert_alarm_settings_add_button" @addForm="addForm" @searchForms="searchForms" @clearForm="clearForm">
         <template #header>
         <template #header>
           <div class="status flex-wrap">
           <div class="status flex-wrap">
             <div class="manageTitle">预警告警维护</div>
             <div class="manageTitle">预警告警维护</div>
           </div>
           </div>
         </template>
         </template>
+
       </Minheader>
       </Minheader>
       <div class="app-containers">
       <div class="app-containers">
-        <DataTable
-          :tableHeader="tableCols"
-          :tableData="tableData"
-          :tableBtnGroup="tableBtnGroup"
-          :tableProperty="{ rowKey: 'ID' }"
-          @btnClick="btnClick"
-        />
+        <DataTable :tableHeader="tableCols" :tableData="tableData" :tableBtnGroup="tableBtnGroup" :tableProperty="{ rowKey: 'ID' }" @btnClick="btnClick" />
       </div>
       </div>
-      <Dialog
-        width="600px"
-        :flag="flag"
-        :type="type"
-        :msgTitle="msgTitle"
-        :delName="delName"
-        @resetForm="resetForm"
-        @delRest="delRest"
-        @submitForm="submitForm"
-        @delRemove="delRemove"
-      >
+      <Dialog width="600px" :flag="flag" :type="type" :msgTitle="msgTitle" :delName="delName" @resetForm="resetForm" @delRest="delRest" @submitForm="submitForm" @delRemove="delRemove">
         <div class="diacont">
         <div class="diacont">
           <el-form :model="tableForm" :rules="formRules" ref="warningSetForm">
           <el-form :model="tableForm" :rules="formRules" ref="warningSetForm">
             <el-row :gutter="24">
             <el-row :gutter="24">
@@ -49,134 +25,50 @@
                 </el-form-item>
                 </el-form-item>
               </el-col> -->
               </el-col> -->
               <el-col :span="12">
               <el-col :span="12">
-                <el-form-item
-                  label="名称"
-                  prop="alarmname"
-                  size="default"
-                  :rules="formRules.isNotNull"
-                >
-                  <el-input
-                    v-model="tableForm.alarmname"
-                    placeholder="请输入名称"
-                  />
+                <el-form-item label="名称" prop="alarmname" size="default" :rules="formRules.isNotNull">
+                  <el-input v-model="tableForm.alarmname" placeholder="请输入名称" />
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
-                <el-form-item
-                  label="起飞机场"
-                  size="default"
-                  prop="departmentAirport"
-                  :rules="formRules.isNotNull"
-                >
-                  <el-select
-                    style="width: 100%"
-                    v-model="tableForm.departmentAirport"
-                    class="input-shadow"
-                    filterable
-                    allow-create
-                    default-first-option
-                    clearable
-                    placeholder="请选择起飞机场"
-                  >
-                    <el-option
-                      v-for="item in tableOptionser"
-                      :key="item.airportID"
-                      :label="item.IATACode"
-                      :value="item.IATACode"
-                    >
+                <el-form-item label="起飞机场" size="default" prop="departmentAirport" :rules="formRules.isNotNull">
+                  <el-select style="width: 100%" v-model="tableForm.departmentAirport" class="input-shadow" filterable allow-create default-first-option clearable placeholder="请选择起飞机场">
+                    <el-option v-for="item in tableOptionser" :key="item.airportID" :label="item.IATACode" :value="item.IATACode">
                     </el-option>
                     </el-option>
                   </el-select>
                   </el-select>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="降落机场" size="default">
                 <el-form-item label="降落机场" size="default">
-                  <el-select
-                    style="width: 100%"
-                    v-model="tableForm.landingAirport"
-                    class="input-shadow"
-                    filterable
-                    allow-create
-                    default-first-option
-                    clearable
-                    placeholder="请选择降落机场"
-                  >
-                    <el-option
-                      v-for="item in tableOptionser"
-                      :key="item.airportID"
-                      :label="item.IATACode"
-                      :value="item.IATACode"
-                    >
+                  <el-select style="width: 100%" v-model="tableForm.landingAirport" class="input-shadow" filterable allow-create default-first-option clearable placeholder="请选择降落机场">
+                    <el-option v-for="item in tableOptionser" :key="item.airportID" :label="item.IATACode" :value="item.IATACode">
                     </el-option>
                     </el-option>
                   </el-select>
                   </el-select>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="航司二字码" size="default" prop="IATACode">
                 <el-form-item label="航司二字码" size="default" prop="IATACode">
-                  <el-select
-                    style="width: 100%"
-                    v-model="tableForm.IATACode"
-                    class="input-shadow"
-                    filterable
-                    allow-create
-                    default-first-option
-                    clearable
-                    placeholder="请选择航司二字码"
-                  >
-                    <el-option
-                      v-for="item in iaCodeArr"
-                      :key="item.airlineCompanyID"
-                      :label="item.ITATCode"
-                      :value="item.ITATCode"
-                    >
+                  <el-select style="width: 100%" v-model="tableForm.IATACode" class="input-shadow" filterable allow-create default-first-option clearable placeholder="请选择航司二字码">
+                    <el-option v-for="item in iaCodeArr" :key="item.airlineCompanyID" :label="item.ITATCode" :value="item.ITATCode">
                     </el-option>
                     </el-option>
                   </el-select>
                   </el-select>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
-                <el-form-item
-                  label="国内国际"
-                  size="default"
-                  prop="ditype"
-                  :rules="formRules.isNotNull"
-                >
-                  <el-select
-                    style="width: 100%"
-                    v-model="tableForm.ditype"
-                    class="input-shadow"
-                    filterable
-                    allow-create
-                    default-first-option
-                    placeholder="请选择国内国际"
-                  >
-                    <el-option
-                      v-for="(item, index) in ditypeAll"
-                      :key="index"
-                      :label="item.k"
-                      :value="item.v"
-                    >
+                <el-form-item label="国内国际" size="default" prop="ditype" :rules="formRules.isNotNull">
+                  <el-select style="width: 100%" v-model="tableForm.ditype" class="input-shadow" filterable allow-create default-first-option placeholder="请选择国内国际">
+                    <el-option v-for="(item, index) in ditypeAll" :key="index" :label="item.k" :value="item.v">
                     </el-option>
                     </el-option>
                   </el-select>
                   </el-select>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="航班号" size="default">
                 <el-form-item label="航班号" size="default">
-                  <el-input
-                    v-model="tableForm.flightNo"
-                    placeholder="请输入航班号"
-                  />
+                  <el-input v-model="tableForm.flightNo" placeholder="请输入航班号" />
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="机型" prop="planetype" size="default">
                 <el-form-item label="机型" prop="planetype" size="default">
-                  <el-select
-                    style="width: 100%"
-                    v-model="tableForm.planetype"
-                    class="input-shadow"
-                    filterable
-                    allow-create
-                    default-first-option
-                    placeholder="请选择机型"
-                  >
+                  <el-select style="width: 100%" v-model="tableForm.planetype" class="input-shadow" filterable allow-create default-first-option placeholder="请选择机型">
                     <el-option label="宽体机" value="宽体机" />
                     <el-option label="宽体机" value="宽体机" />
                     <el-option label="窄体机" value="窄体机" />
                     <el-option label="窄体机" value="窄体机" />
                     <el-option label="全部" value="全部" />
                     <el-option label="全部" value="全部" />
@@ -185,15 +77,7 @@
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="客货机" prop="flighttype" size="default">
                 <el-form-item label="客货机" prop="flighttype" size="default">
-                  <el-select
-                    style="width: 100%"
-                    v-model="tableForm.flighttype"
-                    class="input-shadow"
-                    filterable
-                    allow-create
-                    default-first-option
-                    placeholder="请选择客货机"
-                  >
+                  <el-select style="width: 100%" v-model="tableForm.flighttype" class="input-shadow" filterable allow-create default-first-option placeholder="请选择客货机">
                     <el-option label="客机" value="客机" />
                     <el-option label="客机" value="客机" />
                     <el-option label="货机" value="货机" />
                     <el-option label="货机" value="货机" />
                     <el-option label="全部" value="全部" />
                     <el-option label="全部" value="全部" />
@@ -202,50 +86,24 @@
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="停机位" prop="landingstand" size="default">
                 <el-form-item label="停机位" prop="landingstand" size="default">
-                  <el-input
-                    ref="inputRef"
-                    v-model="tableForm.landingstand"
-                    placeholder="请输入停机位"
-                  />
+                  <el-input ref="inputRef" v-model="tableForm.landingstand" placeholder="请输入停机位" />
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
-                <el-form-item
-                  label="生效时间"
-                  size="default"
-                  prop="startDate"
-                  :rules="formRules.isNotNull"
-                >
-                  <el-date-picker
-                    v-model="tableForm.startDate"
-                    :rows="1"
-                    type="date"
-                    format="YYYY-MM-DD"
-                    value-format="YYYY-MM-DD"
-                    placeholder="选择日期时间"
-                  >
+                <el-form-item label="生效时间" size="default" prop="startDate" :rules="formRules.isNotNull">
+                  <el-date-picker v-model="tableForm.startDate" :rows="1" type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" placeholder="选择日期时间">
                   </el-date-picker>
                   </el-date-picker>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="失效时间" size="default" prop="endDate">
                 <el-form-item label="失效时间" size="default" prop="endDate">
-                  <el-date-picker
-                    format="YYYY-MM-DD"
-                    value-format="YYYY-MM-DD"
-                    v-model="tableForm.endDate"
-                    :rows="1"
-                    type="date"
-                    placeholder="选择日期时间"
-                  >
+                  <el-date-picker format="YYYY-MM-DD" value-format="YYYY-MM-DD" v-model="tableForm.endDate" :rows="1" type="date" placeholder="选择日期时间">
                   </el-date-picker>
                   </el-date-picker>
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <el-col :span="12">
               <el-col :span="12">
                 <el-form-item label="描述" prop="alarmdesc" size="default">
                 <el-form-item label="描述" prop="alarmdesc" size="default">
-                  <el-input
-                    v-model="tableForm.alarmdesc"
-                    placeholder="请输入描述"
-                  />
+                  <el-input v-model="tableForm.alarmdesc" placeholder="请输入描述" />
                 </el-form-item>
                 </el-form-item>
               </el-col>
               </el-col>
               <!-- <el-col>
               <!-- <el-col>
@@ -261,14 +119,7 @@
           </el-form>
           </el-form>
         </div>
         </div>
       </Dialog>
       </Dialog>
-      <el-popover
-        ref="popoverRef"
-        :virtual-ref="inputRef"
-        virtual-triggering
-        placement="right"
-        trigger="click"
-        content="多个停机位用逗号分隔,例如 51,52"
-      />
+      <el-popover ref="popoverRef" :virtual-ref="inputRef" virtual-triggering placement="right" trigger="click" content="多个停机位用逗号分隔,例如 51,52" />
     </div>
     </div>
   </div>
   </div>
 </template>
 </template>
@@ -284,7 +135,7 @@ import {
 } from "@/api/webApi";
 } from "@/api/webApi";
 import { ElMessage } from "element-plus";
 import { ElMessage } from "element-plus";
 import { onMounted } from "vue";
 import { onMounted } from "vue";
-import { da } from "element-plus/es/locale";
+
 const formRules = useElement().formRules;
 const formRules = useElement().formRules;
 const page = ref<number>(0); //分页参数
 const page = ref<number>(0); //分页参数
 const dataContent = ref<object>({});
 const dataContent = ref<object>({});
@@ -322,6 +173,7 @@ const tableForm = reactive<any>({
 }); //弹窗内容
 }); //弹窗内容
 //列表
 //列表
 const tableData = ref<any>([]);
 const tableData = ref<any>([]);
+const tableDataCopy = ref<any>([]);
 const ditypeAll = ref<any>([
 const ditypeAll = ref<any>([
   {
   {
     k: "全部",
     k: "全部",
@@ -416,11 +268,12 @@ const btnClick = (row, index, param) => {
   if (param === 2) {
   if (param === 2) {
     router.push({
     router.push({
       path: "/BasicsData/warningEdit",
       path: "/BasicsData/warningEdit",
-      query: {
-        alarmSceneId: index.alarmSceneId,
-        submitID: submitID.value,
-        listqueryTemplateID: listqueryTemplateID.value,
-      },
+      // query: {
+      //   alarmSceneId: index.alarmSceneId,
+      //   submitID: submitID.value,
+      //   listqueryTemplateID: listqueryTemplateID.value,
+      // },
+      query: index,
     });
     });
   } else if (param === 3) {
   } else if (param === 3) {
     msgTitle.value = "删除告警预警维护";
     msgTitle.value = "删除告警预警维护";
@@ -665,12 +518,12 @@ const getQuery = async (data?) => {
         needSearch: null,
         needSearch: null,
       },
       },
     ];
     ];
-    const { code, returnData } = await Query({
+    const { code, returnData }: { code?: any; returnData: any } = await Query({
       id: DATACONTENT_ID.sysServiceCjId,
       id: DATACONTENT_ID.sysServiceCjId,
       needPage: ++page.value,
       needPage: ++page.value,
       dataContent: data ? [data] : [],
       dataContent: data ? [data] : [],
     });
     });
-    if (code === "0") {
+    if (code == "0") {
       // console.log(returnData);
       // console.log(returnData);
       if (returnData.length === 0) {
       if (returnData.length === 0) {
         tableData.value = [];
         tableData.value = [];
@@ -679,8 +532,10 @@ const getQuery = async (data?) => {
       }
       }
       if (data) {
       if (data) {
         tableData.value = [...returnData];
         tableData.value = [...returnData];
+        tableDataCopy.value = [...returnData];
       } else {
       } else {
         tableData.value.push(...returnData);
         tableData.value.push(...returnData);
+        tableDataCopy.value.push(...returnData);
       }
       }
       tableCols.value = columnSet;
       tableCols.value = columnSet;
       // console.log(tableData);
       // console.log(tableData);
@@ -728,6 +583,7 @@ const resetTable = () => {
   page.value = 0;
   page.value = 0;
   noMore.value = false;
   noMore.value = false;
   tableData.value = [];
   tableData.value = [];
+  tableDataCopy.value = [];
 };
 };
 //新增-编辑-删除
 //新增-编辑-删除
 const generalDataReception = async (data, event) => {
 const generalDataReception = async (data, event) => {
@@ -768,11 +624,18 @@ const generalDataReception = async (data, event) => {
   }
   }
 };
 };
 const searchForms = (val) => {
 const searchForms = (val) => {
-  page.value = 0;
-  getQuery(val);
+  const filterVals = tableDataCopy.value.filter(
+    (item) =>
+      item.alarmname?.includes(val) ||
+      item.departmentAirport?.includes(val) ||
+      item.landingAirport?.includes(val) ||
+      item.IATACode?.includes(val)
+  );
+  tableData.value = filterVals;
 };
 };
 
 
 const clearForm = () => {
 const clearForm = () => {
+  resetTable();
   getQuery();
   getQuery();
 };
 };
 //获取航司二字码
 //获取航司二字码