From eacbd6d2f0a4fb7820fcf856f9cc025bea1ea39a Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期四, 29 十月 2026 09:27:04 +0800
Subject: [PATCH] fix: 原型编制
---
src/api/timeSensitiveTask.ts | 46 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 46 insertions(+), 0 deletions(-)
diff --git a/src/api/timeSensitiveTask.ts b/src/api/timeSensitiveTask.ts
index b025a91..c258d6c 100644
--- a/src/api/timeSensitiveTask.ts
+++ b/src/api/timeSensitiveTask.ts
@@ -498,6 +498,36 @@
setTimeout(() => resolve({ code: 200, msg, data }), 120);
});
+/* ==================== 棰嗙敤缁熻 ==================== */
+
+/** 棰嗙敤缁熻琛岋細鎸変骇鍝佸ぇ绫� + 瑙勬牸鍨嬪彿姹囨�� */
+export interface RequisitionStatVO {
+ /** 浜у搧澶х被 */
+ categoryName: string;
+ /** 瑙勬牸鍨嬪彿 */
+ model: string;
+ /** 鏁伴噺锛堜欢锛� */
+ count: number;
+}
+
+/** 浠庡搷搴旈噷鍙栧嚭缁熻鏁扮粍锛堝吋瀹� data 鐩存帴鏄暟缁� / 鍒嗛〉瀵硅薄锛� */
+const extractStatRows = (data: any): any[] => {
+ if (Array.isArray(data)) return data;
+ return data?.records ?? data?.list ?? data?.rows ?? [];
+};
+
+/**
+ * 褰掍竴鍖栫粺璁¤銆�
+ * 鍚庣绾﹀畾锛氫骇鍝佸ぇ绫� categoryName銆佽鏍煎瀷鍙� model銆佹暟閲� count
+ * 锛堝叾浣欓敭鍚嶄负鍏煎鍏滃簳锛岀‘璁ゅ悗绔瓧娈靛悗鍙互鍒犳帀锛�
+ */
+const normalizeStatRows = (rows: any[]): RequisitionStatVO[] =>
+ (rows || []).map((row) => ({
+ categoryName: String(row?.categoryName ?? row?.productCategory ?? ""),
+ model: String(row?.model ?? row?.specificationModel ?? ""),
+ count: Number(row?.count ?? row?.itemCount ?? 0),
+ }));
+
const mockMaterialCode = (item: any) =>
String(item?.flowCode || item?.batchCode || item?.monofilamentNumber || "").trim();
@@ -590,6 +620,22 @@
});
},
+ /**
+ * 棰嗙敤缁熻锛氭寜浜у搧澶х被 + 瑙勬牸鍨嬪彿姹囨�诲綋鍓嶅凡棰嗙敤鏁伴噺
+ * POST /timeSensitiveTask/requisitionStats { taskId, materialType }
+ */
+ async getRequisitionStats(taskId: number | string, materialType?: string) {
+ const res = await request<BaseResult<any>>({
+ url: "/timeSensitiveTask/requisitionStats",
+ method: "POST",
+ data: { taskId, materialType } as any,
+ });
+ return {
+ ...res,
+ data: normalizeStatRows(extractStatRows(res?.data)),
+ } as BaseResult<RequisitionStatVO[]>;
+ },
+
create(data: TimeSensitiveTaskForm) {
if (USE_TIME_SENSITIVE_MOCK) {
const id = Date.now();
--
Gitblit v1.9.3