Commit Graph

54 Commits

Author SHA1 Message Date
pro
7ed908f53d feat:쿠콘 API 신용평가 조회 기능 구현
- CooconConfig 모델 및 마이그레이션 추가
- CooconService 클래스 구현 (OA12~OA17 API)
- CreditController 확장 (설정 관리, 조회 기능)
- 설정 관리 화면 추가 (CRUD, 활성화 토글)
- 사업자번호 조회 화면 업데이트 (API 연동)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 19:33:51 +09:00
pro
f5f8f81173 feat:신용평가 그룹 메뉴 및 조회 페이지 추가
- 신용평가 그룹 메뉴 추가 (MngMenuSeeder)
- 신용평가 조회 하위 메뉴 추가
- CreditController 생성
- 신용평가 조회 페이지 뷰 생성

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 19:11:45 +09:00
pro
f55d30e867 feat:바로빌 메뉴 그룹 및 하위메뉴 추가
- 바로빌본사 → 바로빌로 이름 변경
- 하위메뉴 추가: 설정, 전자세금계산서, 계좌조회, 카드사용내역, 홈텍스매입/매출, 사용량조회
- 설정 페이지 구현 (이메일, 동기화, API, 알림 설정)
- 나머지 메뉴는 준비중 페이지로 생성
2026-01-22 15:27:01 +09:00
pro
348c529732 feat: 바로빌 그룹메뉴 및 회원사관리 페이지 추가
- MngMenuSeeder에 바로빌 그룹메뉴와 회원사관리 하위메뉴 추가
- BarobillController 생성 (회원사관리 페이지)
- /barobill/members 라우트 추가
- 회원사관리 기본 뷰 파일 생성 (샘플 테이블 포함)

메뉴 적용: php artisan db:seed --class=MngMenuSeeder

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 21:16:06 +09:00
pro
0917c774f1 feat:재무 대시보드 페이지 추가 2026-01-21 19:10:52 +09:00
김보곤
acad251eec feat:자금계획일정 추가 2026-01-20 20:21:06 +09:00
7c0bed7dd9 fix(MNG): HTMX 네비게이션 스크립트 초기화 및 세션 자동 갱신
1. /menus 페이지 hx-boost 네비게이션 시 SortableJS 미실행 수정
   - htmx:afterSettle 이벤트로 페이지별 스크립트 초기화
   - menu-sortable.js로 SortableJS 로직 분리
   - 중복 코드 제거

2. 세션 만료 시 자동 갱신 로직 추가
   - /auth/refresh-session 엔드포인트 추가
   - Remember Token으로 자동 재인증 (자동 로그인 사용자)
   - 재인증 실패 시 로그인 페이지 리다이렉트
2026-01-20 13:42:28 +09:00
f70f75fb22 feat(dev-tools): 인증 모달에 회사 선택 및 토큰 표시 기능 추가
- 인증 모달에 회사(테넌트) 선택 드롭다운 추가
  - 헤더의 $globalTenants 재사용
  - tenant.switch 라우트와 동기화
  - 회사 변경 시 사용자 목록 자동 갱신

- Bearer 토큰 표시 및 복사 기능 추가
  - 토큰 발급 API 엔드포인트 추가 (POST /dev-tools/api-explorer/issue-token)
  - 현재 상태 영역에 토큰 표시
  - 클립보드 복사 버튼 (Clipboard API + fallback)
  - 적용 후 모달 유지하여 토큰 복사 가능

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-05 15:10:09 +09:00
358c987cc1 feat(comment): 게시글 댓글 CRUD 기능 추가
- 댓글 라우트 추가 (store, update, destroy)
- PostService에 댓글 관리 메서드 추가
- PostController에 댓글 컨트롤러 메서드 추가
- 게시글 상세 페이지에 댓글 섹션 UI 추가 (AlpineJS)
- 계층형 댓글 지원 (부모/대댓글)
- BoardComment 모델 추가
- HTMLPurifier 패키지 및 설정 추가
- 게시글 목록에 첨부파일/댓글 수 표시

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 12:58:06 +09:00
0db6e99a22 feat(board): 슈퍼관리자 삭제 게시물 관리 및 회사명 표시 기능 추가
## 슈퍼관리자 삭제 게시물 관리
- 삭제된 게시물 목록에 표시 (빨간색 배경, 취소선)
- 게시물 복원 기능 추가 (POST /{post}/restore)
- 게시물 영구삭제 기능 추가 (DELETE /{post}/force)
- 통계 카드에 삭제됨 카운트 추가

## 페이지 타이틀 회사명 표시
- /boards: "회사명 게시판 관리" 형식으로 표시
- /boards/{code}/posts: "회사명 게시판명" 형식으로 표시
- 회사명 파란색으로 구분 표시

## 버그 수정
- 통계 카드 CSS: Tailwind 동적 클래스 문제 해결
  (grid-cols-{{ }} → 정적 클래스로 변경)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 09:11:21 +09:00
a30410643b fix(board): 게시판 URL tenant_id 처리 및 게시글 수 표시 추가
- Route Model Binding → 수동 조회로 변경 (board_code + tenant_id)
- PostController: resolveBoard() 헬퍼 추가
  - t 파라미터 → 시스템 게시판 → 로그인 회원 tenant 순서
- 사이드바 메뉴 리다이렉트: tenant_id ?? 1 fallback 추가
  - SidebarMenuService와 동일한 로직으로 일관성 확보
- 게시판 목록 테이블에 게시글 수 컬럼 추가
- 모든 posts View에 tenant_id 파라미터 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-28 01:30:50 +09:00
12f5d9e280 fix(board): 테넌트 게시판 메뉴 우선순위 및 라우트 수정
- 테넌트 게시판 부모 메뉴 우선순위 변경: /boards → /customer-center
- 테넌트 게시판 리다이렉트 라우트 추가: /boards/{code} → /boards/{id}/posts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 23:40:33 +09:00
ace6881792 feat(mng): 고객센터 게시판 코드 리다이렉트 추가
- /customer-center/{code} → /boards/{id}/posts 리다이렉트
- 시스템 게시판(tenant_id=null) + 활성화된 게시판만 대상

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 21:12:55 +09:00
b992886fca feat(mng): 고객센터 게시판 목록 페이지 추가
- /customer-center 라우트 신규 생성
- 활성화된 시스템 게시판만 표시
- 테이블 컬럼: ID, 유형, 코드, 게시판명, 게시글 수, 생성일
- 관리 기능(구분, 필드, 상태, 액션) 제외한 읽기 전용 뷰

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 20:50:58 +09:00
da159cc46e feat(boards): 게시글 파일 시스템 개선 및 이미지 미리보기 추가
- Morph map에 Post, Department 모델 등록 (ClassMorphViolationException 해결)
- 파일 저장 방식을 API 스타일로 변경 (document_id + document_type)
- 파일 미리보기 라우트 및 메서드 추가 (previewFile)
- 게시글 상세 페이지에서 이미지 첨부파일을 본문 상단에 풀 너비로 표시
- 비이미지 첨부파일은 하단에 다운로드 목록으로 분리

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 17:08:53 +09:00
aa1fd76a99 feat: Flow Tester 기능 개선 및 안정화
- FlowTesterController: 테스트 실행 로직 개선
  - 에러 핸들링 강화
  - 응답 형식 표준화
- FlowExecutor: API 호출 실행기 개선
  - 다단계 플로우 지원 강화
  - 변수 바인딩 및 검증 개선
- index.blade.php: UI 개선
  - 테스트 결과 표시 개선
  - 사용성 향상
- routes/web.php: 라우트 정리
- composer.lock: 의존성 업데이트

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-21 01:35:54 +09:00
c073b82633 feat: FCM 관리자 페이지 추가
- FCM 토큰 관리 페이지 (목록, 활성화/비활성화, 삭제)
- 테스트 발송 페이지 (대상 필터, 미리보기, 발송)
- 발송 이력 페이지 (필터링, 결과 확인)
- FcmSender 서비스 (HTTP v1, 배치 처리)
- fcm_send_logs 테이블 마이그레이션
- google/auth 패키지 추가
2025-12-19 09:57:00 +09:00
15a66a345e feat: API 사용 현황 및 폐기 후보 관리 기능 추가
- API 사용 통계 조회 및 미사용 API 식별 기능
- 폐기 후보 등록/상태변경/삭제 기능
- API Explorer에서 사용 현황 페이지 링크 추가
- 북마크 토글 버그 수정 (라우트-컨트롤러 메서드명 일치)
2025-12-18 20:26:17 +09:00
e013f5205c [feat] Flow Tester 사용자 선택 기능 및 API Explorer 인증 공유
- API Explorer와 세션 토큰 공유 (api_explorer_token, api_explorer_user_id)
- 사용자 선택 드롭다운 UI 추가 (동일 테넌트 사용자 목록)
- HMAC 변수 자동 생성 기능 추가 (\$hmac.exp, \$hmac.signature 등)
- VariableBinder에서 선택된 사용자 정보 사용
- 사용자 선택 시 Sanctum 토큰 자동 발급
2025-12-18 16:08:53 +09:00
a62337ef5c feat: [API Explorer] Phase 1 완성 - 히스토리 로드, 밸리데이션, 유니코드 처리
- 히스토리 로드 기능 구현 (loadFromHistory, fillFormFromHistory)
- 클라이언트 사이드 필수값 밸리데이션 추가
- 응답 본문 \xXX UTF-8 바이트 시퀀스 디코딩 (PHP 스택트레이스 한글 깨짐 해결)
- sidebar에 data-operation-id 속성 추가
- history-drawer 함수 연결 수정
- Flow Tester 변수 바인딩 개선
- 마이그레이션 파일 통합 정리
2025-12-18 15:42:01 +09:00
fbd4fb728e feat: [api-explorer] Phase 1 기본 구조 및 OpenAPI 파싱 구현
- Config, Service, Controller, View 생성
- Model 4개 (admin_api_* 테이블 참조)
- 3-Panel 레이아웃 (sidebar, request, response)
- HTMX 기반 동적 UI
- 마이그레이션은 api/ 프로젝트에서 관리
2025-12-17 22:06:28 +09:00
f7a8839ded feat: API 로그 재전송 기능 추가
- 리스트/상세 페이지에 재전송 버튼 추가
- 인증 방식 선택: 토큰 직접 입력 / 사용자 선택(Sanctum 토큰 발급)
- 환경별 API URL 변환 (API_BASE_URL 설정)
- X-API-KEY 헤더 자동 추가 (FLOW_TESTER_API_KEY 사용)
- 성공/실패 상태 배너 표시
- 세션에 토큰 저장하여 다음 재전송 시 자동 입력
- 재전송 성공 시 1초 후 페이지 새로고침
- 에러만 필터 옵션 추가 (4xx+5xx)
2025-12-17 18:56:40 +09:00
25ef6659ba feat: 영업 시나리오 체크리스트 기능 구현
- 6단계 영업 프로세스 체크리스트 UI 구현
- 사용자별 체크포인트 저장/조회 API 추가
- 레거시 스타일 가로 아코디언 UI 적용
- 단계별 진행률 표시 및 꿀팁 모달 추가
2025-12-16 23:36:00 +09:00
dff2a886e7 API 로그 목록 UI 개선
- 파라미터 표시: URL 아래에 key=value 형식으로 표시
- 아코디언 기능: row 클릭 시 요청 헤더/응답 바디 확장 표시
- 요청 헤더: 각 항목별 한 줄 포맷 (key: value)
- 아이콘 버튼: 상세(눈), AI 복사(복사) 아이콘으로 변경
- AI 복사: 에러(400+) 로그에만 AI 분석 복사 버튼 표시
- 레이아웃: 테이블 컬럼 고정 너비, 셀 중간 정렬
- 아코디언 스타일: 테두리 추가, 배경색 조정
- 모든 로그 삭제(truncate) 기능 추가
2025-12-15 21:03:46 +09:00
f5e2068557 MNG: API 로그 관리 기능 추가
- ApiLogController: 로그 목록/상세/삭제 기능
- ApiRequestLog 모델: 색상 accessor, 경로 추출
- 뷰: 통계, 필터링, 페이지네이션
- 사이드바에 'API 요청 로그' 메뉴 추가
- JSON 출력 stripslashes 적용 (이스케이프 제거)
2025-12-15 15:51:19 +09:00
a043bf7b51 refactor(lab): 실험실 → R&D Labs 리브랜딩
- 사이드바 UI 텍스트 변경 (실험실 → R&D Labs)
- 라우트 및 컨트롤러 주석 업데이트
- AI/Management 컨트롤러 docblock 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-14 00:31:34 +09:00
e90eaee6a5 feat(lab): A 메뉴(AI/자동화) 12개, M 메뉴(관리) 11개 마이그레이션
- AIController 생성 (12개 메서드)
- ManagementController 생성 (11개 메서드)
- A 메뉴 플레이스홀더 템플릿 12개 생성
  - 사업자등록증 OCR, 웹 녹음 AI 요약, 회의록 AI 요약
  - 업무협의록 AI 요약, 운영자용 챗봇, Vertex RAG 챗봇
  - 테넌트 지식 업로드, 테넌트 챗봇, SAM AI 메뉴 이동
  - SAM AI 알람음 제작, GPS 출퇴근 관리, 기업개황 조회
- M 메뉴 플레이스홀더 템플릿 11개 생성
  - 바로빌 테넌트 관리, 전자세금계산서 전략, 전자세금계산서
  - 사업자등록번호 진위 확인, 영업관리 & 매니저 미팅관리
  - 카드 세무항목 매칭 전략, 한국 카드사 API 보고서
  - 카드 사용내역 수집 후 매칭, 계좌입출금 내역 조회 API
  - 영업관리 시나리오, 매니저 시나리오
- 라우트 23개 추가 (AI 12개, Management 11개)
- 사이드바 메뉴 라우트 연결 완료

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 23:55:18 +09:00
b200947ebc feat(lab): S 메뉴 전략 문서 15개 마이그레이션
- StrategyController 생성 (15개 메소드)
- presentation.blade.php 레이아웃 추가
- 전략 문서 템플릿 15개 생성:
  - tax, labor, debt, chatbot (슬라이드 프레젠테이션)
  - rag-startups, douzone (Chart.js 통합)
  - confluence-vs-notion (비교 분석 + 퀴즈)
  - sales-strategy (8 슬라이드 + 채팅 UI)
  - kodata-vs-nice, barobill-vs-popbill (API 비교)
  - knowledge-search, chatbot-compare (탭 기반)
  - stablecoin, mrp-overseas, qa-solution (placeholder)
- 라우트 및 사이드바 메뉴 연결

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-13 23:41:08 +09:00
c1bd7ab4d3 품목기준 필드 관리 기능 구현
- ItemField 모델 및 SystemFieldDefinitions 상수 클래스 추가
- ItemFieldSeedingService: 시스템 필드 시딩/초기화/커스텀 필드 CRUD
- ItemFieldController (API): HTMX 기반 시딩 상태, 커스텀 필드 관리
- 커스텀 필드 수정 기능 (시스템 필드는 source_table/field_key 수정 불가)
- 레거시 데이터 표시 개선: 소스 테이블 비어있으면 '미지정' 배지
- 필드 키 정책 변경: 숫자로 시작 허용 (영문/숫자/밑줄)
- AI 문의하기: 시딩 오류 보고서 생성 기능
- 사이드바에 품목기준 필드 관리 메뉴 추가
2025-12-09 23:13:27 +09:00
dac02f120b feat(quote-formulas): 견적수식 관리 기능 구현
## 구현 내용

### 모델 (5개)
- QuoteFormulaCategory: 수식 카테고리
- QuoteFormula: 수식 정의 (input/calculation/range/mapping)
- QuoteFormulaRange: 범위별 값 정의
- QuoteFormulaMapping: 매핑 테이블
- QuoteFormulaItem: 수식-품목 연결

### 서비스 (3개)
- QuoteFormulaCategoryService: 카테고리 CRUD
- QuoteFormulaService: 수식 CRUD, 복제, 재정렬
- FormulaEvaluatorService: 수식 계산 엔진
  - 지원 함수: SUM, ROUND, CEIL, FLOOR, ABS, MIN, MAX, IF, AND, OR, NOT

### API Controller (2개)
- QuoteFormulaCategoryController: 카테고리 API (11개 엔드포인트)
- QuoteFormulaController: 수식 API (16개 엔드포인트)

### FormRequest (4개)
- Store/Update QuoteFormulaCategoryRequest
- Store/Update QuoteFormulaRequest

### Blade Views (8개)
- 수식 목록/추가/수정/시뮬레이터
- 카테고리 목록/추가/수정
- HTMX 테이블 partial

### 라우트
- API: 27개 엔드포인트
- Web: 7개 라우트
2025-12-04 14:00:24 +09:00
2846d6c034 style: 관리자 패널 UI 개선 및 스크럼 모달 통합
- 테이블 헤더 스타일 통일 (menus, roles, permissions, boards 등)
- 권한 매트릭스 체크박스/버튼 크기 20x20으로 표준화
- 스크럼 항목 추가/수정 모달 통합 (코드 중복 제거)
- daily-logs API URL 경로 수정 (/pm/ 제거)
- 타임존 Asia/Seoul로 변경
- flow-tester 액션 아이콘 크기 조정
2025-12-03 16:47:57 +09:00
5db21095f3 feat: [메뉴] 글로벌 메뉴 관리 기능 구현 (슈퍼관리자 전용)
- 글로벌 메뉴 CRUD API 및 라우트 추가 (GlobalMenuController)
- 글로벌 메뉴 목록/생성/수정 뷰 추가 (보라색 테마)
- MenuService에 글로벌 메뉴 관련 메서드 11개 추가
- 메뉴 관리 페이지에 '글로벌 메뉴 관리' 버튼 추가
- 가져오기 모드에서 이미 가져온 메뉴 비활성화 표시
- super.admin 미들웨어로 접근 제어
2025-12-02 21:41:15 +09:00
8948aa86d0 feat: 게시글 파일 첨부 기능 구현
- File 모델 추가 (Polymorphic 관계)
- Post 모델에 files() MorphMany 관계 추가
- PostService 파일 업로드/삭제/다운로드 메서드 추가
- PostController 파일 관련 액션 추가
- 게시글 작성/수정 폼에 드래그앤드롭 파일 업로드 UI
- 게시글 상세에 첨부파일 목록 표시
- tenant 디스크 설정 (공유 스토리지)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:54:43 +09:00
7ea8997927 feat: 최초 로그인 시 비밀번호 변경 강제 기능
- User 모델에 must_change_password 필드 추가
- UserService: createUser(), resetPassword()에서 플래그 설정
- ProfileService: changePassword()에서 플래그 해제
- EnsurePasswordChanged 미들웨어 추가
- 인증 라우트에 password.changed 미들웨어 적용
- 프로필 페이지에 비밀번호 변경 필요 알림 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:44:56 +09:00
d992a19735 feat: 프로필 설정 페이지 추가
- 프로필 정보 수정 (이름, 전화번호)
- 비밀번호 변경 기능
- 헤더 드롭다운 메뉴 연결

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:16:23 +09:00
a2477837d0 feat: [daily-logs] 일일 스크럼 기능 구현
주요 기능:
- 일일 로그 CRUD (생성, 조회, 수정, 삭제, 복원, 영구삭제)
- 로그 항목(Entry) 관리 (추가, 상태변경, 삭제, 순서변경)
- 주간 타임라인 (최근 7일 진행률 표시)
- 테이블 리스트 아코디언 상세보기
- 담당자 자동완성 (일반 사용자는 슈퍼관리자 목록 제외)
- HTMX 기반 동적 테이블 로딩 및 필터링
- Soft Delete 지원

파일 추가:
- Models: AdminPmDailyLog, AdminPmDailyLogEntry
- Controllers: DailyLogController (Web, API)
- Service: DailyLogService
- Requests: StoreDailyLogRequest, UpdateDailyLogRequest
- Views: index, show, table partial, modal-form partial

라우트 추가:
- Web: /daily-logs, /daily-logs/today, /daily-logs/{id}
- API: /api/admin/daily-logs/* (CRUD + 항목관리)
2025-12-01 14:07:55 +09:00
6b40362392 feat: [archived-records] 아카이브 복원 기능 및 테넌트 필터링 구현
Phase 1 - 아카이브 복원 기능:
- ArchiveService: 모델별 아카이브 로직 통합 (326줄)
- RestoreService: 복원 로직 및 충돌 검사 (319줄)
- ArchivedRecordController: restore, checkRestore 메서드 추가
- record_type enum→varchar 마이그레이션
- 복원 버튼 및 충돌 체크 UI (restore-check.blade.php)

Phase 2 - 테넌트 필터링:
- ArchivedRecord 모델: tenant_id fillable, tenant 관계 추가
- ArchiveService: tenant_id 저장 로직 (determineTenantId)
- ArchivedRecordService: 테넌트별 필터링 쿼리
- 목록 UI: ID 컬럼, 대상 테넌트 컬럼 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 00:43:58 +09:00
695e3873d9 chore: 관리 페이지 뷰 및 라우트 정비
- ArchivedRecordController 수정
- 각종 테이블 뷰 개선 (archived-records, boards, departments, menus, tenants)
- web.php 라우트 정비
2025-11-30 21:05:13 +09:00
e2475d0d9f feat: [pm] 프로젝트 진행 관리 시스템 구현
- Models: AdminPmProject, AdminPmTask, AdminPmIssue
- Services: ProjectService, TaskService, IssueService, ImportService
- API Controllers: ProjectController, TaskController, IssueController, ImportController
- FormRequests: Store/Update/BulkAction 요청 검증
- Views: 대시보드, 프로젝트 CRUD, JSON Import 화면
- Routes: API 42개 + Web 6개 엔드포인트

주요 기능:
- 프로젝트/작업/이슈 계층 구조 관리
- 상태 변경, 우선순위, 마감일 추적
- 작업 순서 드래그앤드롭 (reorder API)
- JSON Import로 일괄 등록
- Soft Delete 및 복원
2025-11-28 08:49:30 +09:00
ff943ab728 feat: API Flow Tester 기능 기반 구조 추가
- 모델: AdminApiFlow, AdminApiFlowRun
- 컨트롤러: FlowTesterController
- 뷰: index, create, edit, history, run-detail
- 사이드바 메뉴에 "개발 도구" 그룹 추가
- 라우트 설정
2025-11-27 19:02:18 +09:00
d45ccfb325 feat(mng): 아카이브 레코드 batch 그룹핑 UI 구현
- ArchivedRecordService: batch_id 기준 그룹핑 쿼리 추가
- Controller: batchId 파라미터로 상세 조회 변경
- 목록: 작업 설명, 레코드 타입, 레코드 수 표시
- 상세: batch 내 모든 레코드를 카드 형태로 표시
- 한번의 삭제 작업이 하나의 행으로 표시됨
2025-11-26 23:16:39 +09:00
6ad76239a9 feat(mng): 삭제된 데이터 백업 기능 추가
- ArchivedRecord, ArchivedRecordRelation 모델 추가
- ArchivedRecordService 추가 (읽기 전용)
- 목록/상세 컨트롤러 및 뷰 구현
- HTMX 기반 테이블 필터링 및 페이지네이션
- 사이드바 메뉴 연결
2025-11-26 22:23:37 +09:00
1fc530bca2 feat(mng): 권한 분석 페이지 구현
- 메뉴별 권한 분석 기능 (접근 가능/불가 사용자 목록)
- 사용자 역추적 기능 (역할/부서/개인별 권한 추적)
- CSV 내보내기 기능
- 트리 구조 시각화 (└─ 연결선, 폴더/문서 아이콘)
- 중복 메뉴 표시 문제 해결 (테넌트별 메뉴만 표시)
2025-11-26 21:42:51 +09:00
7546771ee5 feat(mng): 개인 권한 관리 통합 매트릭스 구현
- 역할/부서/개인 권한을 통합하여 최종 유효 권한 표시
- 권한 소스별 색상 구분 UI (보라=역할, 파랑=부서, 녹색=개인허용, 빨강=개인거부)
- 스마트 토글 로직 (상속된 권한 오버라이드 지원)
- UserPermissionService: getRolePermissions(), getDepartmentPermissions(), getPersonalOverrides()
- 사용자 ID 뱃지 스타일 개선
2025-11-26 20:40:54 +09:00
fec284d872 feat: 부서 권한 관리 기능 구현
- DepartmentPermissionService 생성 (역할 권한 관리 패턴 적용)
- 부서별 메뉴 권한 매트릭스 관리
- 하위 부서 권한 자동 전파 기능
- 전체 허용/거부/초기화 기능
- HTMX 기반 실시간 권한 토글
- Department 모델의 HasRoles trait 활용
- model_has_permissions 테이블 사용

주요 파일:
- app/Services/DepartmentPermissionService.php
- app/Http/Controllers/DepartmentPermissionController.php
- app/Http/Controllers/Api/Admin/DepartmentPermissionController.php
- resources/views/department-permissions/index.blade.php
- resources/views/department-permissions/partials/*.blade.php
- routes/web.php, routes/api.php 라우트 추가
- sidebar 부서 권한 관리 메뉴 활성화
2025-11-25 15:32:58 +09:00
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
dc91b89b44 feat(mng): 권한 관리 기능 구현
- Permission 모델 및 PermissionService 생성 (Spatie Permission 확장)
- HTMX 기반 권한 CRUD API 구현
- Blade 기반 권한 관리 화면 (index, create, edit)
- 권한명 포맷팅 로직 추가 (menu:id.type 파싱)
- 사이드바 메뉴 추가
- 멀티테넌트 지원 (tenant_id nullable)
- 할당된 역할/부서 표시 기능
2025-11-25 11:05:57 +09:00
79aebfa148 메뉴 관리 기능 개선
- 트리 구조 정렬 및 표시 (무제한 depth 지원)
- 접기/펼치기 기능 추가 (재귀적 처리)
- 활성/숨김 상태 토글 기능 (실시간 업데이트)
- 테넌트 필터링 (전체 선택 시 마스터 메뉴만 표시)
- UI 개선 (토글 버튼, 외부 메뉴 표시)

추가된 파일:
- MenuService: 비즈니스 로직 처리
- MenuController (API/Web): 라우트 처리
- MenuRequest: 유효성 검증
- views/menus/: 메뉴 관리 뷰

수정된 파일:
- routes/api.php, web.php: 메뉴 라우트 추가
2025-11-24 22:02:09 +09:00
0c86b390ad feat: 사용자 관리 기능 및 MNG 문서 추가
- MNG_CRITICAL_RULES.md: DB 마이그레이션 금지 등 핵심 규칙
- UserController: 사용자 CRUD API 엔드포인트
- StoreUserRequest, UpdateUserRequest: 사용자 검증
- 사용자 관리 뷰: index, create, edit, table
- 시스템 관리 메뉴 UI 개선 (테이블 헤더 스타일)
- docs/INDEX.md: CRITICAL_RULES 링크 추가
2025-11-24 18:49:02 +09:00
6738505106 feat: Phase 4-3 부서 관리 시스템 구현
- DepartmentService, DepartmentController (Blade/API) 생성
- 부서 CRUD 기능 완성 (목록/생성/수정/삭제)
- FormRequest 검증 (StoreDepartmentRequest, UpdateDepartmentRequest)
- HTMX 패턴 적용 (index, create, edit, partials/table)
- 계층 구조 지원 (parent-child relationships)
- 활성/비활성 상태 관리
- 정렬 순서 관리
- Tenant Selector 통합
- Sidebar 메뉴에 부서 관리 추가

주요 기능:
- 자기 참조 방지 (parent_id validation)
- 하위 부서 존재 시 삭제 방지
- Conditional tenant filtering 적용
- Active/Inactive 필터링
- HTMX 페이지네이션 (target, includeForm 파라미터 포함)

정책:
- 모든 리스트 화면은 1페이지만 있어도 페이지네이션 표시
2025-11-24 16:52:23 +09:00