주요 변경사항: - 장비 출고 API 연동 구현 (equipment_out_form_controller.dart) - 모든 리스트 화면에서 CRUD 후 자동 갱신 확인 - CLAUDE.md 프로젝트 문서 실제 정보로 업데이트 - 실제 테스트 계정 정보 반영 (admin@superport.kr) - API 소스코드 경로 추가 (/Users/maximilian.j.sul/Documents/flutter/superport_api) - 테스트 도구 추가 - test_api_integration.sh: API 통합 테스트 스크립트 - test_crud_operations.md: CRUD 테스트 체크리스트 기술적 개선: - Mock 서비스 의존도 제거 - Real API 전용 모드로 전환 - GetIt을 통한 서비스 주입 활용
5.9 KiB
5.9 KiB
Superport ERP System
💡 Note: Global Claude Code rules are in
~/.claude/CLAUDE.md. This document contains project-specific context.
🎯 Project Overview
Superport는 기업용 장비 관리 및 유지보수를 위한 클라우드 기반 ERP 시스템입니다.
Business Purpose
- 장비 입출고 및 재고 관리 자동화
- 유지보수 라이선스 만료일 추적
- 고객사별 장비 배치 현황 관리
- 실시간 대시보드를 통한 경영 인사이트 제공
Target Users
- 관리자 (Admin): 전체 시스템 관리, 사용자 권한 설정
- 매니저 (Manager): 장비 입출고 승인, 라이선스 관리
- 일반 사용자 (Member): 장비 조회, 기본 작업 수행
🏗️ Technical Architecture
Tech Stack
Frontend:
platform: Flutter Web (Mobile ready)
state_management: Provider + ChangeNotifier
ui_framework: ShadCN Flutter Port
api_client: Dio + Retrofit
code_generation: Freezed + JsonSerializable
Backend:
language: Rust
framework: Actix-Web
database: PostgreSQL
auth: JWT (24시간 만료)
api_url: https://api-dev.beavercompany.co.kr
source_path: /Users/maximilian.j.sul/Documents/flutter/superport_api
Infrastructure:
hosting: AWS (예정)
storage: S3 (예정)
ci_cd: GitHub Actions (예정)
Project Structure
/Users/maximilian.j.sul/Documents/flutter/
├── superport/ # Flutter Frontend
│ ├── lib/
│ │ ├── core/ # 핵심 설정 및 유틸리티
│ │ ├── data/ # API 통신 레이어
│ │ │ ├── models/ # Freezed DTO
│ │ │ └── datasources/ # API 클라이언트
│ │ ├── screens/ # UI 화면
│ │ │ └── [feature]/
│ │ │ ├── controllers/ # 상태 관리
│ │ │ └── widgets/ # UI 컴포넌트
│ │ └── services/ # 비즈니스 로직
│
└── superport_api/ # Rust Backend
├── src/
│ ├── handlers/ # API 엔드포인트
│ ├── services/ # 비즈니스 로직
│ └── entities/ # DB 모델
└── migrations/ # DB 마이그레이션
✅ Implementation Status
Completed Features (100%)
- ✅ 인증 시스템: JWT 기반 로그인/로그아웃
- ✅ 회사 관리: CRUD, 지점 관리, 연락처 정보
- ✅ 사용자 관리: 계정 생성, 권한 설정 (Admin/Manager/Member)
- ✅ 창고 위치 관리: 입고지 등록 및 관리
- ✅ 장비 입고: 시리얼 번호 추적, 수량 관리
- ✅ 라이선스 관리: 유지보수 기간, 만료일 알림
In Progress (70%)
- 🔄 장비 출고: API 연동 완료, UI 개선 필요
- 🔄 대시보드: 기본 통계 표시, 차트 구현 중
- 🔄 검색 및 필터: 기본 검색 구현, 고급 필터 개발 중
Not Started (0%)
- ⏳ 장비 대여: 대여/반납 프로세스
- ⏳ 장비 폐기: 폐기 사유 및 이력 관리
- ⏳ 보고서 생성: Excel/PDF 내보내기
- ⏳ 모바일 앱: 반응형 레이아웃 최적화
- ⏳ 알림 시스템: 이메일/푸시 알림
🐛 Known Issues
Critical
시리얼_번호_중복:
location: "장비 입고 프로세스"
issue: "백엔드에서 중복 체크 미구현"
workaround: "프론트엔드 임시 검증"
priority: HIGH
권한_체크_누락:
location: ["warehouse_location", "overview"]
issue: "일부 화면에서 역할 기반 접근 제어 미적용"
impact: "모든 사용자가 접근 가능"
priority: HIGH
Minor
상태_갱신_지연:
location: "CRUD 작업 후 리스트 화면"
issue: "일부 화면에서 자동 새로고침 미작동"
workaround: "수동 새로고침"
priority: MEDIUM
날짜_포맷:
location: "라이선스 만료일"
issue: "한국 시간대 표시 불일치"
priority: LOW
📋 TODO List
Immediate (This Week)
- 장비 출고 프로세스 완성
- 대시보드 차트 구현 (Chart.js 통합)
- 시리얼 번호 중복 체크 백엔드 구현
- 권한 체크 누락 화면 수정
Short Term (This Month)
- 장비 대여/반납 기능 구현
- 고급 검색 필터 구현
- Excel 내보내기 기능
- 성능 최적화 (가상 스크롤링)
Long Term
- 모바일 앱 최적화
- 푸시 알림 시스템
- 다국어 지원 (영어)
- 대시보드 커스터마이징
🔑 Key Decisions
2025-01-07
- Decision: Mock 서비스 제거, Real API 전용으로 전환
- Reason: 개발 환경 단순화 및 실제 환경 테스트 강화
2025-01-06
- Decision: Provider 패턴 유지 (Riverpod 마이그레이션 보류)
- Reason: 현재 구조가 안정적, 팀 학습 곡선 고려
2024-12-20
- Decision: Flutter Web 우선 개발
- Reason: 빠른 배포와 크로스 플랫폼 지원
🚀 Quick Commands
Development
# Start development (Real API)
flutter run -d chrome
# Run tests
flutter test
# Generate code (Freezed, JsonSerializable)
flutter pub run build_runner build --delete-conflicting-outputs
# API integration test
./test_api_integration.sh
# Start backend API (별도 터미널)
cd /Users/maximilian.j.sul/Documents/flutter/superport_api
cargo run
# View API logs
cd /Users/maximilian.j.sul/Documents/flutter/superport_api
tail -f logs/api.log
API Configuration
Base URL: https://api-dev.beavercompany.co.kr
Test Account: admin@superport.kr / admin123!
API Source Code: /Users/maximilian.j.sul/Documents/flutter/superport_api
📞 Team Contacts
- Backend API Issues: Rust 백엔드 팀
- UI/UX Questions: 디자인 팀
- Business Logic: 프로덕트 매니저
Project Stage: Development (70% Complete)
Next Milestone: Beta Release (2025-02-01)
Last Updated: 2025-01-08
Version: 3.0