- DB 25개 테이블 전체 문서화 (회원/지자체/코드/단가/발주/판매/불출)
- 컨트롤러 28개, 모델 25개, 뷰 88개 구조 정리
- 라우트 구조 (공개/사이트/관리자) 섹션별 정리
- Phase 1~5 완료 반영, Phase 6 대기 작업 목록
- SQL 스크립트 21개 실행 순서 및 용도
- E2E 테스트 84개 파일별 정리
- 보안 (RBAC/PII/로그인lock/CSRF/멀티테넌시) 정리
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 발주/입고/불출/판매 페이지에 등록/취소 버튼 추가
- 기본정보 페이지에 admin 관리 링크 추가
- 불출 뷰 컬럼명 수정 (bi2_type→bi2_issue_type, bi2_destination→bi2_dest_name)
- 발주 LOT번호 컬럼명 수정 (bo_lot_number→bo_lot_no)
- 중구청(lg_idx=1) 시드 데이터 삽입 (tester_local 계정 연동)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Bag 컨트롤러 신규 (기본정보/발주입고/불출/재고/판매/판매현황/수불/통계/창/도움말)
- 사이트 공통 레이아웃 bag/layout/main.php 추출
- /bag/* 라우트 10개 등록 (Routes.php)
- bag-site.spec.js E2E 테스트 11개 추가
- Playwright timeout 30s→60s, waitForURL 15s→30s
- P4 지자체관리자 접근 테스트 3개로 분리
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- SalesReport 컨트롤러 (판매대장, 일계표, 기간별판매, 수불현황)
- 판매대장: 일자별/기간별 모드 전환, 판매소별 품목 집계
- 일계표: 당일 판매 + 당월 누계 병렬 표시
- 기간별 판매현황: 품목별 판매/반품/합계 + 총합계
- 봉투 수불현황: 현재재고/입고/판매/불출 4섹션 그리드 레이아웃
- E2E 테스트 6개 전체 통과
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- P2-19: LocalGovernment edit/update/delete 추가, 목록에 수정/비활성 버튼
- P2-20: PasswordChange 컨트롤러 + View (현재 비밀번호 검증 후 변경)
- P2-21: 로그인 5회 연속 실패 시 30분 lock
- member 테이블에 mb_login_fail_count, mb_locked_until 컬럼 추가
- Auth::login에 lock 체크/실패 카운트 증가/성공 시 리셋 로직
- E2E 테스트 4개 전체 통과
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 4개 테이블 생성 (sales_agency, manager, company, free_recipient)
- 4개 Model + 4개 Controller + 12개 View
- 담당자: 소속(S)/직위(T) 코드 연동
- 업체: 협회/제작업체/회수업체 유형 분류
- 무료대상자: 무상지급구분(H)/동코드(D) 연동
- 모두 지자체별 멀티테넌시 적용
- 24개 라우트 추가
- E2E 테스트 9개 전체 통과
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- jobs.md: P2-01~06 상태를 완료로 변경, 작업 로그 추가
- admin.spec.js: strict mode 수정 (.first() 추가)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- packaging_unit, packaging_unit_history 테이블 생성
- PackagingUnitModel, PackagingUnitHistoryModel
- PackagingUnit 컨트롤러 (목록/등록/수정/삭제/이력)
- 박스당팩수 x 팩당낱장수 = 총낱장수 자동 계산
- 변경 시 자동 이력 기록
- E2E 테스트 3개 전체 통과
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- bag_price, bag_price_history 테이블 생성
- BagPriceModel, BagPriceHistoryModel
- BagPrice 컨트롤러 (목록/등록/수정/삭제/이력)
- 단가 변경 시 자동 이력 기록 (트랜잭션)
- 기간 필터 조회 (적용시작일/종료일)
- 봉투코드(O) 드롭다운 연동
- E2E 테스트 5개 전체 통과
- 스크린샷 2개 추가
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- CodeKindModel + CodeKind 컨트롤러 (목록/등록/수정/삭제)
- CodeDetailModel + CodeDetail 컨트롤러 (종류별 세부코드 CRUD)
- View: code_kind/(index,create,edit), code_detail/(index,create,edit)
- 라우트: /admin/code-kinds/*, /admin/code-details/*
- E2E 테스트 7개 전체 통과
- 스크린샷 2개 추가
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- docs/SCREENSHOTS.md: 전체 22개 화면 스크린샷 문서
- README.md: 스크린샷 문서 + Notion 진행상황 링크 추가
- Notion: 진행상황 페이지에 E2E 테스트, 테스터 계정, 전체 스크린샷,
개발 현황 요약 추가
- e2e/helpers/screenshots.js: 자동 스크린샷 캡처 스크립트
- .gitignore: docs/ 허용 (docs/local/ 만 제외)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Playwright + Chromium 브라우저 테스트 환경 세팅
- 테스터 계정 4개 생성 (admin/local/shop/user, pw: test1234!)
- seed SQL + Node.js 시더 스크립트 포함
- E2E 테스트 23개 작성 (전체 통과):
- auth: 로그인/로그아웃/실패/회원가입 (9개)
- admin: 지자체관리자/Super Admin 패널 접근 (10개)
- public: 홈/로그인/회원가입/404 (4개)
- CLAUDE.md: 테스트 섹션을 Playwright 기반으로 업데이트
- jobs.md: 테스트 작업 완료 기록
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- jobs.md: Phase 2~6 + 공통기술과제 총 72개 Backlog 항목,
작업 시작/완료/중단 프로토콜, 세션간 작업 연속성 보장
- CLAUDE.md: 작업 관리(jobs.md) 섹션 추가
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- README.md: 기술스택, 프로젝트구조, 역할체계, DB테이블, 기본코드체계,
개발현황(63개 웹 + 15개 앱 항목별 완료/미구현 분석),
향후 로드맵(Phase 2~6) 추가
- CLAUDE.md: Claude Code용 프로젝트 가이드 (컨벤션, 구조, 보안)
- .gitignore: .claude/ 디렉토리 제외 추가
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>