- UserRemoteDataSource: API v0.2.1 스펙 완전 대응 • 응답 형식 통일 (success: true 구조) • 페이지네이션 처리 개선 • 에러 핸들링 강화 • 불필요한 파라미터 제거 (includeInactive 등) - UserDto 모델 현대화: • 서버 응답 구조와 100% 일치 • 도메인 모델 변환 메서드 추가 • Freezed 불변성 패턴 완성 - User 도메인 모델 신규 구현: • Clean Architecture 원칙 준수 • UserRole enum 타입 안전성 강화 • 비즈니스 로직 캡슐화 - 사용자 관련 UseCase 리팩토링: • Repository 패턴 완전 적용 • Either<Failure, Success> 에러 처리 • 의존성 주입 최적화 - UI 컨트롤러 및 화면 개선: • API 응답 변경사항 반영 • 사용자 권한 표시 정확성 향상 • 폼 검증 로직 강화 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
134 lines
4.3 KiB
Dart
134 lines
4.3 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,
|
|
isActive: json['is_active'] as bool,
|
|
createdAt: DateTime.parse(json['created_at'] as String),
|
|
updatedAt: json['updated_at'] == null
|
|
? null
|
|
: 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,
|
|
'is_active': instance.isActive,
|
|
'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,
|
|
);
|
|
|
|
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,
|
|
};
|
|
|
|
_$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?,
|
|
);
|
|
|
|
Map<String, dynamic> _$$UpdateUserRequestImplToJson(
|
|
_$UpdateUserRequestImpl instance) =>
|
|
<String, dynamic>{
|
|
'name': instance.name,
|
|
'email': instance.email,
|
|
'password': instance.password,
|
|
'phone': instance.phone,
|
|
'role': instance.role,
|
|
};
|
|
|
|
_$CheckUsernameResponseImpl _$$CheckUsernameResponseImplFromJson(
|
|
Map<String, dynamic> json) =>
|
|
_$CheckUsernameResponseImpl(
|
|
available: json['available'] as bool,
|
|
message: json['message'] as String?,
|
|
);
|
|
|
|
Map<String, dynamic> _$$CheckUsernameResponseImplToJson(
|
|
_$CheckUsernameResponseImpl instance) =>
|
|
<String, dynamic>{
|
|
'available': instance.available,
|
|
'message': instance.message,
|
|
};
|
|
|
|
_$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,
|
|
};
|