forked from eatvio/eatvio_app
26 lines
1.0 KiB
Dart
26 lines
1.0 KiB
Dart
import 'package:eatvio_app/features/diary/models/diary_day_model.dart';
|
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
|
|
part 'diary_day_entity.freezed.dart';
|
|
|
|
@freezed
|
|
abstract class DiaryDayEntity with _$DiaryDayEntity {
|
|
factory DiaryDayEntity({
|
|
@JsonKey(name: "id") required int id,
|
|
@JsonKey(name: "date") required String date,
|
|
@JsonKey(name: "wakeup") String? wakeup,
|
|
@JsonKey(name: "retire") String? retire,
|
|
@JsonKey(name: "closed") required int closed,
|
|
@JsonKey(name: "comment") required String comment,
|
|
@JsonKey(name: "state") required TypeOfDiaryModel typeOfDiary,
|
|
@JsonKey(name: "meals") required List<MealModel> meals,
|
|
@JsonKey(name: "chosen_plan_id") required int? chosenPlanId,
|
|
@JsonKey(name: "day_of_chosen_diet") required int? dayOfChosenDiet,
|
|
@JsonKey(name: "chosen_diet", fromJson: parseDiet) required DiaryDietModel? diet,
|
|
}) = _DiaryDayEntity;
|
|
|
|
const DiaryDayEntity._();
|
|
|
|
bool get hasProducts => meals.any((meal) => meal.portions.isNotEmpty);
|
|
}
|