diff --git a/src/Models/Invoice.php b/src/Models/Invoice.php index dcc9b67..caada95 100644 --- a/src/Models/Invoice.php +++ b/src/Models/Invoice.php @@ -64,7 +64,7 @@ public static function make() public function items() { - return $this->hasMany(InvoiceItem::class); + return $this->hasMany(InvoiceItem::class)->rootWithChildren(); } diff --git a/src/Models/InvoiceItem.php b/src/Models/InvoiceItem.php index d8b1176..5d06aed 100644 --- a/src/Models/InvoiceItem.php +++ b/src/Models/InvoiceItem.php @@ -85,4 +85,8 @@ public function childItems() { return $this->hasMany(InvoiceItem::class, 'parent_item_id'); } + public function scopeRootWithChildren($query) + { + $query->whereNull('parent_item_id')->with('childItems'); + } }