'integer', 'remaining_sessions' => 'integer', 'start_date' => 'date', 'end_date' => 'date', ]; public function patient(): BelongsTo { return $this->belongsTo(Patient::class); } public function package(): BelongsTo { return $this->belongsTo(Package::class); } public function consumeSession(): bool { if ($this->remaining_sessions > 0 && $this->status === 'active') { $this->remaining_sessions--; if ($this->remaining_sessions === 0) { $this->status = 'completed'; } $this->save(); return true; } return false; } }