feat(부서관리): V1 슬림 스코프 + UX 리디자인 + Windows dev HMR #2

Merged
johngreen merged 3 commits from johngreen into main 2026-05-08 02:12:04 +00:00
Contributor

Summary

  • 부서관리 V1 슬림 스코프 (V018 soft-delete, V019 cleanup)
  • 부서관리 UX 리디자인 — 트리 ⋮ 컨텍스트 메뉴 + 헤더 breadcrumb + 폼 슬림화
  • 백엔드 parent_dept_code 사이클 가드 (자기/자손 부모 지정 시도 차단)
  • Windows Docker Desktop 자동 HMR 복원 (turbopack off, webpack polling)

Test plan

  • 부서 추가/수정/삭제 기본 흐름
  • 트리 ⋮ → "다른 부서 아래로 이동" picker 동작 + 자손 자동 exclude
  • 트리 ⋮ → 정렬 4단계 (맨 위/한 칸 위/한 칸 아래/맨 아래)
  • 자기/자손을 부모로 옮기기 시도 → 400 차단
  • Soft-delete + 복구 흐름
  • Windows: start.bat 기동 후 frontend 코드 수정 → 1~3초 자동 반영
  • Mac/Linux: 영향 없음 (turbopack 유지)
## Summary - 부서관리 V1 슬림 스코프 (V018 soft-delete, V019 cleanup) - 부서관리 UX 리디자인 — 트리 ⋮ 컨텍스트 메뉴 + 헤더 breadcrumb + 폼 슬림화 - 백엔드 parent_dept_code 사이클 가드 (자기/자손 부모 지정 시도 차단) - Windows Docker Desktop 자동 HMR 복원 (turbopack off, webpack polling) ## Test plan - [ ] 부서 추가/수정/삭제 기본 흐름 - [ ] 트리 ⋮ → "다른 부서 아래로 이동" picker 동작 + 자손 자동 exclude - [ ] 트리 ⋮ → 정렬 4단계 (맨 위/한 칸 위/한 칸 아래/맨 아래) - [ ] 자기/자손을 부모로 옮기기 시도 → 400 차단 - [ ] Soft-delete + 복구 흐름 - [ ] Windows: start.bat 기동 후 frontend 코드 수정 → 1~3초 자동 반영 - [ ] Mac/Linux: 영향 없음 (turbopack 유지)
johngreen added 3 commits 2026-05-08 02:05:19 +00:00
백엔드:
- V018 soft-delete (deleted_at 컬럼) + 휴지통/복구 흐름
- V019 미사용 컬럼 cleanup (V1 슬림 스코프)
- DepartmentService.updateDepartment 에 parent_dept_code 사이클 가드
  (자기 자신/자손을 부모로 지정 시도 차단)
- DepartmentController, mapper 갱신

프론트:
- 부서관리 페이지(deptMngList) UX 리디자인
  - 트리 노드 ⋮ 컨텍스트 메뉴 (하위 추가, 다른 부서 아래로 이동, 정렬 4단계, 삭제)
  - 헤더 breadcrumb 으로 부서 위치 상시 표시
  - 폼의 상위부서 row 제거 (트리 ⋮ 로 진입점 일원화)
  - 빈 상태 placeholder + X 닫기 동작
  - 토글 버튼 토스 스타일 (아이콘 + 툴팁, 일정한 위치)
  - 부서유형 row 좁은 화면 가로 오버플로 fix
- DepartmentPicker 신규 재사용 컴포넌트 (자손 자동 exclude, 사이클 차단)
- 회사관리/프로비저닝 폼 개선 (Step1Basic, fields, CompanyTable, AdminPageRenderer)
- companyList/[companyCode]/departments 구버전 페이지 삭제

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Docker Desktop on Windows 의 bind mount 가 host inotify 이벤트를
컨테이너로 전파하지 못해 Turbopack file watcher 가 host 편집을 감지 못 함.
webpack 은 WATCHPACK_POLLING=true 폴백을 지원하므로 Windows 에서만
Turbopack 을 끄고 webpack 으로 폴백 → 자동 HMR 복원.

- frontend/package.json: dev:docker:nopack 스크립트 추가 (next dev, no turbopack)
- docker/dev/docker-compose.windows.yml: Windows 전용 frontend command override
- scripts/start/invyone-start-docker-all.bat: windows.yml 자동 merge

Mac/Linux 진입점은 영향 없음 (start.bat 만 windows override 활성).
첫 컴파일은 약간 느려지지만 (~10-30%) 수정→반영 시간이 80s → 1~3s 로 단축.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
johngreen merged commit 3d220373d8 into main 2026-05-08 02:12:04 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gbpark/invyone#2