public function finalizar()
 {
     try {
         TTransaction::open('sample');
         $produtos = PCart::getItens();
         // pegamos os dados do cliente
         $cliente = new PCliente();
         $cliente_compra = new Clientes(TSession::getValue('id'));
         $cliente->setNome($cliente_compra->nome . ' ' . $cliente_compra->sobrenome);
         $cliente->setCep($cliente_compra->cep);
         $cliente->setLogradouro($cliente_compra->logradouro);
         $cliente->setBairro($cliente_compra->bairro);
         $cliente->setCidade($cliente_compra->cidade);
         $cliente->setUf($cliente_compra->uf);
         $cliente->setDD($cliente_compra->dd);
         $cliente->setTelefone($cliente_compra->telefone);
         $this->pagseguro->addCliente($cliente);
         // cria o pedido
         $pedidos = new Pedidos();
         $pedidos->clientes_id = TSession::getValue('id');
         //seta o id do cliente
         $pedidos->dataP = date('Y-m-d');
         // seta a data
         $pedidos->status = 1;
         // estatus 1 é de aguardando pagamento
         $pedidos->store();
         // salva o pedido
         if ($produtos) {
             foreach ($produtos as $p) {
                 $this->pagseguro->addItem($p);
                 // add os itens no pagseguro
                 $pedido_produto = new PedidosProdutos();
                 // cria os itens do pedido
                 $pedido_produto->pedidos_id = $pedidos->id;
                 //seta o id do pedido
                 $pedido_produto->produtos_id = $p->getId();
                 // seta o id do item
                 $pedido_produto->qtd = $p->getQtd();
                 // seta a qtd do iten
                 $pedido_produto->store();
                 //salva o item
             }
         }
         $this->pagseguro->addCodVenda($pedidos->id);
         // seta o code do pedido no pagseguro
         $link = new PLink('Finalizar');
         $link->setLink($this->pagseguro->getButton());
         $link->show();
         PCart::clean();
         // limpra o carrinho
         TTransaction::close();
         exit;
     } catch (Exception $e) {
         new TMessage('error', $e->getMessage());
     }
 }
Ejemplo n.º 2
0
 public function showItens($param)
 {
     $table = new PTableWriteHTML();
     // usa a tabela do PWD para mostrar os itens do pedido
     $table->addRowTitle();
     // cria linha de titulo
     //adciona as colunas
     $table->addCellTitle("Id", 'center');
     $table->addCellTitle("Nome", 'center');
     $table->addCellTitle("Preco", 'center');
     $janela = new PWindows();
     try {
         TTransaction::open('sample');
         // cria as regras para consultar os itens do pediso
         $criteria = new TCriteria();
         $filtro = new TFilter('pedidos_id', '=', $param['key']);
         $criteria->add($filtro);
         // carega os itens do pedido
         $obj = PedidosProdutos::getObjects($criteria);
         $total = 0;
         // adiona os itens
         foreach ($obj as $itens) {
             $table->addRow();
             $table->addCell($itens->id, 'center', 'danger');
             $table->addCell($itens->produto->nome, 'center');
             // pega o nome do produto usango o metodo get_produto
             $table->addCell($itens->qtd, 'center');
             $table->addCell($itens->produto->preco, 'center');
             $total += $itens->produto->preco;
             // adiciona os preços ao total
         }
         $table->addRow();
         $table->addCell("Total : " . $total, 'center');
         TTransaction::close();
         $janela = new PWindows();
         $janela->setSize(800, 300);
         $janela->addContent($table);
         $janela->show();
     } catch (Exeption $e) {
         echo $e->getMessage();
     }
 }