From 34d36a15f339d331d668d4063cfdff50cffa5800 Mon Sep 17 00:00:00 2001
From: zhou zhou <zozhouo3o@gmail.com>
Date: 星期五, 17 四月 2026 15:11:32 +0800
Subject: [PATCH] #导出服务

---
 rsf-design/src/api/statistic-count.js |   30 ++++++++++++++++++++++++++++++
 1 files changed, 30 insertions(+), 0 deletions(-)

diff --git a/rsf-design/src/api/statistic-count.js b/rsf-design/src/api/statistic-count.js
index 00aec66..a27977e 100644
--- a/rsf-design/src/api/statistic-count.js
+++ b/rsf-design/src/api/statistic-count.js
@@ -4,6 +4,19 @@
   return typeof value === 'string' ? value.trim() : value
 }
 
+function normalizeIds(ids) {
+  if (Array.isArray(ids)) {
+    return ids
+      .map((id) => String(id).trim())
+      .filter(Boolean)
+      .join(',')
+  }
+  if (ids === null || ids === undefined) {
+    return ''
+  }
+  return String(ids).trim()
+}
+
 export function buildStatisticCountPageParams(params = {}) {
   const entries = Object.entries(params).filter(([key, value]) => {
     if (['current', 'pageSize', 'size'].includes(key)) {
@@ -31,3 +44,20 @@
     params: buildStatisticCountPageParams(params)
   })
 }
+
+export function fetchGetStatisticCountMany(ids) {
+  return request.post({
+    url: `/statistic/num/many/${normalizeIds(ids)}`
+  })
+}
+
+export async function fetchExportStatisticCountReport(payload = {}, options = {}) {
+  return fetch(`${import.meta.env.VITE_API_URL}/statistic/num/export`, {
+    method: 'POST',
+    headers: {
+      'Content-Type': 'application/json',
+      ...(options.headers || {})
+    },
+    body: JSON.stringify(payload)
+  })
+}

--
Gitblit v1.9.1