From f93f751182a1fc48a299caf8f022bfeb976c0800 Mon Sep 17 00:00:00 2001
From: zjk <852185829@qq.com>
Date: 星期二, 02 六月 2026 17:02:17 +0800
Subject: [PATCH] feat(活动订单管理): 新增活动订单Excel导出功能并优化导出逻辑

---
 src/views/userContent/active/activityManagement/components/ActivityOrderList.vue |   45 +++++++++++++++++++++------------------------
 1 files changed, 21 insertions(+), 24 deletions(-)

diff --git a/src/views/userContent/active/activityManagement/components/ActivityOrderList.vue b/src/views/userContent/active/activityManagement/components/ActivityOrderList.vue
index bb8433b..82208f2 100644
--- a/src/views/userContent/active/activityManagement/components/ActivityOrderList.vue
+++ b/src/views/userContent/active/activityManagement/components/ActivityOrderList.vue
@@ -11,7 +11,7 @@
   useMessage,
 } from 'naive-ui'
 import type { DataTableColumns } from 'naive-ui'
-import { exportOrderExcel, getFleetList, getOrderList } from '@/service/api/transaction'
+import { exportActivityOrderExcel, getFleetList, getOrderList } from '@/service/api/transaction'
 import { operationPageList } from '@/service/api/vehicleConvoy'
 import SearchPanel from '@/components/custom/SearchPanel.vue'
 import Pagination from '@/components/common/Pagination.vue'
@@ -449,31 +449,28 @@
 
 async function handleExport() {
   let params: any = {}
-  if (checkedRowKeys.value.length > 0) {
-    params.ids = checkedRowKeys.value
-    params.activityId = props.activityId
+  if (!checkedRowKeys.value.length) {
+    return
   }
-  else {
-    params = {
-      pageNum: currentPage.value,
-      pageSize: pageSize.value,
-      activityId: props.activityId,
-      status: searchModel.value.status,
-      orderNumber: searchModel.value.orderNumber,
-      nickName: searchModel.value.nickName,
-      plateNumber: searchModel.value.plateNumber,
-      fleetId: searchModel.value.fleetId,
-      orderSource: searchModel.value.orderSource,
-      cityCode: searchModel.value.cityCode,
-      orderTime: searchModel.value.orderTime,
-      startTime: searchModel.value.orderTime ? dayjs(searchModel.value.orderTime?.[0]).format('YYYY-MM-DD') : null,
-      endTime: searchModel.value.orderTime ? dayjs(searchModel.value.orderTime?.[1]).format('YYYY-MM-DD') : null,
-    }
+  params = {
+    pageNum: currentPage.value,
+    pageSize: pageSize.value,
+    activityId: props.activityId,
+    status: searchModel.value.status,
+    orderNumber: searchModel.value.orderNumber,
+    nickName: searchModel.value.nickName,
+    plateNumber: searchModel.value.plateNumber,
+    fleetId: searchModel.value.fleetId,
+    orderSource: searchModel.value.orderSource,
+    cityCode: searchModel.value.cityCode,
+    orderTime: searchModel.value.orderTime,
+    startTime: searchModel.value.orderTime ? dayjs(searchModel.value.orderTime?.[0]).format('YYYY-MM-DD') : null,
+    endTime: searchModel.value.orderTime ? dayjs(searchModel.value.orderTime?.[1]).format('YYYY-MM-DD') : null,
   }
-  const response = await exportOrderExcel(params)
+  const response = await exportActivityOrderExcel(params)
   if (response instanceof Blob) {
     downloadFile(response, `活动订单列表_${new Date().getTime()}.xlsx`)
-    message.success(`导出成功,共${checkedRowKeys.value.length > 0 ? checkedRowKeys.value.length : total.value}条数据`)
+    message.success(`导出成功,共${checkedRowKeys.value.length}条数据`)
   }
 }
 
@@ -570,7 +567,7 @@
     <NCard class="flex-1 robotaxi-table-card" :bordered="false">
       <template #header>
         <div class="flex items-center gap-16px">
-          <div class="flex gap-2px items-center">
+          <div class="flex gap-8px items-center">
             <span
               v-if="checkedRowKeys.length > 0"
               style="color: rgba(23, 31, 38, 0.6); font-weight: 400"
@@ -581,7 +578,7 @@
                 })
               }}
             </span>
-            <NButton @click="handleExport">
+            <NButton :disabled="checkedRowKeys.length === 0" @click="handleExport">
               批量导出订单
             </NButton>
           </div>

--
Gitblit v1.7.1