feat(01-01): add Member notes relationship, morph map, and NoteFactory

- Add notes() morphMany relationship to Member model (ordered by created_at desc)
- Register morph map in AppServiceProvider ('member' => Member::class)
- Create NoteFactory with forMember() and byAuthor() state methods
This commit is contained in:
2026-02-13 12:04:05 +08:00
parent f2912badfa
commit 4ca7530957
3 changed files with 60 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Support\Facades\Crypt;
class Member extends Model
@@ -110,6 +111,14 @@ class Member extends Model
return $this->hasMany(Member::class, 'guardian_member_id');
}
/**
* 會員備註(管理員可對任一會員新增備註)
*/
public function notes(): MorphMany
{
return $this->morphMany(Note::class, 'notable')->orderBy('created_at', 'desc');
}
/**
* 是否為病友
*/