Está en la página 1de 4

INCOS -LA PAZ PROGRAMACION JAVA 2022

Resultado del proceso anterior

Segunda Parte

Esta parte contempla la adicion de los productos a una tabla con el boton Agregar, para
que los mismos se adicionen a la tabla inferior con sus datos respectivos, para esto se tiene
que realizar los siguientes pasos:

1. Crear un POJO denominado ProductoCompra que tendrá los atributos necesarios para
guardar los datos de los productos, como se puede ver en el código.

public class ProductoCompra implements Serializable {

//atributos de producto
private String codigoProducto;
private String nombreProducto;
//este atributo no es relevante para la accion de venta, ya que no se mostrara el
contenido
private String descripcionProducto;

private float precio;


private int stock;
//atributos para determinar el costo final
private int cantidad;
private float precioFinal = 0;

public ProductoCompra() {
}

public ProductoCompra(String codigoProducto, String nombreProducto, String


descripcionProducto) {
this.codigoProducto = codigoProducto;
this.nombreProducto = nombreProducto;
this.descripcionProducto = descripcionProducto;
}

//getter y setter
}
INCOS -LA PAZ PROGRAMACION JAVA 2022
2. Adicionar el método denominado buscarProducto dentro del bean ProductoBean, el
mismo tendrá el siguiente código.

public ProductoCompra buscarProducto(String codProducto) {

ProductoCompra productoCompra=null;
if (connection != null) {
try {
StringBuilder consulta = new StringBuilder();
consulta.append(" select p.cod_pro, p.nom_pro, p.des_pro, p.costo_uv,p.stock ");
consulta.append(" from producto p ");
consulta.append(" where p.cod_pro = ? ");
PreparedStatement pst = connection.prepareStatement(consulta.toString());
//pasando a la consulta el parametro del codigo de categoria
pst.setInt(1, Integer.parseInt(codProducto));
ResultSet resultado = pst.executeQuery();

if (resultado != null && resultado.next()) {


productoCompra = new ProductoCompra();
//adicionando los datos de la consulta al objeto de tipo ProductoCompra

productoCompra.setCodigoProducto(resultado.getLong(1) + "");
productoCompra.setNombreProducto(resultado.getString(2));
productoCompra.setDescripcionProducto(resultado.getString(3));
productoCompra.setCantidad(0);
productoCompra.setPrecio(resultado.getFloat(4));
productoCompra.setStock(resultado.getInt(5));
//mostrando el objeto de productoCompra
System.out.println(productoCompra.toString());
}

} catch (SQLException e) {
System.out.println("Error al ejecutar el insert");
e.printStackTrace();
String mensajeError = e.getMessage();
System.out.println("Mensaje: " + mensajeError);
}
}
return productoCompra;
}

3. Adicionar a la pagina jsp ventaProducto las secciones remarcadas


<%@page import="java.util.ArrayList"%>
<%@page import="com.test.clases.ProductoCompra"%>
<%@page import="java.util.List"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
INCOS -LA PAZ PROGRAMACION JAVA 2022
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Venta de Producto</title>
<link rel="stylesheet" type="text/css" href="resources/css/jquery.autocomplete.css" />
<script src="resources/js/jsapi_google.js"></script>
<script>
google.load("jquery", "1");
</script>
<%!
List<ProductoCompra> lista;
ProductoCompra productoCompra;
%>
</head>
<body>
<jsp:useBean id="productoBean" scope="session" class="com.test.bean.ProductoBean"/>
<%
if (session.getAttribute("listaProductos") != null) {

if (request.getParameter("agregar") != null) {
// recupero valor del input
String valor = request.getParameter("producto");
// separando codigo de descripcion
//out.print("valor:" + valor);
if (valor != null && valor.length() > 0) {
String codigo = valor.substring(0, valor.indexOf(" "));
String nombre = valor.substring(valor.indexOf(" "));

System.out.print("codigo : " + codigo);


System.out.print("producto: " + nombre);

// TODO: llamar a BBDD pára recuperar datos del formulario


productoCompra = productoBean.buscarProducto(codigo);

// recupernado objeto de session


lista = (List<ProductoCompra>) session.getAttribute("listaProductos");
// agregando objeto producto a la lista de producto recuperado de session
lista.add(productoCompra);
// actualizando objeto en sesion
session.setAttribute("listaProductos", lista);
}
}
}
INCOS -LA PAZ PROGRAMACION JAVA 2022
else {
//primera vez
//instanciando la lista de tipo Productocompra
//subiendo a session la lista de productos
lista = new ArrayList<ProductoCompra>();
session.setAttribute("listaProductos", lista);

%>
<form method="post" action="#" >
<table border="1">
<thead>
<tr>
<th colspan="2" >VENTA DE PRODUCTOS </th>

</tr>
</thead>
<tbody>
<tr>
<td>Nombre Producto: </td>
<td><input type="text" name="producto" id="producto" /></td>
</tr>
<tr>
<td>
<input type="submit" value="Agregar" id="agregar" name="agregar" />
</td>
<td><input type="reset" value="Limpiar" /></td>
</tr>
</tbody>
</table>
<table border="1">
<thead>
<tr>
<td>Codigo Producto</td>
<td>Nombre Producto</td>
<td>Stock</td>
<td>Precio Unitario</td>
<td>Cantidad</td>
<td>Precio</td>
<td>Operacion</td>
</tr>
</thead>
<tbody>

También podría gustarte