diff --git a/src/components/production/WorkerScreen/index.tsx b/src/components/production/WorkerScreen/index.tsx index ae210fab..d3cd39aa 100644 --- a/src/components/production/WorkerScreen/index.tsx +++ b/src/components/production/WorkerScreen/index.tsx @@ -178,13 +178,14 @@ export default function WorkerScreen() { const [departmentList, setDepartmentList] = useState([]); const [departmentUsers, setDepartmentUsers] = useState([]); + // 좌측 사이드바 + const [selectedSidebarOrderId, setSelectedSidebarOrderId] = useState(''); + // 작업정보 변경 → API 저장 + workOrders state 동기화 const saveWorkOrderField = useCallback((field: 'scheduled_date' | 'team_id' | 'assignee_id', value: string | number | null) => { const orderId = selectedSidebarOrderId; if (!orderId) return; - // API 저장 updateWorkOrderInfo(orderId, { [field]: value }); - // workOrders state 동기화 (다른 작업지시 선택 후 돌아와도 값 유지) setWorkOrders(prev => prev.map(wo => { if (wo.id !== orderId) return wo; if (field === 'scheduled_date') return { ...wo, scheduledDate: value as string }; @@ -193,9 +194,6 @@ export default function WorkerScreen() { return wo; })); }, [selectedSidebarOrderId]); - - // 좌측 사이드바 - const [selectedSidebarOrderId, setSelectedSidebarOrderId] = useState(''); const [isSidebarOpen, setIsSidebarOpen] = useState(false); // 공정별 step 완료 상태: { [itemId-stepName]: boolean }