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 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 }; } } }