flutter_sudoku/lib/models/sudoku_game_dto.dart

26 lines
709 B
Dart
Raw Permalink Normal View History

2025-11-07 17:07:22 +09:00
// lib/models/sudoku_game_dto.dart
class SudokuGameDto {
2025-11-10 18:02:01 +09:00
final int puzzleId; // 👈 [추가] 서버에서 보낸 ID
2025-11-07 17:07:22 +09:00
final String question;
final String solution;
2025-11-10 18:02:01 +09:00
final int blockSize;
2025-11-07 17:07:22 +09:00
final int gridSize;
SudokuGameDto({
2025-11-10 18:02:01 +09:00
required this.puzzleId, // 👈 [추가]
2025-11-07 17:07:22 +09:00
required this.question,
required this.solution,
required this.blockSize,
2025-11-10 18:02:01 +09:00
}) : gridSize = blockSize * blockSize;
2025-11-07 17:07:22 +09:00
factory SudokuGameDto.fromJson(Map<String, dynamic> json) {
int bs = json['blockSize'] ?? 3;
return SudokuGameDto(
2025-11-10 18:02:01 +09:00
puzzleId: json['puzzleId'], // 👈 [추가] 서버의 puzzleId 매핑
2025-11-07 17:07:22 +09:00
question: json['question'],
solution: json['solution'],
blockSize: bs,
);
}
}