DONE: optimize loading page on employee, append the online payment under same batch

This commit is contained in:
ISMAIL MASSERAN
2026-09-06 10:21:04 +08:00
parent effe268e3b
commit 9fbcf86325
4 changed files with 117 additions and 87 deletions
+36 -3
View File
@@ -20,10 +20,43 @@ class KakitanganController extends Controller
public function daftarKakitangan(){
$api_url = config('api.url');
$auth_user = Auth::user();
$cawangan_info = Http::withOptions(['verify' => config('app.api_verify')])->get(config('api.url') . '/api/cawangan/'. $auth_user['cawangan'])->json();
$http = Http::withOptions(['verify' => config('app.api_verify')]);
$cawangan_all = $http->get($api_url . '/api/cawangan')->json();
$cawangan_all = is_array($cawangan_all) ? $cawangan_all : [];
$cawangan_by_kod = collect($cawangan_all)->keyBy('kodcaw');
$cawangan_info = $cawangan_by_kod->get($auth_user['cawangan'], []);
$role = Role::get();
$kakitangan = User::all();
return view('operasi.daftar_kakitangan',compact('cawangan_info','api_url','role','kakitangan','auth_user'));
$kakitangan_rows = User::where('roles', '!=', 'admin')
->get()
->values()
->map(function ($staff) use ($cawangan_by_kod) {
$kod = (string) $staff->cawangan;
if (in_array($kod, ['operasi', 'callcenter', 'admin'], true)) {
$cawangan_nama = ucwords($kod);
} else {
$cawangan_nama = ucwords((string) data_get($cawangan_by_kod, $kod . '.details_caw', $kod));
}
return [
'id' => $staff->id,
'name' => $staff->name,
'roles' => strtoupper((string) $staff->roles),
'role_harian' => $staff->role_harian ? strtoupper($staff->role_harian) : '-',
'role_asal' => $staff->role_asal ? strtoupper($staff->role_asal) : '-',
'cawangan' => $cawangan_nama,
];
});
return view('operasi.daftar_kakitangan', compact(
'cawangan_info',
'api_url',
'role',
'kakitangan_rows',
'auth_user',
'cawangan_all'
));
}
public function registerStaff(Request $request){