Commit ebf0b27d by Jose Baez

Se completa consultas primera parte

parent 8f3f5128
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
</set>
</option>
</component>
</project>
\ No newline at end of file
...@@ -21,6 +21,20 @@ public class ConsultaClienteFactura extends HttpServlet { ...@@ -21,6 +21,20 @@ public class ConsultaClienteFactura extends HttpServlet {
consulta1(res); consulta1(res);
}else if(respuesta.equals("consulta2")){ }else if(respuesta.equals("consulta2")){
consulta2(res); consulta2(res);
}else if(respuesta.equals("consulta3")){
consulta3(res);
}else if(respuesta.equals("consulta4")){
consulta4(res);
}else if(respuesta.equals("consulta5")){
consulta5(res);
}else if(respuesta.equals("consulta6")){
consulta6(res);
}else if(respuesta.equals("consulta7")){
consulta7(res);
}else if(respuesta.equals("consulta8")){
consulta8(res);
}else if(respuesta.equals("consulta9")){
consulta9(res);
} }
} }
...@@ -85,6 +99,245 @@ public class ConsultaClienteFactura extends HttpServlet { ...@@ -85,6 +99,245 @@ public class ConsultaClienteFactura extends HttpServlet {
} }
} }
private void consulta3(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select f.nombre, e.cliente_id, cast(sum(c.cantidad*d.precio) as integer) as Gasto\n" +
"from factura_detalle c\n" +
"inner join producto d\n" +
"\ton d.id=producto_id\n" +
"inner join factura e\n" +
"\ton c.id=e.id\n" +
"inner join Cliente f\n" +
"\ton f.id=e.cliente_id\n" +
"group by e.cliente_id, f.nombre\n" +
"order by Gasto desc;" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre " + "- " + "Id - Gasto ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String clienteid = rs.getString("cliente_id");
String gasto = rs.getString("Gasto");
out.println("<ul>");
out.print("<li>" + nombre + " - \t "+clienteid +" - "+gasto+"</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
private void consulta4(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select b.nombre, count(proveedor_id) Cantidad from producto a\n" +
"inner join proveedor b\n" +
"on b.id=a.proveedor_id\n" +
"group by b.nombre, a.proveedor_id\n" +
"order by cantidad desc" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre Producto " + "- " + "Cantidad ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String cantidad = rs.getString("Cantidad");
out.println("<ul>");
out.print("<li>" + nombre + " ==> "+cantidad+"</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
private void consulta5(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select b.nombre, a.producto_id, sum(cantidad) as cantidad_Total from factura_detalle a\n" +
"inner join producto b\n" +
"on b.id=a.producto_id\n" +
"group by producto_id,b.nombre\n" +
"ORDER BY cantidad_Total desc limit 10;" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre Producto " + "- " +"Id - " + "Cantidad ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String id = rs.getString("producto_id");
String cantidad = rs.getString("cantidad_Total");
out.println("<ul>");
out.print("<li>" + nombre + " - Id: " + id +" - "+cantidad+"</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
private void consulta6(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select b.nombre, a.producto_id, sum(cantidad) as cantidad_Total from factura_detalle a\n" +
"inner join producto b\n" +
"on b.id=a.producto_id\n" +
"group by producto_id,b.nombre\n" +
"ORDER BY cantidad_Total limit 10;" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre Producto " + "- " +"Id - " + "Cantidad ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String id = rs.getString("producto_id");
String cantidad = rs.getString("cantidad_Total");
out.println("<ul>");
out.print("<li>" + nombre + " - Id: " + id +" - "+cantidad+"</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
private void consulta7(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select a.nombre, a.apellido, b.fecha_emision, d.nombre as Nombre_producto, c.cantidad, e.nombre as Tipo_cuenta from cliente a\n" +
"inner join factura b on a.id=b.cliente_id\n" +
"inner join factura_detalle c on c.factura_id = b.id\n" +
"inner join producto d on d.id=c.producto_id\n" +
"inner join factura_tipo e on e.id=b.factura_tipo_id\n" +
"order by b.id" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre - Apellido - Fecha - Nombre Producto - " +"Cantidad - Cuenta ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String apellido = rs.getString("apellido");
String fecha = rs.getString("fecha_emision");
String producto = rs.getString("Nombre_producto");
String cantidad = rs.getString("cantidad");
String cuenta = rs.getString("Tipo_cuenta");
out.println("<ul>");
out.print("<li>" + nombre + " " + apellido +" - "+ fecha + " - " + producto+ " - " + cantidad + " - " + cuenta + "</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
private void consulta8(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select e.nombre, f.nombre as Tipo_Factura, sum(cantidad*precio) as Monto\n" +
"from factura a\n" +
"inner join Cliente e on e.id=a.cliente_id\n" +
"inner join factura_detalle b on a.id=b.factura_id\n" +
"inner join producto c on c.id=b.producto_id\n" +
"inner join factura_tipo f on f.id=a.factura_tipo_id\n" +
"group by a.id, e.nombre, Tipo_Factura\n" +
"order by Monto desc" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre - Tipo Factura - Monto ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String factura = rs.getString("Tipo_Factura");
String monto = rs.getString("Monto");
out.println("<ul>");
out.print("<li>" + nombre + " - " + factura +" - "+ monto + "</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
private void consulta9(HttpServletResponse res) {
try {
Statement stmt = BD.getConnection().createStatement();
res.setContentType("text/html");
PrintWriter out = res.getWriter();
ResultSet rs = stmt
.executeQuery( "select e.nombre, f.nombre as Tipo_Factura, sum(cantidad*precio)*0.1 as Monto\n" +
"from factura a\n" +
"inner join Cliente e on e.id=a.cliente_id\n" +
"inner join factura_detalle b on a.id=b.factura_id\n" +
"inner join producto c on c.id=b.producto_id\n" +
"inner join factura_tipo f on f.id=a.factura_tipo_id\n" +
"group by a.id, e.nombre, Tipo_Factura\n" +
"order by Monto desc" );
out.println("<html>");
out.println("<body>");
out.print("<H3>*** Nombre - Tipo Factura - Monto ***<H3><hr>");
while (rs.next()) {
String nombre = rs.getString("nombre");
String factura = rs.getString("Tipo_Factura");
String monto = rs.getString("Monto");
out.println("<ul>");
out.print("<li>" + nombre + " - " + factura +" - "+ monto + "</li>");
out.println("</ul>");
}
out.println("</body>");
out.println("</html>");
rs.close();
stmt.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
}
public void destroy() { public void destroy() {
try { try {
BD.getConnection().close(); BD.getConnection().close();
......
...@@ -9,13 +9,50 @@ ...@@ -9,13 +9,50 @@
<body> <body>
<h1>Bienvenido</h1> <h1>Bienvenido</h1>
<hr> <hr>
<form action="/servlets/consultas" method="get"> <p>Top clientes con más facturas</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta1"> <input type="hidden" name="consulta" value="consulta1">
<button type="submit">Consulta 1</button> <button type="submit">Consulta 1</button>
</form><br> </form><br>
<form action="/servlets/consultas" method="get"> <p>Top clientes que más gastaron</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta2"> <input type="hidden" name="consulta" value="consulta2">
<button type="submit">Consulta 2</button> <button type="submit">Consulta 2</button>
</form><br> </form><br>
<p>Top monedas más utilizadas</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta3">
<button type="submit">Consulta 3</button>
</form><br>
<p>Top proveedor de productos</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta4">
<button type="submit">Consulta 4</button>
</form><br>
<p>Productos más vendidos</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta5">
<button type="submit">Consulta 5</button>
</form><br>
<p>Productos menos vendidos</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta6">
<button type="submit">Consulta 6</button>
</form><br>
<p>Consulta que muestre fecha de emision de factura, nombre y apellido de cliente, nombres de productos de esa factura, cantidades compradas, nombre de tipo de factura de una factura especfica</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta7">
<button type="submit">Consulta 7</button>
</form><br>
<p>Montos de facturas ordenadas segun totales</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta8">
<button type="submit">Consulta 8</button>
</form><br>
<p>Mostrar el iva 10% de los montos totales de facturas (suponer que todos los productos tienen IVA 10%)</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta9">
<button type="submit">Consulta 9</button>
</form><br>
</body> </body>
</html> </html>
\ No newline at end of file
#Created by Apache Maven 3.6.3 #Created by Apache Maven 3.8.1
version=1.0-SNAPSHOT
groupId=com.roshka.bootcamp groupId=com.roshka.bootcamp
artifactId=servlets artifactId=servlets
version=1.0-SNAPSHOT
com\roshka\bootcamp\Parameter.class com\roshka\bootcamp\Parameter.class
com\roshka\bootcamp\ConsultaClienteFactura.class
com\roshka\bootcamp\BD.class
com\roshka\bootcamp\HelloWorldServlet.class com\roshka\bootcamp\HelloWorldServlet.class
c:\Users\oscar\Documents\programacion\programacion\java\servlets\src\main\java\com\roshka\bootcamp\Parameter.java C:\Users\jose_\IdeaProjects\servlets\src\main\java\com\roshka\bootcamp\HelloWorldServlet.java
c:\Users\oscar\Documents\programacion\programacion\java\servlets\src\main\java\com\roshka\bootcamp\HelloWorldServlet.java C:\Users\jose_\IdeaProjects\servlets\src\main\java\com\roshka\bootcamp\ConsultaClienteFactura.java
C:\Users\jose_\IdeaProjects\servlets\src\main\java\com\roshka\bootcamp\Parameter.java
C:\Users\jose_\IdeaProjects\servlets\src\main\java\com\roshka\bootcamp\BD.java
Manifest-Version: 1.0
Created-By: IntelliJ IDEA
Built-By: jose_
Build-Jdk: 1.8.0_332
...@@ -13,4 +13,5 @@ ...@@ -13,4 +13,5 @@
<servlet-name>HelloWorldServlet</servlet-name> <servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>/hola</url-pattern> <url-pattern>/hola</url-pattern>
</servlet-mapping> </servlet-mapping>
</web-app> </web-app>
<html> <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Home</title>
</head>
<body> <body>
<h2>Hello indes!</h2> <h1>Bienvenido</h1>
<hr>
<p>Top clientes con más facturas</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta1">
<button type="submit">Consulta 1</button>
</form><br>
<p>Top clientes que más gastaron</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta2">
<button type="submit">Consulta 2</button>
</form><br>
<p>Top monedas más utilizadas</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta3">
<button type="submit">Consulta 3</button>
</form><br>
<p>Top proveedor de productos</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta4">
<button type="submit">Consulta 4</button>
</form><br>
<p>Productos más vendidos</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta5">
<button type="submit">Consulta 5</button>
</form><br>
<p>Productos menos vendidos</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta6">
<button type="submit">Consulta 6</button>
</form><br>
<p>Consulta que muestre fecha de emision de factura, nombre y apellido de cliente, nombres de productos de esa factura, cantidades compradas, nombre de tipo de factura de una factura especfica</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta7">
<button type="submit">Consulta 7</button>
</form><br>
<p>Montos de facturas ordenadas segun totales</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta8">
<button type="submit">Consulta 8</button>
</form><br>
<p>Mostrar el iva 10% de los montos totales de facturas (suponer que todos los productos tienen IVA 10%)</p>
<form action="/servlets_war/consultas" method="get">
<input type="hidden" name="consulta" value="consulta9">
<button type="submit">Consulta 9</button>
</form><br>
</body> </body>
</html> </html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Parametros</title>
</head>
<body>
<form method="post" action="parameter">
<label>Nombre: </label>
<input type="text" name="nombre"><br/>
<input type="submit">
</form>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment