From 3e531ec229f2c02150c4edeef2a7f9026141c049 Mon Sep 17 00:00:00 2001
From: chenyao <1219716595@qq.com>
Date: Mon, 02 Feb 2026 14:08:14 +0800
Subject: [PATCH] feat:更新计划申请

---
 uniapps/work-wx/src/subPackages/deviceRegistration/add.vue    |   96 +++++++++++++
 uniapps/work-wx/src/api/index.js                              |   16 ++
 uniapps/work-wx/src/subPackages/flightApplication/add.vue     |  151 ++++++++++++++++++---
 uniapps/work-wx/src/subPackages/flightApplication/details.vue |   74 ++++++++--
 uniapps/work-wx/src/subPackages/flightApplication/index.vue   |   77 ++++++++--
 5 files changed, 351 insertions(+), 63 deletions(-)

diff --git a/uniapps/work-wx/src/api/index.js b/uniapps/work-wx/src/api/index.js
index 98c7a21..b577013 100644
--- a/uniapps/work-wx/src/api/index.js
+++ b/uniapps/work-wx/src/api/index.js
@@ -61,6 +61,22 @@
     method: 'get'
   })
 }
+export const takeoffOperationApi = data => {
+  return request({
+    url: `/webservice/flightPlan/takeoffOperation`,
+    method: 'post',
+    data,
+  })
+}
+
+export const flightApprovalApi = data => {
+  return request({
+    url: `/webservice/flightPlan/flightApproval`,
+    method: 'post',
+    data,
+  })
+}
+
 
 // 航空器注册
 export const aircraftInfoSaveApi = data => {
diff --git a/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue b/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
index 8bcdb3c..14bd687 100644
--- a/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
+++ b/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
@@ -199,7 +199,6 @@
             <template #right>
                 <u-upload
                     @afterRead="afterReadImage"
-                    @delete="deletePic"
                     name="6"
                     multiple
                     :maxCount="1"
@@ -231,13 +230,50 @@
             @cancel="showType = false"
         />
         <!-- 飞行器厂商 -->
-        <u-picker
+        <!-- <u-picker
             :show="showManufacturer"
             :columns="[manufacturerList]"
             keyName="label"
             @confirm="onPickerConfirmManufacturer"
             @cancel="showManufacturer = false"
-        />
+        /> -->
+        <u-popup
+            :show="showManufacturer"
+            mode="bottom"
+            round="20"
+            @close="showManufacturer = false"
+        >
+        <scroll-view scroll-y>
+            <view class="select-header">
+                <u-search
+                    v-model="searchFacturerName"
+                    placeholder="请输入飞行器厂商名称关键字"
+                    @custom="getManufacturerInfoApi"
+                ></u-search>
+            </view>
+            <view class="select-content">
+                <!-- 加载状态 -->
+            <view v-if="loadingManufacturer" class="loading-container">
+                <u-loading-icon></u-loading-icon>
+            </view>
+                <u-radio-group
+                v-if="!loadingManufacturer"
+                    v-model="formParams.spacecraftId"
+                    placement="column"
+                    @change="radioChange"
+                >
+                    <u-radio
+                        :customStyle="{marginBottom: '8px'}"
+                        v-for="(item, index) in manufacturerList"
+                        :key="item.id"
+                        :label="item.label"
+                        :name="item.value"
+                    >
+                </u-radio>
+            </u-radio-group>
+            </view>
+            </scroll-view>
+        </u-popup>
         <u-picker
             :show="showIsModified"
             :columns="[actionsModified]"
@@ -335,6 +371,10 @@
     ],
 
 })
+
+// 搜索飞行器厂商
+const searchFacturerName = ref('')
+
 // 是否改装
 const actionsModified = ref([
     {
@@ -411,12 +451,17 @@
 // 飞行器厂商
 const showManufacturer = ref(false);
 const manufacturerList = ref([])
+const loadingManufacturer = ref(false)
 // 选择飞行器厂商
 const onPickerConfirmManufacturer = (e) => {
   const selected = e.value[0]
   formParams.value.manufacturer = selected.value
   formParams.value.manufacturerText = selected.label
   showManufacturer.value = false
+}
+function radioChange(value) {
+    formParams.value.manufacturer = value
+    formParams.value.manufacturerText = manufacturerList.value.find(item => item.value === value)?.label || ''
 }
 // 飞行器类型
 const showType = ref(false);
@@ -589,10 +634,20 @@
 // }
 // 获取无人机厂商
 function getManufacturerInfoApi() {
+    if (searchFacturerName.value === '') {
+        uni.showToast({
+            title: '请输入搜索内容',
+            icon: 'none'
+        })
+        return
+    }
+    loadingManufacturer.value = true
     manufacturerInfoApi({
+        unitName: searchFacturerName.value,
         current: 1,
         size: 1000,
     }).then(res => {
+        loadingManufacturer.value = false
         manufacturerList.value = res.data.data.records.map(item => ({
             ...item,
             label: item.unitName,
@@ -601,7 +656,7 @@
     })
 }
 onMounted(async () => {
-    getManufacturerInfoApi()
+    // getManufacturerInfoApi()
     // 动态从外部URL导入xzqhData,确保在使用前已初始化
     // 注意:直接动态导入外部URL可能会有跨域或构建问题,建议检查服务器CORS设置
     const response = await fetch('https://wrj.shuixiongit.com/aiskyminio/cloud-bucket/ja-app-wx/xzqh/index.json')
@@ -711,5 +766,38 @@
             margin-right: 8rpx;
         }
     }
+    .uni-scroll-view {
+       display: flex;
+       flex-direction: column;
+    }
+
+    .select-header {
+        display: flex;
+        justify-content: space-between;
+        padding: 20rpx 20rpx;
+        font-size: 32rpx;
+        color: #222324;
+        .select-header-btn {
+            display: flex;
+            font-size: 28rpx;
+            color: #1D6FE9;
+            .cancel-btn {
+                color: #86909C;
+                margin-right: 20rpx;
+            }
+        }
+    }
+
+    .select-content {
+        height: 400rpx;
+        text-align: center;
+        padding: 20rpx 20rpx;
+        .loading-container {
+            height: 400rpx;
+            display: flex;
+            align-items: center;
+            justify-content: center;
+        }
+    }
 }
 </style>
diff --git a/uniapps/work-wx/src/subPackages/flightApplication/add.vue b/uniapps/work-wx/src/subPackages/flightApplication/add.vue
index bfb7db3..971bff7 100644
--- a/uniapps/work-wx/src/subPackages/flightApplication/add.vue
+++ b/uniapps/work-wx/src/subPackages/flightApplication/add.vue
@@ -209,14 +209,14 @@
         <u-form-item
                 label="飞行器"
                 labelWidth="230rpx"
-                prop="aircraftId"
+                prop="spacecraftText"
                 :borderBottom="true"
                 required
                 ref="item2"
                 @click="isShowAircraftInfo = true"
         >
             <u-input
-                v-model="formParams.aircraftText"
+                v-model="formParams.spacecraftText"
                 disabled
                 disabledColor="#ffffff"
                 placeholder="请选择"
@@ -231,7 +231,7 @@
         <u-form-item
                 label="飞手"
                 labelWidth="230rpx"
-                prop="pilotId"
+                prop="pilotText"
                 :borderBottom="true"
                 ref="item2"
                 required
@@ -276,7 +276,7 @@
         <u-form-item
                 label="航线"
                 labelWidth="230rpx"
-                prop="routeId"
+                prop="selectedRouteId"
                 :borderBottom="true"
                 ref="item2"
                 required
@@ -350,21 +350,85 @@
     <!-- <u-calendar :show="isShowTimeRange" mode="date" @confirm="onConfirmTimeRange" @close="isShowTimeRange = false" :close-on-click-overlay="true"></u-calendar> -->
     <!-- <u-calendar :show="isShowTimeRange" mode="range" @confirm="onConfirmTimeRange" @close="isShowTimeRange = false" :close-on-click-overlay="true" :allow-same-day="true" :show-time="true" time-format="HH:mm:ss"></u-calendar> -->
     <!-- 飞行器 -->
-     <u-picker
+     <!-- <u-picker
         :show="isShowAircraftInfo"
         :columns="[aircraftInfoList]"
         keyName="label"
         @confirm="onPickerAircraftInfo"
         @cancel="isShowAircraftInfo = false"
-    />
+    /> -->
+    <u-popup
+    :show="isShowAircraftInfo"
+    mode="bottom"
+    round="20"
+    @close="isShowAircraftInfo = false"
+  >
+  <scroll-view scroll-y>
+    <view class="select-header">
+        <view>请选择飞行器</view>
+        <view class="select-header-btn">
+            <view class="cancel-btn" @click="isShowAircraftInfo = false">取消</view>
+            <view @click="onPickerAircraftInfo">确定</view>
+        </view>
+    </view>
+    <view class="select-content">
+          <up-checkbox-group
+            v-model="formParams.spacecraftId"
+            placement="column"
+            @change="checkboxChange"
+        >
+            <up-checkbox
+                :customStyle="{marginBottom: '8px'}"
+                v-for="(item, index) in aircraftInfoList"
+                :key="item.id"
+                :label="item.label"
+                :name="item.value"
+            >
+            </up-checkbox>
+        </up-checkbox-group>
+    </view>
+    </scroll-view>
+  </u-popup>
     <!-- 飞手 -->
-    <u-picker
+    <!-- <u-picker
         :show="isShowPilotInfo"
         :columns="[pilotInfoList]"
         keyName="label"
         @confirm="onPickerPilotInfo"
         @cancel="isShowPilotInfo = false"
-    />
+    /> -->
+    <u-popup
+    :show="isShowPilotInfo"
+    mode="bottom"
+    round="20"
+    @close="isShowPilotInfo = false"
+  >
+  <scroll-view scroll-y>
+    <view class="select-header">
+        <view>请选择飞手</view>
+        <view class="select-header-btn">
+            <view class="cancel-btn" @click="isShowPilotInfo = false">取消</view>
+            <view @click="onPickerPilotInfo">确定</view>
+        </view>
+    </view>
+    <view class="select-content">
+          <up-checkbox-group
+            v-model="formParams.pilotId"
+            placement="column"
+            @change="checkboxPilotChange"
+        >
+            <up-checkbox
+                :customStyle="{marginBottom: '8px'}"
+                v-for="(item, index) in pilotInfoList"
+                :key="item.id"
+                :label="item.label"
+                :name="item.value"
+            >
+            </up-checkbox>
+        </up-checkbox-group>
+    </view>
+    </scroll-view>
+  </u-popup>
     <!-- 空域 -->
     <u-picker
         :show="isShowAirspaceInfo"
@@ -427,13 +491,13 @@
     flightStartTime: '', // 飞行活动开始时间
     flightEndTime: '', // 飞行活动结束时间
     weatherCondition: '', // 气象条件
-    spacecraftId: '', // 航天器id
+    spacecraftId: [], // 航天器id
     spacecraftText: '', // 航天器文本
-    pilotId: '', // 飞手id
+    pilotId: [], // 飞手id
     pilotText: '', // 飞手文本
     airspaceId: '', // 空域id
     airspaceText: '', // 空域文本
-    routeId: '', // 航线id
+    selectedRouteId: '', // 航线id
     routeText: '', // 航线文本
 })
 const rules = ref({
@@ -491,16 +555,16 @@
     endTime: [
         { required: true, message: '请选择飞行活动结束时间', trigger: 'change' }
     ],
-    spacecraftId: [
+    spacecraftText: [
         { required: true, message: '请选择飞行器', trigger: 'change' }
     ],
-    pilotId: [
+    pilotText: [
         { required: true, message: '请选择飞手', trigger: 'change' }
     ],
     airspaceId: [
         { required: true, message: '请选择空域', trigger: 'change' }
     ],
-    routeId: [
+    selectedRouteId: [
         { required: true, message: '请选择航线', trigger: 'change' }
     ],
 })
@@ -550,11 +614,11 @@
 const endTime = ref(Date.now()); // 设置默认值为当前时间戳
 
 const onConfirmStartTime = (e) => {
-    formParams.value.flightStartTime = dayjs(e.value).format('YYYY-MM-DD HH:mm')
+    formParams.value.flightStartTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss')
     isShowStartTime.value = false
 }
 const onConfirmEndTime = (e) => {
-    formParams.value.flightEndTime = dayjs(e.value).format('YYYY-MM-DD HH:mm')
+    formParams.value.flightEndTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss')
     isShowEndTime.value = false
 }
 
@@ -574,10 +638,17 @@
         }))
     })
 }
-const onPickerAircraftInfo = (e) => {
-  const selected = e.value[0]
-  formParams.value.aircraftId = selected.value
-  formParams.value.aircraftText = selected.label
+// const onPickerAircraftInfo = (e) => {
+//   const selected = e.value[0]
+//   formParams.value.spacecraftId = selected.value
+//   formParams.value.aircraftText = selected.label
+//   isShowAircraftInfo.value = false
+// }
+function checkboxChange(val) {
+    formParams.value.spacecraftId = val.join(',')
+    formParams.value.spacecraftText = aircraftInfoList.value.filter(item => val.includes(item.value)).map(item => item.label).join(',')
+}
+const onPickerAircraftInfo = () => {
   isShowAircraftInfo.value = false
 }
 // 获取飞手信息
@@ -594,10 +665,14 @@
         }))
     })
 }
+function checkboxPilotChange(val) {
+    formParams.value.pilotId = val.join(',')
+    formParams.value.pilotText = pilotInfoList.value.filter(item => val.includes(item.value)).map(item => item.label).join(',')
+}
 const onPickerPilotInfo = (e) => {
-  const selected = e.value[0]
-  formParams.value.pilotId = selected.value
-  formParams.value.pilotText = selected.label
+//   const selected = e.value[0]
+//   formParams.value.pilotId = selected.value
+//   formParams.value.pilotText = selected.label
   isShowPilotInfo.value = false
 }
 // 获取空域信息
@@ -636,7 +711,7 @@
 }
 const onPickerFlightRouteInfo = (e) => {
   const selected = e.value[0]
-  formParams.value.routeId = selected.value
+  formParams.value.selectedRouteId = selected.value
   formParams.value.routeText = selected.label
   isShowFlightRouteInfo.value = false
 }
@@ -866,5 +941,33 @@
             margin-right: 8rpx;
         }
     }
+
+    .uni-scroll-view {
+       display: flex;
+       flex-direction: column;
+    }
+
+    .select-header {
+        display: flex;
+        justify-content: space-between;
+        padding: 20rpx 20rpx;
+        font-size: 32rpx;
+        color: #222324;
+        .select-header-btn {
+            display: flex;
+            font-size: 28rpx;
+            color: #1D6FE9;
+            .cancel-btn {
+                color: #86909C;
+                margin-right: 20rpx;
+            }
+        }
+    }
+
+    .select-content {
+        height: 400rpx;
+        text-align: center;
+        padding: 20rpx 20rpx;
+    }
 }
 </style>
diff --git a/uniapps/work-wx/src/subPackages/flightApplication/details.vue b/uniapps/work-wx/src/subPackages/flightApplication/details.vue
index 86a03a6..378c3f1 100644
--- a/uniapps/work-wx/src/subPackages/flightApplication/details.vue
+++ b/uniapps/work-wx/src/subPackages/flightApplication/details.vue
@@ -136,7 +136,7 @@
                 ref="item1"
         >
             <u-input
-                    v-model="formParams.weatherCondition" 
+                    v-model="formParams.weatherCondition"
                     readonly
                     border="none"
             ></u-input>
@@ -185,39 +185,39 @@
         <u-form-item
                 label="航线"
                 labelWidth="230rpx"
-                prop="routeId"
+                prop="selectedRouteId"
                 :borderBottom="true"
                 ref="item2"
         >
             <u-input
-                v-model="formParams.routeId"
+                v-model="formParams.selectedRouteId"
                 readonly
                 border="none"
             ></u-input>
         </u-form-item>
         <u-popup :show="applyShow" :round="10" mode="center" @close="close" :closeable="true" :mask-close-able="true">
-		 <u-form labelPosition="top" :model="formParams" :rules="rules" ref="formRef">
+		 <u-form labelPosition="top" :model="formParamsTime" :rules="rulesTime" ref="formTimeRef">
             <u-form-item
                 label="计划申请起飞时间"
                 labelWidth="260rpx"
-                prop="actualTakeoffTime"
+                prop="takeOffStartTime"
                 :borderBottom="true"
                 ref="item1"
                 @click="isShowStartTime = true"
                 required
         >
-            <u-input v-model="formParams.actualTakeoffTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input>
+            <u-input v-model="formParamsTime.takeOffStartTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input>
         </u-form-item>
          <u-form-item
                 label="计划申请结束时间"
                 labelWidth="260rpx"
-                prop="actualLandingTime"
+                prop="takeOffEndTime"
                 :borderBottom="true"
                 ref="item1"
                 @click="isShowEndTime = true"
                 required
         >
-            <u-input v-model="formParams.actualLandingTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input>
+            <u-input v-model="formParamsTime.takeOffEndTime" border="none" placeholder="请选择" suffixIcon="calendar"></u-input>
         </u-form-item>
 
         <u-datetime-picker
@@ -239,10 +239,10 @@
             @cancel="isShowEndTime = false">
         </u-datetime-picker>
          </u-form>
-         <u-button @click="submitApply" color="#1D6FE9">确定</u-button>
+         <u-button @click="submitSure" color="#1D6FE9">确定</u-button>
 	</u-popup>
     </u-form>
-    <u-button v-if="formParams.planApprovalStatus === '99'" @click="submitApply" color="#1D6FE9">申请</u-button>
+    <u-button v-if="formParams.planApprovalStatus === '99' && (formParams.planStatus === '0')" @click="submitApply" color="#1D6FE9">申请</u-button>
 </view>
 </template>
 <script setup>
@@ -252,6 +252,7 @@
     aircraftInfoPageInfoOfMyApi,
     pilotInfoPageInfoOfMyApi,
     flightAirspacePageInfoApi,
+    flightApprovalApi
  } from '@/api/index'
 import { ref, computed, onMounted } from 'vue'
 import dayjs from 'dayjs'
@@ -261,8 +262,20 @@
 const appStore = useAppStore()
 
 const formRef = ref(null);
+const formTimeRef = ref(null);
 const formParams = ref({})
 const rules = ref({})
+const formParamsTime = ref({
+    id: '',
+    takeOffStartTime: '',
+    takeOffEndTime: '',
+    planStatus: '1',
+})
+const rulesTime = ref({
+    takeOffStartTime: [{ required: true, message: '请选择计划申请起飞时间', trigger: ['blur'] }],
+    takeOffEndTime: [{ required: true, message: '请选择计划申请结束时间', trigger: ['blur'] }],
+})
+
 // 任务类型
 const actionsFlightTaskType = ref(appStore.getTaskType)
 
@@ -284,11 +297,11 @@
 const endTime = ref(Date.now()); // 设置默认值为当前时间戳
 
 const onConfirmStartTime = (e) => {
-    formParams.value.actualTakeoffTime = dayjs(e.value).format('YYYY-MM-DD HH:mm')
+    formParamsTime.value.takeOffStartTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss')
     isShowStartTime.value = false
 }
 const onConfirmEndTime = (e) => {
-    formParams.value.actualLandingTime = dayjs(e.value).format('YYYY-MM-DD HH:mm')
+    formParamsTime.value.takeOffEndTime = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss')
     isShowEndTime.value = false
 }
 
@@ -370,10 +383,28 @@
    applyShow.value = true
 }
 
+async function submitSure() {
+    // 校验时间
+    await formTimeRef.value.validate()
+    formParamsTime.value.id = formParams.value.id
+    flightApprovalApi(formParamsTime.value).then(res => {
+        if (res.data.code === 200) {
+            uni.showToast({
+                title: '操作成功',
+                icon: 'success',
+            })  
+            // 跳转申请列表页
+            uni.navigateTo({
+                url: '/subPackages/flightApplication/index',
+            })
+        }
+    })
+}
+
 function close() {
     // 清空时间
-    formParams.value.actualTakeoffTime = ''
-    formParams.value.actualLandingTime = ''
+    formParamsTime.value.takeOffStartTime = ''
+    formParamsTime.value.takeOffEndTime = ''
     applyShow.value = false
 }
 
@@ -381,7 +412,6 @@
      flightPlanDetailsApi(options.id).then(res => {
         // return
         const result = res.data.data
-        console.log(result, '7777')
         formParams.value = result
         // 字典
         formParams.value.flightRule = actionsFlightRule.value.find(item => item.dictValue === result.flightRule)?.dictLabel || '无'
@@ -389,11 +419,19 @@
         formParams.value.planType = actionsPlanType.value.find(item => item.dictValue === result.planType)?.dictLabel || '无'
         formParams.value.flightTaskType = actionsFlightTaskType.value.find(item => item.dictValue === result.flightTaskType)?.dictLabel || '无'
         // 数据
-        formParams.value.routeId = result?.routeInfo?.name || '无'
+        // 航线
+        formParams.value.selectedRouteId = result?.routeInfo?.name || '无'
+        // 空域
         formParams.value.airspaceId = result?.airspaceInfo?.taskName || '无'
-        formParams.value.aircraftId = result?.airspaceInfo?.aircraftInfoList?.map(item => item.name).join(',') || '无'
+        // 飞行器
+        formParams.value.aircraftId = result?.aircraftInfoList?.map(item => item.name).join(',') || '无'
+        // 飞手
         formParams.value.pilotId = result?.operatorInfoList?.map(item => item.name).join(',') || '无'
-        
+
+        // 日期赋值
+        formParamsTime.value.takeOffStartTime = dayjs(result.flightStartTime).format('YYYY-MM-DD HH:mm:ss')
+        formParamsTime.value.takeOffEndTime = dayjs(result.flightEndTime).format('YYYY-MM-DD HH:mm:ss')
+
     })
 })
 onMounted(() => {
diff --git a/uniapps/work-wx/src/subPackages/flightApplication/index.vue b/uniapps/work-wx/src/subPackages/flightApplication/index.vue
index d2a747b..89584d5 100644
--- a/uniapps/work-wx/src/subPackages/flightApplication/index.vue
+++ b/uniapps/work-wx/src/subPackages/flightApplication/index.vue
@@ -25,11 +25,9 @@
                             <u-image :src="spSvg" class="icon" width="16" height="16"></u-image>
                             <view class="name">{{approvalRecord.flightPlanName}}</view>
                         </view>
-                        <view class="status" :class="getStatusClass(approvalRecord.planApprovalStatus)">
-                            {{ approvalRecord.planApprovalStatusLabel || ''}}
-                        </view>
                     </view>
-                    <view class="txt">计划起飞状态:{{approvalRecord.fly_activity_takeoff_status || ''}}</view>
+                     <view class="txt">审批状态: <span :class="getStatusClass(approvalRecord.planApprovalStatus)">{{approvalRecord.planApprovalStatusLabel || ''}}</span></view>
+                    <view class="txt">计划起飞状态:<span :class="getPlanStatusClass(approvalRecord.planStatus)">{{approvalRecord.flyActivityTakeoffStatusLabel || ''}}</span></view>
                     <view class="txt">飞行器:{{approvalRecord.spacecraftLabel || '无'}}</view>
                     <view class="txt">飞行任务:{{approvalRecord.flightTaskTypeLabel || ''}}</view>
                     <view class="txt">飞行起飞时间:{{approvalRecord.flightStartTime || ''}}</view>
@@ -81,6 +79,27 @@
     }
 }
 
+const getPlanStatusClass = (status) => {
+    switch (status) {
+        case '0':
+            return 'Sred'
+        case '1':
+            return 'Ssqz'
+        case '2':
+            return 'Sjz'
+        case '3':
+            return 'SOrange'
+            case '99':
+            return 'Syzz'
+            case '-1':
+            return 'Ssqbh'
+            case '-2':
+            return 'Sysx'
+        default:
+            return ''
+    }
+}
+
 // 获取飞行器信息
 const aircraftInfoList = ref([])
 async function getAircraftInfo() {
@@ -114,9 +133,12 @@
         const newData = res.data.data.records || []
         // 处理字典数据
         newData.forEach(item => {
-            item.spacecraftLabel = aircraftInfoList.value.find(info => info.value === item.spacecraftId)?.label || '无'
+            item.spacecraftLabel = aircraftInfoList?.value.filter(info => item.spacecraftId?.split(',').includes(info.value)).map(info => info.label).join('、') || '无'
+            // 审批状态
             item.planApprovalStatusLabel = appStore.flyActivityStatus.find(status => status.dictValue === item.planApprovalStatus)?.dictLabel || '无'
+            // 计划起飞状态
             item.flyActivityTakeoffStatusLabel = appStore.flyActivityTakeoffStatus.find(status => status.dictValue === item.planStatus)?.dictLabel || '无'
+            // 飞行任务
             item.flightTaskTypeLabel = appStore.taskType.find(type => type.dictValue === item.flightTaskType)?.dictLabel || '无'
         })
         // 如果是第一页,直接替换数据;否则追加数据
@@ -275,18 +297,7 @@
             color: #FFFFFF;
             padding: 0 6rpx;
 
-            &.Sorange {
-                background: #FF9604;
-            }
-            &.Sred {
-                background: #F8422A;
-            }
-            &.Sgreen {
-                background: #17A836;
-            }
-            &.Sblue {
-                background: #1D6FE9;
-            }
+            
         }
 
     }
@@ -295,6 +306,38 @@
         font-size: 12px;
         color: #86909C;
         margin-bottom: 14rpx;
+        overflow: hidden;
+        text-overflow: ellipsis;
+        white-space: nowrap;
     }
+
+    .Sorange {
+        color: #FF9604;
+    }
+    .Sred {
+        color: #F8422A;
+    }
+    .Sgreen {
+        color: #17A836;
+    }
+    .Sblue {
+        color: #1D6FE9;
+    }
+    .Sjz {
+        color: #0088FF;
+    }
+    .Syzz {
+        color: #002BFF;
+    }
+    .Ssqbh {
+        color: #FF383C;
+    }
+    .Sysx {
+        color:#414141;
+    }
+    .Ssqz {
+        color: #FF9500;
+    }
+
 }
 </style>

--
Gitblit v1.9.3