From 52e6ec16f8b9b561180083efd15bec84dbbb6d88 Mon Sep 17 00:00:00 2001 From: Hyungi Ahn Date: Wed, 1 Apr 2026 14:01:04 +0900 Subject: [PATCH] =?UTF-8?q?fix(dashboard):=20workers=20=EC=97=86=EB=8A=94?= =?UTF-8?q?=20=EC=82=AC=EC=9A=A9=EC=9E=90=20=EB=B6=80=EC=84=9C=20=EA=B6=8C?= =?UTF-8?q?=ED=95=9C=20=EC=A1=B0=ED=9A=8C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit getUserInfo에서 workers.department_id만 사용하여 workers 레코드가 없는 사용자(생산지원팀 등)의 department_id가 NULL이 되어 메뉴가 안 보이던 문제. COALESCE(w.department_id, u.department_id) fallback 추가. Co-Authored-By: Claude Opus 4.6 (1M context) --- system1-factory/api/models/dashboardModel.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/system1-factory/api/models/dashboardModel.js b/system1-factory/api/models/dashboardModel.js index 3e7b1f0..81cf870 100644 --- a/system1-factory/api/models/dashboardModel.js +++ b/system1-factory/api/models/dashboardModel.js @@ -14,11 +14,13 @@ const DashboardModel = { const db = await getDb(); const [rows] = await db.execute(` SELECT u.user_id, u.name, u.role, - w.worker_id, w.worker_name, w.job_type, w.department_id, - COALESCE(d.department_name, '미배정') AS department_name + w.worker_id, w.worker_name, w.job_type, + COALESCE(w.department_id, u.department_id) AS department_id, + COALESCE(d.department_name, d2.department_name, '미배정') AS department_name FROM sso_users u LEFT JOIN workers w ON u.user_id = w.user_id LEFT JOIN departments d ON w.department_id = d.department_id + LEFT JOIN departments d2 ON u.department_id = d2.department_id WHERE u.user_id = ? `, [userId]); return rows[0] || null;