36 lines
1.2 KiB
Dart
36 lines
1.2 KiB
Dart
import 'package:fotodocumentation/utils/date_time_utils.dart';
|
|
|
|
class PictureDto {
|
|
final int id;
|
|
final String? comment;
|
|
final String? category;
|
|
int evaluation;
|
|
final DateTime pictureDate;
|
|
final String? username;
|
|
final String imageUrl;
|
|
final String normalSizeUrl;
|
|
final String thumbnailSizeUrl;
|
|
|
|
PictureDto(
|
|
{required this.id, required this.comment, required this.category, required this.evaluation, required this.pictureDate, required this.username, required this.imageUrl, required this.normalSizeUrl, required this.thumbnailSizeUrl});
|
|
|
|
/// Create from JSON response
|
|
factory PictureDto.fromJson(Map<String, dynamic> json) {
|
|
return PictureDto(
|
|
id: json['id'] as int,
|
|
comment: json['comment'] as String?,
|
|
category: json['category'] as String?,
|
|
evaluation: json["evaluation"] as int,
|
|
pictureDate: DateTimeUtils.toDateTime(json['pictureDate']) ?? DateTime.now(),
|
|
username: json['username'] as String?,
|
|
imageUrl: json['imageUrl'] as String,
|
|
normalSizeUrl: json['normalSizeUrl'] as String,
|
|
thumbnailSizeUrl: json['thumbnailSizeUrl'] as String,
|
|
);
|
|
}
|
|
|
|
@override
|
|
String toString() {
|
|
return 'PictureDto{id: $id}';
|
|
}
|
|
} |