- 전체 371개 파일 중 82개 미사용 파일 식별 - Phase 1: 33개 파일 삭제 예정 (100% 안전) - Phase 2: 30개 파일 삭제 검토 예정 - Phase 3: 19개 파일 수동 검토 예정 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
52 lines
1.6 KiB
Dart
52 lines
1.6 KiB
Dart
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
|
|
part 'model_dto.freezed.dart';
|
|
part 'model_dto.g.dart';
|
|
|
|
@freezed
|
|
class ModelDto with _$ModelDto {
|
|
const factory ModelDto({
|
|
required int id,
|
|
@JsonKey(name: 'vendors_id') required int vendorsId,
|
|
@JsonKey(name: 'vendor_name') String? vendorName, // JOIN 필드
|
|
required String name,
|
|
@JsonKey(name: 'is_deleted') required bool isDeleted,
|
|
@JsonKey(name: 'registered_at') required DateTime registeredAt,
|
|
@JsonKey(name: 'updated_at') DateTime? updatedAt,
|
|
}) = _ModelDto;
|
|
|
|
factory ModelDto.fromJson(Map<String, dynamic> json) => _$ModelDtoFromJson(json);
|
|
}
|
|
|
|
@freezed
|
|
class ModelListDto with _$ModelListDto {
|
|
const factory ModelListDto({
|
|
@JsonKey(name: 'data') required List<ModelDto> items,
|
|
required int total,
|
|
required int page,
|
|
@JsonKey(name: 'page_size') required int perPage,
|
|
@JsonKey(name: 'total_pages') required int totalPages,
|
|
}) = _ModelListDto;
|
|
|
|
factory ModelListDto.fromJson(Map<String, dynamic> json) => _$ModelListDtoFromJson(json);
|
|
}
|
|
|
|
@freezed
|
|
class CreateModelRequest with _$CreateModelRequest {
|
|
const factory CreateModelRequest({
|
|
@JsonKey(name: 'vendors_id') required int vendorsId,
|
|
required String name,
|
|
}) = _CreateModelRequest;
|
|
|
|
factory CreateModelRequest.fromJson(Map<String, dynamic> json) => _$CreateModelRequestFromJson(json);
|
|
}
|
|
|
|
@freezed
|
|
class UpdateModelRequest with _$UpdateModelRequest {
|
|
const factory UpdateModelRequest({
|
|
@JsonKey(name: 'vendors_id') int? vendorsId,
|
|
String? name,
|
|
}) = _UpdateModelRequest;
|
|
|
|
factory UpdateModelRequest.fromJson(Map<String, dynamic> json) => _$UpdateModelRequestFromJson(json);
|
|
} |