- 취급점(수단) 열 추가 (바로빌 transOffice 필드)
- 상대계좌예금주명 직접 입력 가능하도록 input 필드로 변경
- 저장된 상대계좌예금주명 값 로드 시 병합
- 엑셀 내보내기에 취급점 열 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 상대방 레이블을 상대계좌예금주명으로 변경
- AccountName 필드 우선 확인 (Cast fallback)
- EaccountController CERTKEY 테스트/운영 분리 적용
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- BankTransaction 모델: 입출금 내역 저장 (계정과목 포함)
- 바로빌 데이터와 DB 저장 데이터 매칭하여 계정과목 유지
- 계정과목 드롭다운 선택 및 저장 기능
- 엑셀(CSV) 다운로드 기능
- 저장된 행은 녹색 배경으로 표시
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 바로빌 비밀번호가 없으면 명확한 에러 메시지 반환
- validateMemberForUrlApi 헬퍼 메서드 추가로 중복 코드 제거
- 적용 메서드: 계좌등록, 계좌관리, 카드등록, 카드관리, 세금계산서 등
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 전자세금계산서/계좌조회 페이지와 동일한 형식의 테넌트 카드
- 보라색 그라디언트 스타일로 설정 페이지 구분
- 바로빌 회원사 정보 표시 (사업자번호, 대표자, 담당자, ID)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- EaccountController.php: 바로빌 BANKACCOUNT.asmx SOAP API 연동
- GetBankAccountEx: 등록된 계좌 목록 조회
- GetPeriodBankAccountTransLog: 계좌 입출금내역 조회
- index.blade.php: React 기반 UI (전자세금계산서와 동일 구조)
- 테넌트 정보 카드
- 통계 카드 (입금/출금/계좌수/거래건수)
- 계좌 선택 버튼
- 기간 조회 필터 (이번달/지난달 버튼)
- 입출금 내역 테이블 (스크롤)
- 라우트 추가: /barobill/eaccount
- 메뉴 시더 업데이트
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- InvoicerParty에 ContactID 필드 추가 (기본값: cbx0913)
- TaxRegID, BizType, BizClass, TEL, HP 등 누락 필드 추가
- InvoiceeParty에도 동일한 필드 추가
- TaxInvoiceTradeLineItem에 PurchaseExpiry, Information, Description 추가
- 레거시 barobill_config.php와 동일한 구조로 맞춤
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 현재 테넌트 ID, 회사명, 파트너사 배지 표시
- 바로빌 회원사 정보(사업자번호, 대표자, 담당자, 바로빌ID) 표시
- 공급자 정보를 현재 테넌트의 바로빌 회원사 정보로 동적 변경
- DB에서 활성화된 바로빌 설정 조회하도록 변경
- SOAP 연결 상태 표시 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 세션 키 수정: tenant_id → selected_tenant_id
- 설정이 없거나 담당자 정보가 비어있을 때 바로빌 회원사 정보를 기본값으로 사용
- 담당자명, 연락처, 이메일 자동 매핑
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 현재 선택된 테넌트 ID, 회사명, 사업자번호, 대표자, 연락처 표시
- 테넌트 1(본사)인 경우 '파트너사' 배지 표시
- 바로빌 회원사 연동 시 담당자 정보(이름, 연락처, 이메일) 표시
- 미연동 시 회원사 등록 안내 링크 제공
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- EtaxController 생성 (세금계산서 발행/조회/삭제/국세청 전송)
- React 기반 Blade 뷰 페이지 생성
- 라우트 설정 (/barobill/etax)
- 메뉴 시더 업데이트
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- CooconService에 OA08 기업기본정보 API 추가
- NtsBusinessService 신규 생성 (국세청 사업자등록 상태조회)
- CreditInquiry 모델에 회사정보 및 국세청 상태 필드 추가
- 마이그레이션: 기업정보 및 국세청 상태 컬럼 추가
- UI: 리스트에 업체정보/국세청 상태 컬럼 표시
- 원본 데이터 모달에 회사정보 헤더 추가
- 리포트 모달에 회사정보 및 신용요약 표시
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- credit_inquiries 테이블 마이그레이션 추가
- CreditInquiry 모델 생성 (API 응답 저장, 이슈 카운트 등)
- 조회 이력 리스트 화면으로 변경 (페이지네이션, 필터)
- 원본 데이터 모달 조회 기능 추가
- 신용평가 리포트 모달 (TODO: 가공 형식 구현 예정)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- CooconConfig 모델 및 마이그레이션 추가
- CooconService 클래스 구현 (OA12~OA17 API)
- CreditController 확장 (설정 관리, 조회 기능)
- 설정 관리 화면 추가 (CRUD, 활성화 토글)
- 사업자번호 조회 화면 업데이트 (API 연동)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 전체 테넌트 보기 토글 추가 (바로빌본사용)
- 테이블에 테넌트 컬럼 표시 (전체 모드에서)
- 회원사 등록 시 테넌트 선택 기능 추가
- 통계 API에도 전체 테넌트 모드 적용
- 컨트롤러에서 tenant_id 직접 지정 지원
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 4가지 서비스 옵션 체크박스 추가 (전자세금계산서, 계좌조회, 카드사용내역, 홈텍스매입/매출)
- BarobillSetting 모델 및 BarobillSettingController 생성
- 설정 API 라우트 추가 (/api/admin/barobill/settings)
- 담당자 정보 입력 필드 추가 (이름, 연락처, 이메일)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MngMenuSeeder에 바로빌 그룹메뉴와 회원사관리 하위메뉴 추가
- BarobillController 생성 (회원사관리 페이지)
- /barobill/members 라우트 추가
- 회원사관리 기본 뷰 파일 생성 (샘플 테이블 포함)
메뉴 적용: php artisan db:seed --class=MngMenuSeeder
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1. /menus 페이지 hx-boost 네비게이션 시 SortableJS 미실행 수정
- htmx:afterSettle 이벤트로 페이지별 스크립트 초기화
- menu-sortable.js로 SortableJS 로직 분리
- 중복 코드 제거
2. 세션 만료 시 자동 갱신 로직 추가
- /auth/refresh-session 엔드포인트 추가
- Remember Token으로 자동 재인증 (자동 로그인 사용자)
- 재인증 실패 시 로그인 페이지 리다이렉트
- EnsureHQMember: HTMX/AJAX 요청 시 JSON 응답 반환
- EnsureSuperAdmin: HX-Request 헤더 체크 추가
- bootstrap/app.php: 전역 Exception Handler에서 HTMX 요청 처리
- RoleService: SpatieRole → App\Models\Role로 변경하여 테넌트별 역할 분리
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 인증 모달에 회사(테넌트) 선택 드롭다운 추가
- 헤더의 $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>
- 댓글 라우트 추가 (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>
## 슈퍼관리자 삭제 게시물 관리
- 삭제된 게시물 목록에 표시 (빨간색 배경, 취소선)
- 게시물 복원 기능 추가 (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>
- 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>
- BoardController: *Board() → *AnyBoard() 메서드로 변경하여 메뉴 연동 활성화
- MenuService: restoreMenuForBoard() 메서드 추가
- soft-deleted 메뉴 있으면 복원
- 활성 메뉴가 이미 있으면 스킵 (중복 방지)
- 둘 다 없으면 새로 생성
- BoardService: restoreAnyBoard()에서 board name 전달하도록 수정
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
## 수정 내용
### HTMX 응답 형식 수정
- DepartmentController: view 직접 반환 (JSON 래핑 제거)
- MenuController: ->render() 제거하여 SVG 이스케이프 문제 해결
### 사이드바 개선
- hx-boost 적용하여 SPA 스타일 네비게이션 구현
- 메뉴 클릭 시 활성화 상태 즉시 반영
- 스크롤 위치 저장/복원 기능 추가
### 불필요한 코드 제거
- departments/index.blade.php: JSON.parse 코드 제거
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
## 주요 변경사항
### 게시판-메뉴 자동 연동
- 게시판 생성 시 메뉴 자동 생성 (BoardService.createBoardFromTemplate)
- 게시판 삭제 시 연결 메뉴 함께 삭제 (Soft Delete 연동)
- 게시판 복원 시 메뉴 재생성
- 게시판 영구삭제 시 메뉴 영구삭제
### 게시판 메뉴 보호
- MenuService: 게시판 연동 메뉴 수동 수정/삭제 방지
- isBoardMenuUrl(), isBoardMenu(), validateNotBoardUrl() 헬퍼 추가
- 8개 CRUD 메서드에 검증 로직 적용
### URL 패턴 변경
- 시스템 게시판: /system-boards/{code} → /customer-center/{code}
- 테넌트 게시판: /boards/{code} (변경 없음)
### UI 개선
- 메뉴 목록에서 게시판 메뉴 "📋 게시판" 뱃지 표시
- 게시판 메뉴는 수정/삭제 버튼 숨김 (활성/숨김 토글만 허용)
- 삭제된 게시판 행 클릭 시 404 오류 수정
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- /customer-center 라우트 신규 생성
- 활성화된 시스템 게시판만 표시
- 테이블 컬럼: ID, 유형, 코드, 게시판명, 게시글 수, 생성일
- 관리 기능(구분, 필드, 상태, 액션) 제외한 읽기 전용 뷰
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>