Files
superport/lib/data/models/user/user_dto.g.dart
JiWoong Sul 93bceb8a6c
Some checks failed
Flutter Test & Quality Check / Test on macos-latest (push) Has been cancelled
Flutter Test & Quality Check / Test on ubuntu-latest (push) Has been cancelled
Flutter Test & Quality Check / Build APK (push) Has been cancelled
feat: 사용자 관리 시스템 백엔드 API 호환성 대폭 개선
- 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>
2025-08-15 23:31:51 +09:00

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,
};