## 주요 변경사항 ### 🏗️ Architecture - Repository 패턴 전면 도입 (인터페이스/구현체 분리) - Domain Layer에 Repository 인터페이스 정의 - Data Layer에 Repository 구현체 배치 - UseCase 의존성을 Service에서 Repository로 전환 ### 📦 Dependency Injection - GetIt 기반 DI Container 재구성 (lib/injection_container.dart) - Repository 인터페이스와 구현체 등록 - Service와 Repository 공존 (마이그레이션 기간) ### 🔄 Migration Status 완료: - License 모듈 (6개 UseCase) - Warehouse Location 모듈 (5개 UseCase) 진행중: - Auth 모듈 (2/5 UseCase) - Company 모듈 (1/6 UseCase) 대기: - User 모듈 (7개 UseCase) - Equipment 모듈 (4개 UseCase) ### 🎯 Controller 통합 - 중복 Controller 제거 (with_usecase 버전) - 단일 Controller로 통합 - UseCase 패턴 직접 적용 ### 🧹 코드 정리 - 임시 파일 제거 (test_*.md, task.md) - Node.js 아티팩트 제거 (package.json) - 불필요한 테스트 파일 정리 ### ✅ 테스트 개선 - Real API 중심 테스트 구조 - Mock 제거, 실제 API 엔드포인트 사용 - 통합 테스트 프레임워크 강화 ## 기술적 영향 - 의존성 역전 원칙 적용 - 레이어 간 결합도 감소 - 테스트 용이성 향상 - 확장성 및 유지보수성 개선 ## 다음 단계 1. User/Equipment 모듈 Repository 마이그레이션 2. Service Layer 점진적 제거 3. 캐싱 전략 구현 4. 성능 최적화
166 lines
5.7 KiB
Dart
166 lines
5.7 KiB
Dart
// GENERATED CODE - DO NOT MODIFY BY HAND
|
|
|
|
part of 'user_dto.dart';
|
|
|
|
// **************************************************************************
|
|
// JsonSerializableGenerator
|
|
// **************************************************************************
|
|
|
|
_$UserDtoImpl _$$UserDtoImplFromJson(Map<String, dynamic> json) =>
|
|
_$UserDtoImpl(
|
|
id: (json['id'] as num).toInt(),
|
|
username: json['username'] as String,
|
|
name: json['name'] as String,
|
|
email: json['email'] as String?,
|
|
phone: json['phone'] as String?,
|
|
role: json['role'] as String,
|
|
companyId: (json['company_id'] as num?)?.toInt(),
|
|
companyName: json['company_name'] as String?,
|
|
branchId: (json['branch_id'] as num?)?.toInt(),
|
|
branchName: json['branch_name'] as String?,
|
|
isActive: json['is_active'] as bool,
|
|
lastLoginAt: json['last_login_at'] == null
|
|
? null
|
|
: DateTime.parse(json['last_login_at'] as String),
|
|
createdAt: DateTime.parse(json['created_at'] as String),
|
|
updatedAt: DateTime.parse(json['updated_at'] as String),
|
|
);
|
|
|
|
Map<String, dynamic> _$$UserDtoImplToJson(_$UserDtoImpl instance) =>
|
|
<String, dynamic>{
|
|
'id': instance.id,
|
|
'username': instance.username,
|
|
'name': instance.name,
|
|
'email': instance.email,
|
|
'phone': instance.phone,
|
|
'role': instance.role,
|
|
'company_id': instance.companyId,
|
|
'company_name': instance.companyName,
|
|
'branch_id': instance.branchId,
|
|
'branch_name': instance.branchName,
|
|
'is_active': instance.isActive,
|
|
'last_login_at': instance.lastLoginAt?.toIso8601String(),
|
|
'created_at': instance.createdAt.toIso8601String(),
|
|
'updated_at': instance.updatedAt.toIso8601String(),
|
|
};
|
|
|
|
_$CreateUserRequestImpl _$$CreateUserRequestImplFromJson(
|
|
Map<String, dynamic> json) =>
|
|
_$CreateUserRequestImpl(
|
|
username: json['username'] as String,
|
|
email: json['email'] as String?,
|
|
password: json['password'] as String,
|
|
name: json['name'] as String,
|
|
phone: json['phone'] as String?,
|
|
role: json['role'] as String,
|
|
companyId: (json['company_id'] as num?)?.toInt(),
|
|
branchId: (json['branch_id'] as num?)?.toInt(),
|
|
);
|
|
|
|
Map<String, dynamic> _$$CreateUserRequestImplToJson(
|
|
_$CreateUserRequestImpl instance) =>
|
|
<String, dynamic>{
|
|
'username': instance.username,
|
|
'email': instance.email,
|
|
'password': instance.password,
|
|
'name': instance.name,
|
|
'phone': instance.phone,
|
|
'role': instance.role,
|
|
'company_id': instance.companyId,
|
|
'branch_id': instance.branchId,
|
|
};
|
|
|
|
_$UpdateUserRequestImpl _$$UpdateUserRequestImplFromJson(
|
|
Map<String, dynamic> json) =>
|
|
_$UpdateUserRequestImpl(
|
|
name: json['name'] as String?,
|
|
email: json['email'] as String?,
|
|
password: json['password'] as String?,
|
|
phone: json['phone'] as String?,
|
|
role: json['role'] as String?,
|
|
companyId: (json['company_id'] as num?)?.toInt(),
|
|
branchId: (json['branch_id'] as num?)?.toInt(),
|
|
isActive: json['is_active'] as bool?,
|
|
);
|
|
|
|
Map<String, dynamic> _$$UpdateUserRequestImplToJson(
|
|
_$UpdateUserRequestImpl instance) =>
|
|
<String, dynamic>{
|
|
'name': instance.name,
|
|
'email': instance.email,
|
|
'password': instance.password,
|
|
'phone': instance.phone,
|
|
'role': instance.role,
|
|
'company_id': instance.companyId,
|
|
'branch_id': instance.branchId,
|
|
'is_active': instance.isActive,
|
|
};
|
|
|
|
_$ChangeStatusRequestImpl _$$ChangeStatusRequestImplFromJson(
|
|
Map<String, dynamic> json) =>
|
|
_$ChangeStatusRequestImpl(
|
|
isActive: json['is_active'] as bool,
|
|
);
|
|
|
|
Map<String, dynamic> _$$ChangeStatusRequestImplToJson(
|
|
_$ChangeStatusRequestImpl instance) =>
|
|
<String, dynamic>{
|
|
'is_active': instance.isActive,
|
|
};
|
|
|
|
_$ChangePasswordRequestImpl _$$ChangePasswordRequestImplFromJson(
|
|
Map<String, dynamic> json) =>
|
|
_$ChangePasswordRequestImpl(
|
|
currentPassword: json['current_password'] as String,
|
|
newPassword: json['new_password'] as String,
|
|
);
|
|
|
|
Map<String, dynamic> _$$ChangePasswordRequestImplToJson(
|
|
_$ChangePasswordRequestImpl instance) =>
|
|
<String, dynamic>{
|
|
'current_password': instance.currentPassword,
|
|
'new_password': instance.newPassword,
|
|
};
|
|
|
|
_$UserListDtoImpl _$$UserListDtoImplFromJson(Map<String, dynamic> json) =>
|
|
_$UserListDtoImpl(
|
|
users: (json['users'] as List<dynamic>)
|
|
.map((e) => UserDto.fromJson(e as Map<String, dynamic>))
|
|
.toList(),
|
|
total: (json['total'] as num).toInt(),
|
|
page: (json['page'] as num).toInt(),
|
|
perPage: (json['per_page'] as num).toInt(),
|
|
totalPages: (json['total_pages'] as num).toInt(),
|
|
);
|
|
|
|
Map<String, dynamic> _$$UserListDtoImplToJson(_$UserListDtoImpl instance) =>
|
|
<String, dynamic>{
|
|
'users': instance.users,
|
|
'total': instance.total,
|
|
'page': instance.page,
|
|
'per_page': instance.perPage,
|
|
'total_pages': instance.totalPages,
|
|
};
|
|
|
|
_$UserDetailDtoImpl _$$UserDetailDtoImplFromJson(Map<String, dynamic> json) =>
|
|
_$UserDetailDtoImpl(
|
|
user: UserDto.fromJson(json['user'] as Map<String, dynamic>),
|
|
);
|
|
|
|
Map<String, dynamic> _$$UserDetailDtoImplToJson(_$UserDetailDtoImpl instance) =>
|
|
<String, dynamic>{
|
|
'user': instance.user,
|
|
};
|
|
|
|
_$UserResponseImpl _$$UserResponseImplFromJson(Map<String, dynamic> json) =>
|
|
_$UserResponseImpl(
|
|
user: UserDto.fromJson(json['user'] as Map<String, dynamic>),
|
|
message: json['message'] as String?,
|
|
);
|
|
|
|
Map<String, dynamic> _$$UserResponseImplToJson(_$UserResponseImpl instance) =>
|
|
<String, dynamic>{
|
|
'user': instance.user,
|
|
'message': instance.message,
|
|
};
|