From fab29b720d3a7bd70287379ae76524b33d17a675 Mon Sep 17 00:00:00 2001 From: SeongHyun Kim Date: Mon, 6 Apr 2026 15:00:34 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EB=B6=88=EB=9F=89=20=EC=B2=98=EB=A6=AC?= =?UTF-8?q?=20=EC=8B=9C=20=EA=B3=B5=EC=A0=95=20=EC=84=A0=ED=83=9D=20UI=20?= =?UTF-8?q?=EC=97=B0=EA=B2=B0=20=E2=80=94=20processList=EB=A5=BC=20DefectT?= =?UTF-8?q?ypeModal=EC=97=90=20=EC=A0=84=EB=8B=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pop/hardcoded/production/ProcessWork.tsx | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/frontend/components/pop/hardcoded/production/ProcessWork.tsx b/frontend/components/pop/hardcoded/production/ProcessWork.tsx index 38424a71..9cf0e399 100644 --- a/frontend/components/pop/hardcoded/production/ProcessWork.tsx +++ b/frontend/components/pop/hardcoded/production/ProcessWork.tsx @@ -318,6 +318,7 @@ export function ProcessWork({ processId }: ProcessWorkProps) { const [wiInfo, setWiInfo] = useState(null); const [checklist, setChecklist] = useState([]); const [defectTypes, setDefectTypes] = useState([]); + const [processList, setProcessList] = useState>([]); const [loading, setLoading] = useState(true); const [saving, setSaving] = useState(false); @@ -432,7 +433,24 @@ export function ProcessWork({ processId }: ProcessWorkProps) { setIsLastProcess(false); } - // 6. Warehouses + // 6. 같은 작업지시의 공정 목록 (재작업 공정 지정용) + if (procData?.wo_id) { + try { + const plRes = await dataApi.getTableData("work_order_process", { + size: 100, + filters: { wo_id: procData.wo_id }, + }); + const masters = ((plRes.data ?? []) as ProcessData[]) + .filter((p) => !p.parent_process_id) + .sort((a, b) => parseInt(a.seq_no, 10) - parseInt(b.seq_no, 10)) + .map((p) => ({ process_code: p.process_code, process_name: p.process_name })); + // 중복 제거 + const seen = new Set(); + setProcessList(masters.filter((m) => { if (seen.has(m.process_code)) return false; seen.add(m.process_code); return true; })); + } catch { setProcessList([]); } + } + + // 7. Warehouses try { const whRes = await apiClient.get("/pop/production/warehouses"); setWarehouses(whRes.data?.data || []); @@ -1754,6 +1772,7 @@ export function ProcessWork({ processId }: ProcessWorkProps) { defectTypes={defectTypes} maxQty={productionQty > 0 ? productionQty : 99999} initialEntries={defectEntries} + processList={processList} /> );