- claudedocs 폴더 구조 재정리: archive/sessions, guides/migration·mobile·universal-list, refactoring 분류 - 오래된 세션 컨텍스트/체크리스트 문서 정리 (아카이브 이동 또는 삭제) - AuthContext → authStore(Zustand) 전환 시작, RootProvider 간소화 - GenericCRUDDialog 공통 다이얼로그 컴포넌트 추가 - PermissionDialog 삭제 → GenericCRUDDialog로 대체 - RankDialog/TitleDialog GenericCRUDDialog 기반으로 리팩토링 - toast-utils.ts 삭제 (미사용) - fileDownload.ts 개선, excel-download.ts 정리 - menuStore/themeStore Zustand 셀렉터 최적화 - useColumnSettings/useTableColumnStore 기능 보강 - 세금계산서/견적/작업자화면/결재 등 소규모 개선 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
4.2 KiB
4.2 KiB
주일 거래처 관리 세션 컨텍스트
Last Updated: 2025-12-30
세션 요약 (2025-12-30)
완료된 작업
- 거래처 리스트 필터 위치 수정 (테이블 위로 이동)
- 거래처 폼 컴포넌트 생성 (PartnerForm.tsx)
- 등록 페이지 생성 (/new/page.tsx)
- 상세 페이지 생성 (/[id]/page.tsx)
- 수정 페이지 생성 (/[id]/edit/page.tsx)
- types.ts 확장 (전체 필드 추가)
- actions.ts CRUD 함수 추가
다음 세션 TODO
- 회사 정보 + 신용/거래 정보 섹션 합치기 (스크린샷 기준으로 하나의 섹션)
- 실제 API 연동
참고 사항
- 스크린샷에서 "회사 정보"와 "신용/거래 정보"가 하나의 Card 섹션으로 되어 있음
- 현재 코드는 별도 섹션으로 분리됨 → 합쳐야 함
완료된 작업 (전체)
1. 프로젝트 구조 설정
claudedocs/juil/문서 폴더 생성[REF] juil-project-structure.md프로젝트 구조 가이드 작성_index.md문서 맵에 juil 섹션 추가
2. 거래처 관리 리스트 페이지
- 페이지:
src/app/[locale]/(protected)/juil/project/bidding/partners/page.tsx - 컴포넌트:
src/components/business/juil/partners/PartnerListClient.tsx - 타입:
src/components/business/juil/partners/types.ts - 액션:
src/components/business/juil/partners/actions.ts(목업 데이터) - 인덱스:
src/components/business/juil/partners/index.ts - 레이아웃 수정: 필터를 테이블 위로 이동, 등록 버튼 상단 배치
3. 거래처 등록/상세/수정 페이지
- 폼 컴포넌트:
src/components/business/juil/partners/PartnerForm.tsx - 등록 페이지:
src/app/[locale]/(protected)/juil/project/bidding/partners/new/page.tsx - 상세 페이지:
src/app/[locale]/(protected)/juil/project/bidding/partners/[id]/page.tsx - 수정 페이지:
src/app/[locale]/(protected)/juil/project/bidding/partners/[id]/edit/page.tsx
4. 구현된 기능
리스트 페이지
- 통계 카드 (전체 거래처 / 미등록)
- 검색 (거래처명, 번호, 대표자, 담당자)
- 탭 필터 (전체 / 신규)
- 테이블 위 필터:
총 N건 | 전체 ▾ | 최신순 ▾ - 테이블 컬럼: 체크박스, 번호, 거래처번호, 구분, 거래처명, 대표자, 담당자, 전화번호, 매출 결제일, 악성채권, 작업
- 행 선택 시 수정/삭제 버튼 표시
- 일괄 삭제 다이얼로그
- 페이지네이션
- 모바일 카드 뷰
폼 페이지 (등록/상세/수정 공통)
- 기본 정보: 사업자등록번호, 거래처코드, 거래처명, 대표자명, 거래처유형, 업태, 업종
- 연락처 정보: 주소 (우편번호 찾기 DAUM), 전화번호, 모바일, 팩스, 이메일
- 담당자 정보: 담당자명, 담당자 전화, 시스템 관리자
- 회사 정보: 회사 로고 (BLOB 업로드), 매출 결제일, 신용등급, 거래등급, 세금계산서 이메일
- 추가 정보: 미수금, 연체 (토글), 악성채권 (토글)
- 메모: 추가/삭제 기능
- 필요 서류: 파일 업로드 (드래그 앤 드롭)
모드별 버튼 분기
- 등록: 취소 | 저장
- 수정: 삭제 | 수정
- 상세: 목록가기 | 수정
테스트 URL
| 페이지 | URL | 상태 |
|---|---|---|
| 거래처 관리 (리스트) | /ko/juil/project/bidding/partners |
✅ 완료 |
| 거래처 등록 | /ko/juil/project/bidding/partners/new |
✅ 완료 |
| 거래처 상세 | /ko/juil/project/bidding/partners/1 |
✅ 완료 |
| 거래처 수정 | /ko/juil/project/bidding/partners/1/edit |
✅ 완료 |
디렉토리 구조
src/
├── app/[locale]/(protected)/juil/
│ └── project/bidding/partners/
│ ├── page.tsx ✅
│ ├── new/page.tsx ✅
│ └── [id]/
│ ├── page.tsx ✅
│ └── edit/page.tsx ✅
│
└── components/business/juil/partners/
├── index.ts ✅
├── types.ts ✅
├── actions.ts ✅ (목업)
├── PartnerListClient.tsx ✅
└── PartnerForm.tsx ✅ (섹션 수정 필요)