From 4a407279f0c9757f0714eaf385fdd5cd68c038c2 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 21 五月 2026 16:55:43 +0800
Subject: [PATCH] Merge branch 'dev_NEW_pro' of http://114.132.189.42:9002/r/product-inventory-management into dev_NEW_pro

---
 src/api/viewIndex.js |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/src/api/viewIndex.js b/src/api/viewIndex.js
index 8b5d144..dafe6e8 100644
--- a/src/api/viewIndex.js
+++ b/src/api/viewIndex.js
@@ -326,3 +326,72 @@
     method: "get",
   });
 };
+
+export const productionOverview = () => {
+  return request({
+    url: "/home/productionOverview",
+    method: "get",
+    headers: {
+      handleAuthError: false,
+    },
+  });
+};
+
+export const productionRealtimeBoard = () => {
+  return request({
+    url: "/home/productionRealtimeBoard",
+    method: "get",
+    headers: {
+      handleAuthError: false,
+    },
+  });
+};
+
+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,
+      status: safeStatus,
+      tab: normalizedTab,
+      bizDate: normalizeDateParam(params.bizDate),
+      pageNum: safePageNum,
+      pageSize: safePageSize,
+    },
+    headers: {
+      handleAuthError: false,
+    },
+  });
+};
+
+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,
+      limit: safeLimit,
+      planDate: normalizeDateParam(params.planDate),
+    },
+    headers: {
+      handleAuthError: false,
+    },
+  });
+};

--
Gitblit v1.9.3