public function detalhes(PedidosDetalhes $pedidoDetalhes) { $query = "SELECT pedidos.id_pedido, produtos.titulo, pedidos.data_pedido, produtos_pedidos.quantidade, produtos_pedidos.valor_unitario, " . "formas_de_pagamento.descricao_forma_pagamento, formas_de_envio.descricao_forma_envio, enderecos.cep_origem, enderecos.cep_destino, enderecos.numero, enderecos.complemento FROM produtos INNER JOIN (formas_de_pagamento INNER JOIN (formas_de_envio INNER JOIN (enderecos INNER JOIN ((pedidos INNER JOIN produtos_pedidos ON pedidos.id_pedido = produtos_pedidos.id_pedido) INNER JOIN vendas ON pedidos.id_pedido = vendas.id_pedido) ON enderecos.id_endereco = vendas.id_endereco_envio) ON formas_de_envio.id_forma_envio = vendas.id_forma_envio) ON formas_de_pagamento.id_forma_pagamento = vendas.id_forma_pagamento) ON produtos.id_produto = produtos_pedidos.id_produto WHERE (((pedidos.id_pedido)=:id_pedido));"; $stmt = $this->conexao->prepare($query); $stmt->bindValue(":id_pedido", $pedidoDetalhes->getIdPedido(), PDO::PARAM_INT); $stmt->execute(); $rs_detalhes = $stmt->fetchAll(PDO::FETCH_ASSOC); $objPedidosDetalhes = array(); foreach ($rs_detalhes as $rs) { $endereco = new WSCepEndereco(); $endereco->setCep($rs['cep_origem']); $endereco->getEndereco(); $c = new PedidosDetalhes(); $c->setIdPedido($rs['id_pedido']); $c->setTitulo($rs['titulo']); $c->setQuantidade($rs['quantidade']); $c->setValor_unitario($rs['valor_unitario']); $c->setFormaPagamento($rs['descricao_forma_pagamento']); $c->setFormaEnvio($rs['descricao_forma_envio']); $c->setOrigem($rs['cep_origem']); $c->setData(formata_data($rs['data_pedido'])); $c->setDestino($rs['cep_destino']); $c->setNumero($rs['numero']); $c->setComplemento($rs['complemento']); $c->setEndereco(utf8_encode($endereco->getTipoLogradouro() . ' ' . $endereco->getLogradouro() . ', ' . $rs['numero'] . ' ' . $rs['complemento'] . ' ' . $endereco->getBairro() . ' - ' . $rs['cep_origem'] . ' - ' . $endereco->getCidade() . '/' . $endereco->getEstado())); $objPedidosDetalhes[] = $c; } return $objPedidosDetalhes; }
/** * Verifica o login do cliente no sistema * @param Cliente $cliente */ public function login(Cliente $cliente) { /** * Cria a sessão para a navegação segura do cliente, * incluindo a sessão atual de 'visitante' */ $query = "SELECT clientes.*, enderecos.* FROM clientes INNER JOIN enderecos " . "ON enderecos.id_cliente = clientes.id_cliente " . "WHERE clientes.email = :email AND clientes.senha = :senha"; $stmt = $this->conexao->prepare($query); $stmt->bindValue(":email", $cliente->getEmail(), PDO::PARAM_STR); $stmt->bindValue(":senha", $cliente->getSenha(), PDO::PARAM_STR); $stmt->execute(); $rs_cliente = $stmt->fetchAll(PDO::FETCH_ASSOC); $objCliente = array(); foreach ($rs_cliente as $rs) { $c = new Cliente(); $endereco = new WSCepEndereco(); $endereco->setCep($rs['cep_origem']); $endereco->getEndereco(); $c->setIdCliente($rs['id_cliente']); $_SESSION['id_cliente'] = $rs['id_cliente']; $c->setNome($rs['nome']); $_SESSION['nome_cliente'] = $rs['nome']; $c->setCpf($rs['cpf']); $c->setCepOrigem($rs['cep_origem']); $frete = new Frete('41106', $rs['cep_origem'], $rs['cep_destino']); $frete->calculaFrete(); $_SESSION['frete'] = $frete->getValor(); $c->setEndereco($endereco->getTipoLogradouro() . ' ' . $endereco->getLogradouro()); $c->setBairro($endereco->getBairro()); $c->setCidade($endereco->getCidade()); $c->setEstado($endereco->getEstado()); $c->setEmail($rs['email']); $c->setNumero($rs['numero']); $c->setComplemento($rs['complemento']); $c->setDddTelefone($rs['ddd_telefone']); $c->setTelefone($rs['telefone']); $c->setDddCelular($rs['ddd_celular']); $c->setCelular($rs['celular']); $objCliente[] = $c; } return $objCliente; }