$table
->query(Employee::query())
->columns([
TextColumn::make('first_name'),
TextColumn::make('result'),
])
->filters([
Filter::make('dt_attendance')
->form([
Forms\Components\DatePicker::make('dt')->default(date("Y-m-d"))->label('Tanggal')
])
->query(function (Builder $query, array $data): Builder {
return $query
->when(
$data['dt'],
fn (Builder $query, $date): Builder => $query->leftJoin('attendances', function($join) use ($date)
{
$join->on('attendances.employee_id', '=', 'employees.id');
$join->on('attendances.dt_attendance','>=',DB::raw("'".$date."'"));
})
);
})
], layout: FiltersLayout::AboveContent)
$table
->query(Employee::query())
->columns([
TextColumn::make('first_name'),
TextColumn::make('result'),
])
->filters([
Filter::make('dt_attendance')
->form([
Forms\Components\DatePicker::make('dt')->default(date("Y-m-d"))->label('Tanggal')
])
->query(function (Builder $query, array $data): Builder {
return $query
->when(
$data['dt'],
fn (Builder $query, $date): Builder => $query->leftJoin('attendances', function($join) use ($date)
{
$join->on('attendances.employee_id', '=', 'employees.id');
$join->on('attendances.dt_attendance','>=',DB::raw("'".$date."'"));
})
);
})
], layout: FiltersLayout::AboveContent)