コード例 #1
0
 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());
     }
 }