# 개발 로그 - 2026-01-20 ## 타임라인 ### 오전 - 로그인 API 500 에러 수정 - **작업**: 수정 - **대상**: `api.hyungi.net/services/auth.service.js` - **문제**: - 로그인 페이지에서 500 Internal Server Error 발생 - 브라우저 콘솔 에러: "Failed to load resource: the server responded with a status of 500" - **원인**: - `userModel.findByUsername()`은 `role_name` 필드를 반환하는데 - `auth.service.js:84`에서 `user.role`로 접근하여 undefined 발생 - 응답 객체에 undefined 값이 포함되어 JSON 직렬화 실패 - **해결방법**: - `role: user.role` → `role: user.role_name`으로 수정 - **변경 내용**: ```javascript // 이전 user: { user_id: user.user_id, username: user.username, name: user.name || user.username, role: user.role, // undefined access_level: user.access_level, worker_id: user.worker_id } // 이후 user: { user_id: user.user_id, username: user.username, name: user.name || user.username, role: user.role_name, // 올바른 필드 사용 access_level: user.access_level, worker_id: user.worker_id } ``` - **파일**: `api.hyungi.net/services/auth.service.js:83` --- ### 오전 - 네비게이션 헤더 전면 개편 - **작업**: 대규모 리팩토링 - **대상**: navbar 컴포넌트 및 관련 페이지 전체 - **배경**: - 구식 navbar 디자인 사용 중 - group-leader.html의 최신 dashboard-header 스타일이 표준 - 모든 페이지를 최신 디자인으로 통일 필요 #### 1단계: 구버전 헤더 제거 - **작업**: 수정 - **대상**: 6개 페이지 - **문제**: - `work-report-header` 클래스의 구버전 헤더가 navbar와 중복 표시 - 페이지마다 불필요한 제목과 설명 중복 - **해결방법**: - 모든 페이지에서 `
` 블록 제거 - navbar 컴포넌트만 유지 - **제거된 헤더 예시**: ```html

🔧 작업 관리

프로젝트, 작업자, 작업 유형 등 기본 데이터를 관리합니다

``` - **수정된 파일** (6개): - `web-ui/pages/management/work-management.html` - `web-ui/pages/management/project-management.html` - `web-ui/pages/management/code-management.html` - `web-ui/pages/management/worker-management.html` - `web-ui/pages/common/worker-individual-report.html` - `web-ui/pages/common/daily-work-report.html` #### 2단계: navbar 컴포넌트 최신화 - **작업**: 전면 재작성 - **대상**: `web-ui/components/navbar.html` - **변경 내용**: 1. **HTML 구조 변경**: - 기존: `