LearningPathEnrollmentModel.fromJson constructor
LearningPathEnrollmentModel.fromJson( - Map<String, dynamic> json
)
Implementation
factory LearningPathEnrollmentModel.fromJson(Map<String, dynamic> json) {
// profiles join via user_id FK
final profileData = json['profiles'];
String? label;
if (profileData is Map<String, dynamic>) {
label =
(profileData['display_name'] as String?) ??
(profileData['username'] as String?) ??
(profileData['email'] as String?);
}
return LearningPathEnrollmentModel(
id: json['id'] as String,
pathId: json['path_id'] as String,
userId: json['user_id'] as String,
userLabel: label,
enrolledAt: DateTime.parse(json['enrolled_at'] as String),
enrolledBy: json['enrolled_by'] as String?,
completedAt: json['completed_at'] != null
? DateTime.parse(json['completed_at'] as String)
: null,
currentStepPosition: json['current_step_position'] as int? ?? 1,
);
}