feat: API 인증 시스템 구현 및 로그인 화면 연동

- AuthService, AuthRemoteDataSource 구현
- JWT 토큰 관리 (SecureStorage 사용)
- 로그인 화면 API 연동 및 에러 처리
- freezed 패키지로 Auth 관련 DTO 모델 생성
- 의존성 주입 설정 업데이트
This commit is contained in:
JiWoong Sul
2025-07-24 15:14:53 +09:00
parent 2b31d3af5f
commit c573096d84
26 changed files with 2063 additions and 59 deletions

View File

@@ -175,22 +175,22 @@ class EquipmentController extends ChangeNotifier {
- POST /api/v1/auth/refresh
**작업 Task**:
- [ ] AuthService 클래스 생성
- [ ] JWT 토큰 저장/관리 로직 구현
- [x] AuthService 클래스 생성
- [x] JWT 토큰 저장/관리 로직 구현
- [x] SecureStorage 설정
- [ ] Access Token 저장
- [ ] Refresh Token 저장
- [ ] 로그인 폼 검증 추가
- [ ] 이메일 형식 검증
- [ ] 비밀번호 최소 길이 검증
- [ ] 로그인 실패 에러 처리
- [ ] 401: 잘못된 인증 정보
- [x] Access Token 저장
- [x] Refresh Token 저장
- [x] 로그인 폼 검증 추가
- [x] 이메일 형식 검증
- [x] 비밀번호 최소 길이 검증
- [x] 로그인 실패 에러 처리
- [x] 401: 잘못된 인증 정보
- [ ] 429: 너무 많은 시도
- [ ] 500: 서버 오류
- [x] 500: 서버 오류
- [ ] 자동 로그인 구현
- [ ] 토큰 유효성 검사
- [ ] 토큰 자동 갱신
- [ ] 로그아웃 기능 구현
- [x] 로그아웃 기능 구현
### 4.2 대시보드
@@ -692,13 +692,13 @@ class ErrorHandler {
**1주차: 네트워크 레이어**
- [x] Dio 설정 및 인터셉터 구현
- [x] API 클라이언트 기본 구조
- [ ] 에러 처리 프레임워크
- [x] 에러 처리 프레임워크
- [x] 환경 설정 관리
**2주차: 인증 시스템**
- [ ] AuthService 구현
- [ ] 토큰 관리 로직
- [ ] 로그인/로그아웃 화면 연동
**2주차: 인증 시스템** *(2025-07-24 진행)*
- [x] AuthService 구현
- [x] 토큰 관리 로직
- [x] 로그인/로그아웃 화면 연동
- [ ] 자동 토큰 갱신
**3주차: 기본 데이터 레이어**
@@ -890,4 +890,39 @@ class ErrorHandler {
---
_마지막 업데이트: 2025-07-24_ (네트워크 레이어 및 기본 인프라 구현 완료)
## 🔄 구현 진행 상황 (2025-07-24)
### 완료된 작업
1. **Auth 관련 DTO 모델 생성**
- LoginRequest, LoginResponse, TokenResponse, RefreshTokenRequest
- AuthUser, LogoutRequest
- Freezed 패키지 적용 및 코드 생성 완료
2. **AuthRemoteDataSource 구현**
- login, logout, refreshToken 메서드 구현
- 에러 처리 및 응답 변환 로직 완료
3. **AuthService 구현**
- 토큰 저장/관리 (SecureStorage 사용)
- 로그인 상태 관리 및 스트림
- 자동 토큰 갱신 준비
4. **로그인 화면 API 연동**
- LoginController 수정 (API 호출 로직 추가)
- 이메일 형식 검증 및 에러 메시지 표시
- 로딩 상태 관리
5. **의존성 주입 설정**
- AuthRemoteDataSource, AuthService DI 등록
- GetIt을 통한 의존성 관리
### 다음 작업
1. API 서버 실행 및 연동 테스트
2. 자동 로그인 구현
3. AuthInterceptor 개선 (AuthService 사용)
4. 로그아웃 기능 UI 추가
5. 대시보드 및 기타 화면 API 연동
---
_마지막 업데이트: 2025-07-24_ (인증 시스템 구현 완료)