fix(dashboard+tkuser): s1. 접두사 매칭 + 페이지 목록 동기화

- dashboardModel: department_page_permissions의 s1. 접두사 제거하여
  pages.page_key와 매칭 (두 테이블 명명규칙 차이 처리)
- permissionModel: 신규 페이지 13개 추가 (공정표, 생산회의록,
  대리입력, 입력현황, 근태관리 7종, 부서/알림 관리)
- pages 테이블: 누락 16개 페이지 INSERT (DB 직접 실행)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-03-30 15:04:33 +09:00
parent 65b2bbe552
commit e3b7626e07
2 changed files with 21 additions and 3 deletions

View File

@@ -84,7 +84,10 @@ const DashboardModel = {
};
}
// 부서 권한 페이지 (page_name = pages.page_key)
// 부서 권한 페이지
// department_page_permissions.page_name은 's1.work.tbm' 형식 (시스템 접두사 포함)
// pages.page_key는 'work.tbm' 형식 (접두사 없음)
// → 's1.' 접두사를 제거하여 매칭
let deptPageKeys = new Set();
if (departmentId) {
const [deptRows] = await db.execute(`
@@ -92,7 +95,10 @@ const DashboardModel = {
FROM department_page_permissions dpp
WHERE dpp.department_id = ? AND dpp.can_access = 1
`, [departmentId]);
deptRows.forEach(r => deptPageKeys.add(r.page_name));
deptRows.forEach(r => {
const key = r.page_name.startsWith('s1.') ? r.page_name.slice(3) : r.page_name;
deptPageKeys.add(key);
});
}
// 개인 권한 페이지 (page_id = pages.id)