在Laravel中为Auth传递数组(不是对象)

I've some problem with passing array, please give me some advice so I can solve this matter.

Here is My Controller:

$keluhan_list=DB::table('keluhans')
->select(DB::raw('id,produk,username,masalah,id_departemen'))
->where('status','=','Proses')->get();
return view('layanankonsumen.lihattindaklanjut',compact('keluhan_list');

And this is part of my Blade view:

@if (Auth::check() && (Auth::user()->level == 'MR' || Auth::user()->level == 'PDD' || Auth::user()->id_departemen ==' @foreach ($keluhan_list as $keluhan) {{$keluhan->id_departemen}} @endforeach' ))

It's not error but it's not pass the auth. When I try to replace with Auth::user()->id_departemen == '10' it's working.

One mistake in return view line

$keluhan_list=DB::table('keluhans')
->select(DB::raw('id,produk,username,masalah,id_departemen'))
->where('status','=','Proses')->get();
return view('layanankonsumen.lihattindaklanjut',compact('keluhan_list'));// add one more braces before semicolon

First add this line in your blade

@foreach ($keluhan_list as $keluhan) 
   <?php $id_dept[] = $keluhan->id_departemen; ?>
@endforeach

then

@if (Auth::check() && (Auth::user()->level == 'MR' || Auth::user()->level == 'PDD' || in_array(Auth::user()->id_departemen,$id_dept) ))

Use in_array().

Checks if a value exists in an array

@if (.... || in_array(Auth::user()->id_departemen, array_column($keluhan_list, 'id_departemen'))