format("d-m-Y"); } public static function getActiveCawanganDbConnection() { $queryActiveCawanganDbConnection = function () { $all_active_db_keys = array_filter(array_keys(config('database.connections')), function ($connection) { try { DB::connection($connection)->getPdo(); return true; } catch (\Throwable $th) { return false; } }); $non_cawangan_database = ['lelong', 'online_arrahn', 'kaunterpkb']; $all_cawangan_db = array_filter($all_active_db_keys, function ($db_key) use ($non_cawangan_database) { $isNotCawangan = in_array(config('database.connections.' . $db_key . '.database'), $non_cawangan_database); if ($isNotCawangan) { return false; } return true; }); return $all_cawangan_db; }; return $queryActiveCawanganDbConnection(); } public static function getInactiveCawanganDbConnection() { $queryInactiveCawanganDbConnection = function () { $all_inactive_db_keys = array_filter(array_keys(config('database.connections')), function ($connection) { try { DB::connection($connection)->getPdo(); return false; } catch (\Throwable $th) { return true; } }); $non_cawangan_database = ['lelong', 'online_arrahn', 'kaunterpkb']; $all_cawangan_db = array_filter($all_inactive_db_keys, function ($db_key) use ($non_cawangan_database) { $isNotCawangan = in_array(config('database.connections.' . $db_key . '.database'), $non_cawangan_database); $isNotCawanganKey = in_array($db_key, $non_cawangan_database); if ($isNotCawangan OR $isNotCawanganKey) { return false; } return true; }); return $all_cawangan_db; }; $all_cawangan_db_connection = array_map(function ($db_connection) { return [ 'connection' => $db_connection, 'database' => config('database.connections.' . $db_connection . '.database'), ]; }, $queryInactiveCawanganDbConnection()); return $all_cawangan_db_connection; } public static function getActiveCawangan() { return Cawangan::whereIn('mysql', helper::getactivecawangandbconnection())->get(); } }