From 35280c7f8c9aad04507edcb65c058c5724f7c078 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期六, 29 八月 2026 01:46:19 +0800
Subject: [PATCH] feat(mes): 报工表单只填写报工数量并展示可报工数量,工作台报工支持工艺参数填写
---
src/api/mes/pro/feedback/index.ts | 125 ++++++++++++++++++++++++++++++++++++++++-
1 files changed, 120 insertions(+), 5 deletions(-)
diff --git a/src/api/mes/pro/feedback/index.ts b/src/api/mes/pro/feedback/index.ts
index fe7605d..0580b85 100644
--- a/src/api/mes/pro/feedback/index.ts
+++ b/src/api/mes/pro/feedback/index.ts
@@ -1,8 +1,23 @@
-锘縤mport type { PageParam, PageResult } from '@vben/request';
+import type { PageParam, PageResult } from '@vben/request';
import { requestClient } from '#/api/request';
export namespace MesProFeedbackApi {
+ export interface FeedbackSubmitReqVO {
+ id: number;
+ produceDate?: string;
+ expireDate?: string;
+ receiptDate?: string;
+ vendorId?: number;
+ clientId?: number;
+ purchaseOrderCode?: string;
+ salesOrderCode?: string;
+ toolId?: number;
+ moldId?: number;
+ lotNumber?: string;
+ qualityStatus?: number;
+ }
+
/** MES 鐢熶骇鎶ュ伐 */
export interface Feedback {
id?: number;
@@ -47,6 +62,21 @@
remark?: string; // 澶囨敞
creator?: string; // 鍒涘缓浜�
createTime?: number; // 鍒涘缓鏃堕棿
+ processInstanceId?: string; // BPM 娴佺▼瀹炰緥缂栧彿
+ processDefinitionKey?: string; // BPM 娴佺▼瀹氫箟 Key
+ paramValues?: ParamValue[];
+ }
+
+ export interface ParamValue {
+ detailId: number;
+ value?: string;
+ // ---- 鍥炴樉瀛楁锛堟姤宸ヨ鎯�/鍒楄〃杩斿洖锛� ----
+ paramCode?: string;
+ paramName?: string;
+ paramType?: number;
+ unitMeasureName?: string;
+ paramValue?: string;
+ required?: boolean;
}
/** MES 鐢熶骇鎶ュ伐鍒嗛〉鏌ヨ鍙傛暟 */
@@ -54,6 +84,8 @@
code?: string;
type?: number;
workOrderId?: number;
+ taskId?: number;
+ taskCode?: string;
itemId?: number;
feedbackUserId?: number;
creator?: string;
@@ -98,8 +130,8 @@
}
/** 鎻愪氦鐢熶骇鎶ュ伐 */
-export function submitFeedback(id: number) {
- return requestClient.put(`/mes/pro/feedback/submit?id=${id}`);
+export function submitFeedback(data: MesProFeedbackApi.FeedbackSubmitReqVO) {
+ return requestClient.put(`/mes/pro/feedback/submit`, data);
}
/** 椹冲洖鐢熶骇鎶ュ伐 */
@@ -108,8 +140,91 @@
}
/** 瀹℃壒鐢熶骇鎶ュ伐锛堣繑鍥炴槸鍚﹀凡瀹℃壒瀹屾垚锛� */
-export function approveFeedback(id: number) {
- return requestClient.put<boolean>(`/mes/pro/feedback/approve?id=${id}`);
+export function approveFeedback(data: { id: number; [key: string]: unknown }) {
+ return requestClient.put<boolean>(`/mes/pro/feedback/approve`, data);
+}
+
+/** 鎵规闇�姹傛鏌ュ搷搴� */
+export interface BatchCheckResp {
+ needBatchInput?: boolean;
+ isBatchManaged?: boolean;
+ produceDateFlag?: boolean;
+ expireDateFlag?: boolean;
+ receiptDateFlag?: boolean;
+ vendorFlag?: boolean;
+ clientFlag?: boolean;
+ salesOrderCodeFlag?: boolean;
+ purchaseOrderCodeFlag?: boolean;
+ workOrderFlag?: boolean;
+ taskFlag?: boolean;
+ workstationFlag?: boolean;
+ toolFlag?: boolean;
+ moldFlag?: boolean;
+ lotNumberFlag?: boolean;
+ qualityStatusFlag?: boolean;
+ autoFilledFields?: string[];
+}
+
+/** 妫�鏌ユ姤宸ュ鎵瑰墠鏄惁闇�瑕佸~鍐欐壒娆″睘鎬� */
+export function getBatchRequirements(feedbackId: number) {
+ return requestClient.get<BatchCheckResp>(
+ `/mes/pro/feedback/batch-requirements`,
+ { params: { id: feedbackId } },
+ );
+}
+
+/** 蹇�熸姤宸ヨ姹� */
+export interface QuickCreateReq {
+ taskId: number;
+ paramValues?: MesProFeedbackApi.ParamValue[];
+ feedbackQuantity: number;
+ remark?: string;
+}
+
+/** 蹇�熸姤宸ュ搷搴� */
+export interface QuickCreateResp {
+ feedbackId?: number;
+ taskStatus?: number;
+ workOrderStatus?: number;
+ /** 鎶ュ伐鍚庡墿浣欏彲鎶ュ伐鏁伴噺 */
+ reportableQuantity?: number;
+}
+
+/** 鎵归噺鎶ュ伐璇锋眰 */
+export interface BatchCreateReq {
+ taskIds: number[];
+ feedbackQuantity: number;
+ remark?: string;
+}
+
+/** 鎵归噺鎶ュ伐鍝嶅簲 */
+export interface BatchCreateResp {
+ successCount?: number;
+ failCount?: number;
+ results?: BatchResult[];
+}
+
+export interface BatchResult {
+ taskId?: number;
+ success?: boolean;
+ feedbackId?: number;
+ errorMsg?: string;
+}
+
+/** 蹇�熸姤宸ワ紙鍒涘缓骞舵彁浜わ級 */
+export function quickCreateFeedback(data: QuickCreateReq) {
+ return requestClient.post<QuickCreateResp>(
+ '/mes/pro/feedback/quick-create',
+ data,
+ );
+}
+
+/** 鎵归噺鎶ュ伐 */
+export function batchCreateFeedback(data: BatchCreateReq) {
+ return requestClient.post<BatchCreateResp>(
+ '/mes/pro/feedback/batch-create',
+ data,
+ );
}
/** 鎸変换鍔℃煡璇㈡姤宸ュ巻鍙� */
--
Gitblit v1.9.3