'datetime']; } protected static function booted(): void { static::creating(function (Prescription $prescription) { if (! $prescription->uuid) { $prescription->uuid = (string) Str::uuid(); } }); } public function getRouteKeyName(): string { return 'uuid'; } public function patient(): BelongsTo { return $this->belongsTo(Patient::class, 'patient_id'); } public function visit(): BelongsTo { return $this->belongsTo(Visit::class, 'visit_id'); } public function consultation(): BelongsTo { return $this->belongsTo(Consultation::class, 'consultation_id'); } public function practitioner(): BelongsTo { return $this->belongsTo(Practitioner::class, 'practitioner_id'); } public function items(): HasMany { return $this->hasMany(PrescriptionItem::class, 'prescription_id')->orderBy('sort_order'); } }