Commit Graph

4 Commits

Author SHA1 Message Date
2a9b697baf UI 개선: 테넌트 선택 헤더 이동 및 역할 권한 관리 개선
- 테넌트 선택을 각 페이지에서 헤더로 통합 이동
- 페이지 제목 이모지 제거 및 상단 여백(mt-6) 축소
- 역할 권한 관리 페이지 레이아웃을 다른 페이지와 통일
- 메뉴명 스타일 개선 (depth 들여쓰기, └ 기호 적용)
- 상위 메뉴 컬럼 제거로 테이블 간소화
- RolePermissionService에 depth 계산 로직 추가
- pagination.js를 body 끝으로 이동하여 로딩 오류 해결
- 역할 선택 UI를 셀렉트박스에서 버튼 형태로 변경
- 역할 버튼 hover 효과 개선 (선택된 버튼 가독성 향상)

변경된 파일:
- resources/views/partials/header.blade.php: 테넌트 선택 UI 추가
- resources/views/dashboard|menus|users|departments|permissions|roles/index.blade.php: tenant-selector 제거, 여백 축소
- resources/views/layouts/app.blade.php: pagination.js 위치 변경
- app/Services/RolePermissionService.php: depth 계산 로직 추가
- resources/views/role-permissions/: 역할 권한 관리 페이지 개선
- routes/web.php, routes/api.php: 역할 권한 관리 라우트 추가
2025-11-25 15:21:48 +09:00
43af1a5779 페이지네이션 기능 개선 및 공통화
- 페이지네이션 로직을 별도 JS 파일로 분리 (public/js/pagination.js)
  * 쿠키 기반 per_page 값 저장 및 유지
  * 페이지네이션 이벤트 핸들러 통합
  * 중복 코드 제거

- 페이지네이션 UI 개선
  * 처음으로/끝으로 이동 버튼 추가
  * selectbox 너비 조정 (90px)
  * 서버사이드 selected 속성으로 옵션 매칭 개선

- 초기 페이지당 항목 수를 10개로 변경
  * TenantController, UserController, DepartmentController, RoleController 기본값 수정

- layouts/app.blade.php
  * pagination.js 로드 추가
  * 기존 인라인 스크립트 제거

변경 파일:
- public/js/pagination.js (신규)
- resources/views/layouts/app.blade.php
- resources/views/partials/pagination.blade.php
- app/Http/Controllers/Api/Admin/{Tenant,User,Department,Role}Controller.php
2025-11-24 21:21:22 +09:00
f49cfd982a 테넌트 관리 기능 수정 및 ViewServiceProvider 변수명 충돌 해결
주요 변경사항:
- Spatie Laravel Permission 패키지 설치 (v6.23.0)
- admin 프로젝트에서 필수 Traits 및 Scopes 복사
  - ModelTrait, BelongsToTenant, HasTenantFilter, UppercaseAttributes
  - TenantScope
- Tenant 모델 관계 수정 (hasMany → belongsToMany via user_tenants)
- Tenant 모델 null 처리 추가 (status_label, created_at)
- Laravel 12 bootstrap/app.php에 API 라우트 등록
- API 라우트 미들웨어 수정 (auth:sanctum → web,auth)
- HTMX 라이브러리 및 CSRF 토큰 헤더 추가

ViewServiceProvider 수정:
- 전역 View Composer의 $tenants 변수를 $globalTenants로 변경
- 페이지별 페이지네이션된 $tenants 변수와의 충돌 방지
- tenant-selector.blade.php에서 $globalTenants 사용

버그 수정:
- Collection::hasPages() 오류 해결 (ViewComposer 변수 덮어쓰기 문제)
- 테넌트 목록 무한 로딩 스피너 해결
- 500 Internal Server Error 해결
2025-11-24 11:17:31 +09:00
9367f61b9e feat: 좌측 사이드바 레이아웃 및 메뉴 시스템 구현
- layouts/app.blade.php 마스터 레이아웃 생성
- partials/sidebar.blade.php 좌측 사이드바 컴포넌트 (256px, 10개 메뉴)
- partials/header.blade.php 상단 헤더 컴포넌트 (64px, 페이지 타이틀 + 사용자 메뉴)
- dashboard/index.blade.php @extends 패턴으로 리팩토링

메뉴 구조:
- 조직 관리: 대시보드, 사용자, 권한/역할, 부서
- 제품/자재: 제품, 자재, BOM, 카테고리
- 시스템: 시스템 설정, 감사 로그

레이아웃:
- Flexbox 구조 (사이드바 + 메인 영역)
- Blade 컴포넌트 분리 (@extends/@section/@include)
- Heroicons 아이콘, 활성 상태 하이라이트
- 사용자 드롭다운 메뉴 (JavaScript 토글)
2025-11-20 21:28:58 +09:00