hasMany('App\Models\Income\Revenue'); } public function payments() { return $this->hasMany('App\Models\Expense\Payment'); } public function items() { return $this->hasMany('App\Models\Item\Item'); } public function canDelete() { $error = false; if ($items = $this->items()->count()) { $error['items'] = $items; } if ($payments = $this->payments()->count()) { $error['payments'] = $payments; } if ($revenues = $this->revenues()->count()) { $error['revenues'] = $revenues; } if ($error) { return $error; } return true; } /** * Scope to only include categories of a given type. * * @param \Illuminate\Database\Eloquent\Builder $query * @param mixed $type * @return \Illuminate\Database\Eloquent\Builder */ public function scopeType($query, $type) { return $query->where('type', $type); } }