- fix: 로그인 API에서 user.role_name 필드 올바르게 사용 (auth.service.js)
- refactor: navbar 컴포넌트를 최신 dashboard-header 스타일로 전환
- refactor: 구버전 work-report-header 제거 (6개 페이지)
- refactor: load-navbar.js를 최신 헤더 구조에 맞게 업데이트
- style: 파란색 그라데이션 헤더, 실시간 시계, 향상된 프로필 메뉴
- docs: 2026-01-20 개발 로그 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
사용자 관리 API를 컨트롤러/라우터 패턴으로 리팩토링하고,
CORS 및 보안 설정을 별도 파일로 분리하여 코드 구조 개선
주요 변경사항:
- userController.js: 새로운 에러 핸들링 및 로깅 시스템 적용
* ValidationError, NotFoundError, ConflictError 등 커스텀 에러 사용
* logger 유틸리티로 구조화된 로깅
* 관리자 권한 검증 헬퍼 함수 추가
- index.js: 인라인 사용자 관리 라우트 제거 (888 → 605 lines)
* 283줄 감소로 코드 가독성 대폭 향상
* userRoutes 모듈 import 및 사용
- userRoutes.js: 문서화 및 로깅 개선
* JSDoc 헤더 추가
* adminOnly 미들웨어에 로깅 추가
신규 파일:
- config/cors.js: CORS 정책 설정 (허용 origin, 메소드, 헤더)
- config/security.js: Helmet 보안 헤더 설정 (CSP, HSTS, XSS 방지)
- middlewares/activityLogger.js: HTTP 요청/응답 활동 로깅
파일 통계:
- 3개 파일 수정, 3개 파일 추가
- +437 -480 (net -43 lines)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- monthly_worker_status 조회 시 GROUP BY로 중복 데이터 합산
- 작업보고서 삭제 권한을 그룹장 이상으로 제한 (admin, system, group_leader)
- 중복 데이터 정리를 위한 마이그레이션 SQL 추가 (009_fix_duplicate_monthly_status.sql)
- synology_deployment 버전에도 동일 수정 적용