getAttribute('user_id') ?? 0); if ($userId <= 0) { return ResponseLib::sendFail("Unauthorized: Missing authenticated user", [], "E_VALIDATE")->withStatus(401); } $pdo = Database::pdo(); $stmt = $pdo->prepare( 'SELECT u.user_id, u.company_id, u.user_name, u.user_phone, u.user_email, u.user_role, u.user_created_at, c.company_name, c.company_cnpj, c.company_logo, c.company_created_at FROM "user" u INNER JOIN company c ON c.company_id = u.company_id WHERE u.user_id = :user_id AND u.user_deleted_at = \'infinity\' AND c.company_deleted_at = \'infinity\' LIMIT 1' ); $stmt->execute(['user_id' => $userId]); $user = $stmt->fetch(\PDO::FETCH_ASSOC); if (!$user) { return ResponseLib::sendFail("User not found", [], "E_NOT_FOUND")->withStatus(404); } $data = [ 'user_id' => (int) $user['user_id'], 'company_id' => (int) $user['company_id'], 'user_name' => $user['user_name'], 'user_phone' => $user['user_phone'], 'user_email' => $user['user_email'], 'user_role' => $user['user_role'], 'user_created_at' => $user['user_created_at'], 'company' => [ 'company_id' => (int) $user['company_id'], 'company_name' => $user['company_name'], 'company_cnpj' => $user['company_cnpj'], 'company_logo' => $user['company_logo'], 'company_created_at' => $user['company_created_at'], ], ]; return ResponseLib::sendOk($data); } }