public function listar($ordem = "ASC", $campo = self::ID)
 {
     $info = parent::listar($ordem, $campo);
     if (!empty($info)) {
         $temp = new ProdutoOpcaoGerado($info[self::ID]);
         $lPO = new ListaProdutoOpcoes();
         $lPO->condicoes('', $info[self::OPCAO], ListaProdutoOpcoes::ID);
         if ($lPO->getTotal() > 0) {
             $temp->setOpcao($lPO->listar());
             if ($temp->getOpcao()->multi) {
                 $lPOV = new ListaProdutoOpcaoValores();
                 $lPOV->condicoes('', $info[self::VALOR], ListaProdutoOpcaoValores::ID);
                 if ($lPOV->getTotal() > 0) {
                     $temp->setValor($lPOV->listar());
                 }
             } else {
                 $pOV = new ProdutoOpcaoValor();
                 $pOV->valor = $info[self::VALOR];
                 $temp->setValor($pOV);
             }
         }
         return $temp;
     }
 }
<?php

importar("LojaVirtual.Produtos.Opcoes.Lista.ListaProdutoOpcoes");
importar("Utils.Dados.JSON");
$tituloPagina = 'Produtos > Opções';
$iLPO = new IFAdmin(new Arquivos(Sistema::$adminLayoutCaminhoDiretorio . "/SistemaProdutos/listarProdutoOpcoes.html"));
$iLPO->trocar("linkDeletar.ProdutoOpcao", "?p=" . $_GET['p'] . "&a=" . $_GET['a'] . "&");
$iLPO->trocar("linkBuscar.ProdutoOpcao", "?p=" . $_GET['p'] . "&");
if (!empty($_GET['deletar'])) {
    $lPO = new ListaProdutoOpcoes();
    $lPO->condicoes('', $_GET['deletar'], ListaProdutoOpcoes::ID);
    if ($lPO->getTotal() > 0) {
        try {
            $lPO->deletar($lPO->listar());
            $javaScript .= Aviso::criar("Opção removida com sucesso!");
        } catch (Exception $e) {
            $javaScript .= Aviso::criar($e->getMessage());
        }
    }
}
$lPO = new ListaProdutoOpcoes();
$iLPO->createRepeticao("repetir->ProdutoOpcoes");
if (!empty($_GET['busca'])) {
    $lPO->condicoes('', "%" . $_GET['busca'] . "%", 'empresa', 'LIKE');
}
$iLPO->condicao("condicaoBusca", !empty($_SESSION['nivel']));
if (isset($_GET['json'])) {
    $cond = array();
    while ($pO = $lPO->listar("ASC", ListaProdutoOpcoes::NOME)) {
        $rs['id'] = $pO->getId();
        $rs['nome'] = $pO->nome;