/** * 휴가 관리 페이지 분리 및 등록 * - 기존 vacation-management.html을 2개 페이지로 분리 * - vacation-request.html: 작업자 휴가 신청 및 본인 내역 확인 * - vacation-management.html: 관리자 휴가 승인/직접입력/전체내역 (3개 탭) */ exports.up = async function(knex) { // 기존 vacation-management 페이지 삭제 await knex('pages') .where('page_key', 'vacation-management') .del(); // 새로운 휴가 관리 페이지 2개 등록 await knex('pages').insert([ { page_key: 'vacation-request', page_name: '휴가 신청', page_path: '/pages/common/vacation-request.html', category: 'common', description: '작업자가 휴가를 신청하고 본인의 신청 내역을 확인하는 페이지', is_admin_only: 0, display_order: 51 }, { page_key: 'vacation-management', page_name: '휴가 관리', page_path: '/pages/common/vacation-management.html', category: 'common', description: '관리자가 휴가 승인, 직접 입력, 전체 내역을 관리하는 페이지', is_admin_only: 1, display_order: 52 } ]); console.log('✅ 휴가 관리 페이지 분리 완료 (기존 1개 → 신규 2개)'); }; exports.down = async function(knex) { // 새로운 페이지 삭제 await knex('pages') .whereIn('page_key', ['vacation-request', 'vacation-management']) .del(); // 기존 vacation-management 페이지 복원 await knex('pages').insert({ page_key: 'vacation-management', page_name: '휴가 관리', page_path: '/pages/common/vacation-management.html.old', category: 'common', description: '휴가 신청 및 승인 관리', is_admin_only: 0, display_order: 50 }); console.log('✅ 휴가 관리 페이지 롤백 완료'); };