Bom dia a todos!
Pessoal, tenho um outro problema!
Tenho uma lista onde:
Adiciono um produto:
código, descrição, valor e quantidade.
Adiciono outro produto:
código, descrição, valor e quantidade.
Adiciono o mesmo produto anterior:
Deve manter o código, a descrição, o valor e aumentar a quantidade!!!
Nesta lista tbm tem um campo subtotal, onde o mesmo tbm deve atualizar.
Alguém tem uma solução para isto?
Grato.
primeira página
<%
String codigo = request.getParameter( "codigo" );
carrinho.Produtos prodList = new carrinho.Produtos();
carrinho.Produto p = prodList.getProduto(codigo);
String descricao = p.getDescricao();
int valor = p.getValor();
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
<H1>Pedido de Compra</H1><br>
Código do produto: <%= codigo %><BR>
Descrição do produto: <%= descricao %><br>
Valor: <%= valor %>
<form method="post" action="CompraSucesso.jsp?codigo=<%= codigo %>">
Quantidade: <INPUT type="text" name="quantidade" size="5"> unidades
<INPUT type="submit" value="Comprar">
</form>
<FORM action="Lista.jsp">
<INPUT type="submit" name="naocompra" value="Desistir">
</FORM>
</BODY>
</HTML>
segunda página:
<jsp:useBean id="carro" class="carrinho.Carrinho" scope="session"/>
<%
String codigo = request.getParameter( "codigo" );
carrinho.Produtos prodList = new carrinho.Produtos();
carrinho.Produto p = prodList.getProduto(codigo);
String descricao = p.getDescricao();
int valor = p.getValor();
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
<%
try{
p.setQuantidade(Integer.parseInt(request.getParameter("quantidade")));
if(p.getQuantidade() == 1){
carro.addProduto(p);
}else if(p.getQuantidade() >1){
carro.addProduto(p);
}
%>
<B>Conteúdo de sua compra:</B><BR><BR>
<TABLE border="2">
<tr>
<TD width="90"><b>Código</b><TD>
<TD width="190"><b>Produto</b></TD>
<TD width="50" align="center"><b>Valor</b></TD>
<TD width="50" align="center"><b>Qtd</b></TD>
<TD width="60" align="center"><b>Subtotal</b></TD>
</tr>
</TABLE>
<%! int total = 0;%>
<%! int soma = 0; %>
<%
List cc = carro.getList2();
int subtotal = 0, total = 0;
for(int i = 0; i < cc.size(); i++){
carrinho.Produto n = (carrinho.Produto)cc.get(i);
subtotal = n.getQuantidade() * n.getValor();
total+=subtotal;
%>
<TABLE border="2">
<tr>
<TD width="90"><% out.println(n.getCodigo()); %><TD>
<TD width="190"><% out.println(n.getDescricao()); %></TD>
<TD width="50" align="right"><% out.println(n.getValor()); %></TD>
<TD width="50" align="right"><% out.println(n.getQuantidade()); %></TD>
<TD width="60" align="right"><% out.println(subtotal); %></TD>
</tr>
</TABLE>
<% } %>
<TABLE border="2">
<tr>
<TD width="407" colspan="4" align="right"><b>Total</b></TD>
<TD width="60" align="right"><%= total %></TD>
</tr>
</TABLE><BR><BR>
<%
if(p.getQuantidade() >= 2){
%><H4>Você comprou <%= soma %> unidade(s) do mesmo produto!</H4>
<% } %>
<BR>
<FORM action="Lista.jsp">
<INPUT type="submit" value="Novo Item">
</FORM>
<FORM action="CarroLista">
<INPUT type="submit" value="Fechar">
</FORM>
<% }catch(Exception e){ %>
<H1>ERRO</H1>
<B>Utilize somente valor númerico!!!</B>
<br>
<FORM method="post" action="ConfirmaProduto.jsp?codigo=<%= codigo %>">
<INPUT type="submit" value="Voltar">
</FORM>
<% } %>
</BODY>
</HTML>