Transcript
/*,,,
* To change this template, choose Tools " Templates,,
* and open the template in the editor.,,,
*/,,,
package Controle;,,,
,,,
import DAO.BuscaProduto;,,,
import Controle.Cliente;,,,
import DAO.AtualizaPedido;,,,
import DAO.InserePedidoDetalhes;,,,
import DAO.InserePedido;,,,
import Modelo.Pedido;,,,
import Modelo.Produto;,,,
import java.io.IOException;,,,
,,,
import java.util.Map;,,,
import javax.servlet.ServletException;,,,
import javax.servlet.annotation.WebServlet;,,,
import javax.servlet.http.HttpServlet;,,,
import javax.servlet.http.HttpServletRequest;,,,
import javax.servlet.http.HttpServletResponse;,,,
import javax.servlet.http.HttpSession;,,,
,,,
/**,,,
*,,,
* @author Bruno,,,
*/,,,
"@WebServlet(name = ""FazerPedido, urlPatterns =
{
""/FazerPedido",,,
}),,,
public class FazerPedido extends HttpServlet,,,
{,,,
,,,
public void doPost(HttpServletRequest request, HttpServletResponse response),,
throws ServletException, IOException,,
{,,,
//Cliente,,,
Modelo.Cliente cliente = Controle.Cliente.retorna(request);,,,
,,,
float valortotal = 0;,,,
,,,
//Salva no banco um novo pedido e retorna o objeto java,,,
Pedido pedido = pedido = InserePedido.inserir(cliente.getClienteID(), valortotal);,,
,,,
//pega os itens que estao dentro da session do carrinho de compras e atribui a uma map, onde tem um indice,,
//para cada Map que sera um item do pedido do carrinho que esta na sessao,,,
for(Map.Entry item : CarrinhoCompra.retorna(request).entrySet()),,
{,,,
//busca cada item atribuido a mapa do carrinho de comprar e busca pela sua chave(produtoid),,,
//do banco de dados e chama o metodo de busca no banco para retornar qual e o produto,,,
Produto produto = BuscaProduto.buscar(item.getKey());,,,
//insiro o item do pedido na tabela pedido detalhes,,,
float subtotal = produto.getPreco() * item.getValue();,,,
int quantidade = item.getValue();,,,
InserePedidoDetalhes.inserir(pedido, produto, quantidade, subtotal);
valortotal += subtotal;,,,
},,,
,,,
pedido.setValorTotal(valortotal);,,,
,,,
AtualizaPedido.atualizar(pedido);,,,
},,,
},,,