fix(tkfb): is_admin_only 레거시 필터 제거
과거 권한 시스템 잔재인 is_admin_only 필터를 모든 런타임 코드에서 제거. 현재 체계: admin=모든 페이지, 일반 사용자=권한 부여된 페이지만. DB에서도 is_admin_only = 0으로 통일 (22건 갱신). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -75,12 +75,10 @@ const DashboardModel = {
|
|||||||
`);
|
`);
|
||||||
|
|
||||||
if (isAdmin) {
|
if (isAdmin) {
|
||||||
const adminPages = allPages.filter(p => p.is_admin_only);
|
|
||||||
const normalPages = allPages.filter(p => !p.is_admin_only);
|
|
||||||
return {
|
return {
|
||||||
department_pages: normalPages.map(formatPage),
|
department_pages: allPages.map(formatPage),
|
||||||
personal_pages: [],
|
personal_pages: [],
|
||||||
admin_pages: adminPages.map(formatPage)
|
admin_pages: []
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -114,8 +112,6 @@ const DashboardModel = {
|
|||||||
const personalPages = [];
|
const personalPages = [];
|
||||||
|
|
||||||
for (const page of allPages) {
|
for (const page of allPages) {
|
||||||
if (page.is_admin_only) continue;
|
|
||||||
|
|
||||||
if (deptPageKeys.has(page.page_key)) {
|
if (deptPageKeys.has(page.page_key)) {
|
||||||
departmentPages.push(formatPage(page));
|
departmentPages.push(formatPage(page));
|
||||||
} else if (personalPageIds.has(page.id)) {
|
} else if (personalPageIds.has(page.id)) {
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ const PageAccessModel = {
|
|||||||
FROM pages p
|
FROM pages p
|
||||||
LEFT JOIN user_page_access upa ON p.id = upa.page_id AND upa.user_id = ?
|
LEFT JOIN user_page_access upa ON p.id = upa.page_id AND upa.user_id = ?
|
||||||
LEFT JOIN users granter ON upa.granted_by = granter.user_id
|
LEFT JOIN users granter ON upa.granted_by = granter.user_id
|
||||||
WHERE p.is_admin_only = 0
|
|
||||||
ORDER BY p.category, p.display_order
|
ORDER BY p.category, p.display_order
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@@ -39,7 +38,6 @@ const PageAccessModel = {
|
|||||||
is_admin_only,
|
is_admin_only,
|
||||||
display_order
|
display_order
|
||||||
FROM pages
|
FROM pages
|
||||||
WHERE is_admin_only = 0
|
|
||||||
ORDER BY category, display_order
|
ORDER BY category, display_order
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
|||||||
@@ -95,9 +95,6 @@ router.get('/users/:userId/page-access', requireAuth, async (req, res) => {
|
|||||||
ON dpp.department_id = ?
|
ON dpp.department_id = ?
|
||||||
AND (dpp.page_name = CONCAT('s1.', p.page_key) OR dpp.page_name = p.page_key)
|
AND (dpp.page_name = CONCAT('s1.', p.page_key) OR dpp.page_name = p.page_key)
|
||||||
LEFT JOIN users u2 ON upa.granted_by = u2.user_id
|
LEFT JOIN users u2 ON upa.granted_by = u2.user_id
|
||||||
WHERE p.is_admin_only = 0
|
|
||||||
OR upa.can_access = 1
|
|
||||||
OR dpp.can_access = 1
|
|
||||||
ORDER BY p.display_order, p.page_name
|
ORDER BY p.display_order, p.page_name
|
||||||
`, [userId, departmentId]);
|
`, [userId, departmentId]);
|
||||||
|
|
||||||
@@ -232,7 +229,7 @@ router.get('/page-access/summary', requireAuth, async (req, res) => {
|
|||||||
u.name,
|
u.name,
|
||||||
r.name as role_name,
|
r.name as role_name,
|
||||||
COUNT(DISTINCT upa.page_id) as accessible_pages_count,
|
COUNT(DISTINCT upa.page_id) as accessible_pages_count,
|
||||||
(SELECT COUNT(*) FROM pages WHERE is_admin_only = 0) as total_pages_count
|
(SELECT COUNT(*) FROM pages) as total_pages_count
|
||||||
FROM users u
|
FROM users u
|
||||||
LEFT JOIN roles r ON u.role_id = r.id
|
LEFT JOIN roles r ON u.role_id = r.id
|
||||||
LEFT JOIN user_page_access upa ON u.user_id = upa.user_id AND upa.can_access = 1
|
LEFT JOIN user_page_access upa ON u.user_id = upa.user_id AND upa.can_access = 1
|
||||||
|
|||||||
Reference in New Issue
Block a user