MIF_E31222656/lib/data/models/field_model.dart

54 lines
1.3 KiB
Dart

import 'package:tugas_akhir_supabase/domain/entities/field.dart';
class FieldModel extends Field {
const FieldModel({
required String id,
required String name,
required double area,
required String userId,
String? description,
String? location,
}) : super(
id: id,
name: name,
area: area,
userId: userId,
description: description,
location: location,
);
factory FieldModel.fromJson(Map<String, dynamic> json) {
return FieldModel(
id: json['id'] as String,
name: json['name'] as String,
area: (json['area'] is double)
? json['area']
: double.tryParse(json['area'].toString()) ?? 0.0,
userId: json['user_id'] as String,
description: json['description'] as String?,
location: json['location'] as String?,
);
}
Map<String, dynamic> toJson() {
return {
'id': id,
'name': name,
'area': area,
'user_id': userId,
'description': description,
'location': location,
};
}
factory FieldModel.fromEntity(Field entity) {
return FieldModel(
id: entity.id,
name: entity.name,
area: entity.area,
userId: entity.userId,
description: entity.description,
location: entity.location,
);
}
}