'boolean', 'read_at' => 'datetime', 'data' => 'array', ]; public static function notifyCustomer(Customer $customer, array $attributes): void { self::create([ 'recipient_type' => 'client', 'recipient_id' => $customer->id, ] + $attributes); } public static function notifyAdmins(array $attributes): void { $adminIds = User::query() ->whereHas('roles', fn ($query) => $query->where('guard_name', 'admin')) ->pluck('id'); foreach ($adminIds as $adminId) { self::create([ 'recipient_type' => 'admin', 'recipient_id' => $adminId, ...$attributes, ]); } } }