From 93275f2ff4134a98bf72e72da843ff709657332c Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 21 五月 2026 13:09:40 +0800
Subject: [PATCH] feat(order): 添加生产订单待开始状态筛选功能

---
 src/api/viewIndex.js |   35 +++++++++++++++++++++++++++++++----
 1 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/src/api/viewIndex.js b/src/api/viewIndex.js
index 89f43b8..dafe6e8 100644
--- a/src/api/viewIndex.js
+++ b/src/api/viewIndex.js
@@ -347,22 +347,49 @@
   });
 };
 
-export const productionOrderProgress = (params) => {
+const HOME_PROGRESS_STATUS_LIST = ["all", "waiting", "inProgress", "completed", "paused", "1", "2", "3", "4"];
+const HOME_PROGRESS_TAB_LIST = ["all", "inProgress", "completed", "paused"];
+const HOME_DATE_PATTERN = /^\d{4}-\d{2}-\d{2}$/;
+
+const normalizeDateParam = (value) => {
+  const dateText = typeof value === "string" ? value.trim() : "";
+  return HOME_DATE_PATTERN.test(dateText) ? dateText : undefined;
+};
+
+export const productionOrderProgress = (params = {}) => {
+  const safePageNum = Math.max(1, Number(params.pageNum || 1));
+  const safePageSize = Math.min(50, Math.max(1, Number(params.pageSize || 10)));
+  const rawStatus = String(params.status ?? "").trim();
+  const safeStatus = HOME_PROGRESS_STATUS_LIST.includes(rawStatus) ? rawStatus : undefined;
+  const safeTab = HOME_PROGRESS_TAB_LIST.includes(params.tab) ? params.tab : "all";
+  const normalizedTab = safeStatus && HOME_PROGRESS_TAB_LIST.includes(safeStatus) ? safeStatus : safeTab;
   return request({
     url: "/home/productionOrderProgress",
     method: "get",
-    params,
+    params: {
+      ...params,
+      status: safeStatus,
+      tab: normalizedTab,
+      bizDate: normalizeDateParam(params.bizDate),
+      pageNum: safePageNum,
+      pageSize: safePageSize,
+    },
     headers: {
       handleAuthError: false,
     },
   });
 };
 
-export const todayProductionPlan = (params) => {
+export const todayProductionPlan = (params = {}) => {
+  const safeLimit = Math.min(20, Math.max(1, Number(params.limit || 4)));
   return request({
     url: "/home/todayProductionPlan",
     method: "get",
-    params,
+    params: {
+      ...params,
+      limit: safeLimit,
+      planDate: normalizeDateParam(params.planDate),
+    },
     headers: {
       handleAuthError: false,
     },

--
Gitblit v1.9.3