71 lines
1.9 KiB
Dart
71 lines
1.9 KiB
Dart
import 'package:intl/intl.dart';
|
|
|
|
class ExercisePlan {
|
|
int? exercisePlanId;
|
|
late int customerId;
|
|
late String name;
|
|
String? description;
|
|
late bool private;
|
|
late DateTime? dateAdd;
|
|
late DateTime dateUpd;
|
|
String? type;
|
|
int? exercisePlanTemplateId;
|
|
|
|
ExercisePlan(String name, int customerId) {
|
|
this.customerId = customerId;
|
|
this.name = name;
|
|
this.dateUpd = DateTime.now();
|
|
}
|
|
|
|
ExercisePlan.fromJson(Map json) {
|
|
this.exercisePlanId = json['exercisePlanId'];
|
|
this.customerId = json['customerId'];
|
|
this.name = json['name'];
|
|
this.private = json['private'];
|
|
this.description = json['description'];
|
|
this.dateAdd = (json['dateAdd'] == null ? null : DateTime.parse(json['dateAdd']))!;
|
|
this.dateUpd = (json['dateUpd'] == null ? null : DateTime.parse(json['dateUpd']))!;
|
|
this.type = json['type'];
|
|
this.exercisePlanTemplateId = json['exercisePlanTemplateId'];
|
|
}
|
|
|
|
Map<String, dynamic> toJson() {
|
|
String? formattedDateAdd;
|
|
if (dateAdd != null) {
|
|
formattedDateAdd = DateFormat('yyyy-MM-dd HH:mm').format(dateAdd!);
|
|
}
|
|
String formattedDateUpd = DateFormat('yyyy-MM-dd HH:mm').format(dateUpd);
|
|
|
|
if (exercisePlanId == null) {
|
|
return {
|
|
"customerId": customerId,
|
|
"name": name,
|
|
"description": description,
|
|
"private": private,
|
|
"dateAdd": formattedDateAdd,
|
|
"dateUpd": formattedDateUpd,
|
|
"type": type,
|
|
"exercisePlanTemplateId": exercisePlanTemplateId
|
|
};
|
|
} else {
|
|
return {
|
|
"exercisePlanId": exercisePlanId,
|
|
"customerId": customerId,
|
|
"name": name,
|
|
"description": description,
|
|
"private": private,
|
|
"dateAdd": formattedDateAdd,
|
|
"dateUpd": formattedDateUpd,
|
|
"type": type,
|
|
"exercisePlanTemplateId": exercisePlanTemplateId
|
|
};
|
|
}
|
|
}
|
|
|
|
@override
|
|
String toString() {
|
|
Map<String, dynamic> json = toJson();
|
|
return json.toString();
|
|
}
|
|
}
|