Funcionalidad de reseñas y boton de eliminar pedido
This commit is contained in:
parent
7134e014ba
commit
5e7eebc3fb
|
@ -448,7 +448,47 @@ public class App
|
|||
return responseJson.toString();
|
||||
});
|
||||
|
||||
post("/frontend/eliminarPedido", (request, response) -> {
|
||||
response.type("application/json");
|
||||
String payload = request.body();
|
||||
JsonElement jsonElement = JsonParser.parseString(payload);
|
||||
JsonObject jsonObject = jsonElement.getAsJsonObject();
|
||||
String idPedido = jsonObject.get("datosId").getAsJsonObject().get("idPedido").getAsString();
|
||||
|
||||
// Lógica para eliminar el pedido usando el ID
|
||||
boolean eliminado = DAO.eliminarPedido(idPedido);
|
||||
|
||||
JsonObject respuesta = new JsonObject();
|
||||
if (eliminado) {
|
||||
respuesta.addProperty("msj", "Pedido eliminado exitosamente.");
|
||||
} else {
|
||||
respuesta.addProperty("msj", "No se encontró ningún pedido con el ID especificado.");
|
||||
}
|
||||
|
||||
return respuesta.toString();
|
||||
});
|
||||
|
||||
post("/frontend/actualizarEstatusPedido", (request, response) -> {
|
||||
response.type("application/json");
|
||||
String payload = request.body();
|
||||
JsonElement jsonElement = JsonParser.parseString(payload);
|
||||
JsonObject jsonObject = jsonElement.getAsJsonObject();
|
||||
String idPedido = jsonObject.get("datosId").getAsJsonObject().get("idPedido").getAsString();
|
||||
String nuevoEstatus = jsonObject.get("datosId").getAsJsonObject().get("nuevoEstatus").getAsString();
|
||||
|
||||
// Lógica para actualizar el estatus del pedido usando el ID
|
||||
boolean actualizado = DAO.actualizarEstatusPedido(idPedido, nuevoEstatus);
|
||||
|
||||
JsonObject respuesta = new JsonObject();
|
||||
if (actualizado) {
|
||||
respuesta.addProperty("msj", "Pedido actualizado exitosamente.");
|
||||
} else {
|
||||
respuesta.addProperty("msj", "No se encontró ningún pedido con el ID especificado.");
|
||||
}
|
||||
|
||||
return respuesta.toString();
|
||||
});
|
||||
|
||||
|
||||
post("/frontend/obtenerPedidosDePastelesAdmin", (request, response) -> {
|
||||
response.type("application/json");
|
||||
|
@ -483,6 +523,96 @@ public class App
|
|||
System.out.println(responseJson);
|
||||
return responseJson.toString();
|
||||
});
|
||||
|
||||
post("/frontend/agregarResenia", (request, response) -> {
|
||||
response.type("application/json");
|
||||
String payload = request.body();
|
||||
|
||||
try {
|
||||
JsonElement jsonElement = JsonParser.parseString(payload);
|
||||
JsonObject jsonObject = jsonElement.getAsJsonObject();
|
||||
|
||||
// Obtener los datos de la reseña del JSON recibido
|
||||
String nombreUsuario = jsonObject.get("nombreUsuario").getAsString();
|
||||
String idPastel = jsonObject.get("idPastel").getAsString();
|
||||
String contenido = jsonObject.get("contenido").getAsString();
|
||||
int estrellas = jsonObject.get("estrellas").getAsInt();
|
||||
|
||||
// Crear un nuevo objeto Reseñas y asignar los valores recibidos
|
||||
Reseñas reseña = new Reseñas();
|
||||
reseña.setIdReseña(UUID.randomUUID().toString());
|
||||
reseña.setNombreUsuario(nombreUsuario);
|
||||
reseña.setIdPastel(idPastel);
|
||||
reseña.setContenido(contenido);
|
||||
reseña.setEstrellas(estrellas);
|
||||
|
||||
// Puedes realizar acciones adicionales con la información de la reseña
|
||||
System.out.println("Reseña: " + reseña);
|
||||
|
||||
// Lógica para agregar la reseña en la base de datos
|
||||
String mensaje = DAO.agregarReseña(reseña);
|
||||
|
||||
// Crear la respuesta
|
||||
JsonObject respuesta = new JsonObject();
|
||||
respuesta.addProperty("msj", mensaje);
|
||||
|
||||
return gson.toJson(respuesta);
|
||||
} catch (JsonSyntaxException e) {
|
||||
// Manejar errores de formato JSON
|
||||
System.out.println("Error en el formato JSON: " + e.getMessage());
|
||||
response.status(400); // Bad Request
|
||||
return gson.toJson("Error en el formato JSON");
|
||||
} catch (Exception e) {
|
||||
// Manejar otros errores
|
||||
System.out.println("Error al agregar la reseña: " + e.getMessage());
|
||||
response.status(500); // Internal Server Error
|
||||
return gson.toJson("Error al agregar la reseña");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
post("/frontend/obtenerReseniasPorPastel", (request, response) -> {
|
||||
response.type("application/json");
|
||||
|
||||
// Obtener el ID del pastel desde el cuerpo de la solicitud
|
||||
JsonObject requestBody = new Gson().fromJson(request.body(), JsonObject.class);
|
||||
String idPastel = requestBody.get("idPastel").getAsString();
|
||||
|
||||
// Obtener las reseñas para el pastel
|
||||
List<Reseñas> reseñas = DAO.obtenerReseñasPorPastel(idPastel);
|
||||
|
||||
System.out.println("ID del pastel"+idPastel);
|
||||
|
||||
int numeroDeReseñas = reseñas.size();
|
||||
|
||||
System.out.println("Número de reseñas: " + numeroDeReseñas);
|
||||
|
||||
// Construir un objeto JSON con las reseñas
|
||||
JsonArray reseñasArray = new JsonArray();
|
||||
for (Reseñas reseña : reseñas) {
|
||||
JsonObject reseñaJson = new JsonObject();
|
||||
reseñaJson.addProperty("id_reseña", reseña.getIdReseña());
|
||||
reseñaJson.addProperty("nombre_usuario", reseña.getNombreUsuario());
|
||||
reseñaJson.addProperty("id_pastel", reseña.getIdPastel());
|
||||
reseñaJson.addProperty("contenido", reseña.getContenido());
|
||||
reseñaJson.addProperty("estrellas", reseña.getEstrellas());
|
||||
reseñasArray.add(reseñaJson);
|
||||
}
|
||||
|
||||
// Crear el objeto final que contiene todas las reseñas
|
||||
JsonObject responseJson = new JsonObject();
|
||||
responseJson.add("reseñas", reseñasArray);
|
||||
|
||||
System.out.println(responseJson);
|
||||
return responseJson.toString();
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ import java.sql.DriverManager;
|
|||
import java.sql.SQLException;
|
||||
|
||||
public class Conexion {
|
||||
private static String url = "jdbc:mysql://127.0.0.1:3306/dbpastel";
|
||||
private static String url = "jdbc:mysql://127.0.0.1:3306/dbpastel00";
|
||||
private static String driverName = "com.mysql.cj.jdbc.Driver";
|
||||
private static String username = "root";
|
||||
private static String password = "cesarin_11";
|
||||
private static String username = "pastel00";
|
||||
private static String password = "pastel00";
|
||||
// variable de conexion
|
||||
private static Connection connection = null;
|
||||
|
||||
|
|
|
@ -455,6 +455,166 @@ public static List<Pasteles> dameTodosLosPedidosDePasteles2() {
|
|||
return resultado;
|
||||
}
|
||||
|
||||
public static String agregarReseña(Reseñas reseña) {
|
||||
PreparedStatement stm = null;
|
||||
Connection conn = null;
|
||||
String mensaje = "";
|
||||
|
||||
conn = Conexion.getConnection();
|
||||
try {
|
||||
String sql = "INSERT INTO reseñas (nombreUsuario, idPastel, contenido, estrellas) VALUES (?,?,?,?)";
|
||||
stm = conn.prepareStatement(sql);
|
||||
stm.setString(1, reseña.getNombreUsuario());
|
||||
stm.setString(2, reseña.getIdPastel());
|
||||
stm.setString(3, reseña.getContenido());
|
||||
stm.setInt(4, reseña.getEstrellas());
|
||||
|
||||
if (stm.executeUpdate() > 0)
|
||||
mensaje = "Reseña agregada con éxito";
|
||||
else
|
||||
mensaje = "No se pudo agregar la reseña";
|
||||
|
||||
} catch (SQLException e) {
|
||||
System.out.println("Error al ejecutar la consulta: " + e.getMessage());
|
||||
} finally {
|
||||
if (stm != null) {
|
||||
try {
|
||||
stm.close();
|
||||
} catch (SQLException e) {
|
||||
System.out.println("Error al cerrar el statement: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
if (conn != null) {
|
||||
try {
|
||||
conn.close();
|
||||
} catch (SQLException e) {
|
||||
System.out.println("Error al cerrar la conexión: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
return mensaje;
|
||||
}
|
||||
|
||||
public static List<Reseñas> obtenerReseñasPorPastel(String idPastel) {
|
||||
Connection conn = null;
|
||||
PreparedStatement pstmt = null;
|
||||
ResultSet rs = null;
|
||||
List<Reseñas> resultado = new ArrayList<>();
|
||||
|
||||
try {
|
||||
conn = Conexion.getConnection();
|
||||
String sql = "SELECT r.idReseña, r.nombreUsuario, r.idPastel, r.contenido, r.estrellas "
|
||||
+ "FROM reseñas r "
|
||||
+ "WHERE r.idPastel = ?";
|
||||
pstmt = conn.prepareStatement(sql);
|
||||
pstmt.setString(1, idPastel);
|
||||
rs = pstmt.executeQuery();
|
||||
while (rs.next()) {
|
||||
Reseñas reseña = new Reseñas(
|
||||
rs.getString("idReseña"),
|
||||
rs.getString("nombreUsuario"),
|
||||
rs.getString("idPastel"),
|
||||
rs.getString("contenido"),
|
||||
rs.getInt("estrellas")
|
||||
);
|
||||
resultado.add(reseña);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
try {
|
||||
if (rs != null) rs.close();
|
||||
if (pstmt != null) pstmt.close();
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
return resultado;
|
||||
}
|
||||
|
||||
|
||||
public static boolean eliminarPedido(String idPedido) {
|
||||
System.out.println("ENTRO AL METODO: eliminarPedido");
|
||||
Statement stm = null;
|
||||
Connection conn = null;
|
||||
|
||||
conn = Conexion.getConnection();
|
||||
|
||||
try {
|
||||
String sql = "DELETE FROM pedidos WHERE idPedido = '" + idPedido + "'";
|
||||
stm = (Statement) conn.createStatement();
|
||||
int filasAfectadas = stm.executeUpdate(sql);
|
||||
|
||||
// Verificamos si se eliminó alguna fila
|
||||
if (filasAfectadas > 0) {
|
||||
System.out.println("Pedido eliminado exitosamente.");
|
||||
return true;
|
||||
} else {
|
||||
System.out.println("No se encontró ningún pedido con el ID especificado.");
|
||||
return false;
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
System.out.println("Error al eliminar el pedido: " + e);
|
||||
} finally {
|
||||
// Cierre de recursos
|
||||
if (stm != null) {
|
||||
try {
|
||||
stm.close();
|
||||
} catch (SQLException e) {
|
||||
System.out.println(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
public static boolean actualizarEstatusPedido(String idPedido, String nuevoEstatus) {
|
||||
System.out.println("ENTRO AL METODO: actualizarEstatusPedido");
|
||||
Statement stm = null;
|
||||
Connection conn = null;
|
||||
|
||||
conn = Conexion.getConnection();
|
||||
|
||||
try {
|
||||
String sql = "UPDATE pedidos SET estatus = '" + nuevoEstatus + "' WHERE idPedido = '" + idPedido + "'";
|
||||
stm = (Statement) conn.createStatement();
|
||||
int filasAfectadas = stm.executeUpdate(sql);
|
||||
|
||||
// Verificamos si se actualizó alguna fila
|
||||
if (filasAfectadas > 0) {
|
||||
System.out.println("Pedido actualizado exitosamente.");
|
||||
return true;
|
||||
} else {
|
||||
System.out.println("No se encontró ningún pedido con el ID especificado.");
|
||||
return false;
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
System.out.println("Error al actualizar el pedido: " + e);
|
||||
} finally {
|
||||
// Cierre de recursos
|
||||
if (stm != null) {
|
||||
try {
|
||||
stm.close();
|
||||
} catch (SQLException e) {
|
||||
System.out.println(e);
|
||||
}
|
||||
}
|
||||
try {
|
||||
conn.close();
|
||||
} catch (SQLException e) {
|
||||
System.out.println(e);
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,67 @@
|
|||
package mx.uv;
|
||||
|
||||
public class Reseñas {
|
||||
|
||||
String idReseña;
|
||||
String nombreUsuario;
|
||||
String idPastel;
|
||||
String contenido;
|
||||
int estrellas;
|
||||
|
||||
public String getIdReseña() {
|
||||
return idReseña;
|
||||
}
|
||||
|
||||
public void setIdReseña(String idReseña) {
|
||||
this.idReseña = idReseña;
|
||||
}
|
||||
|
||||
public String getNombreUsuario() {
|
||||
return nombreUsuario;
|
||||
}
|
||||
|
||||
public void setNombreUsuario(String nombreUsuario) {
|
||||
this.nombreUsuario = nombreUsuario;
|
||||
}
|
||||
|
||||
public String getIdPastel() {
|
||||
return idPastel;
|
||||
}
|
||||
|
||||
public void setIdPastel(String idPastel) {
|
||||
this.idPastel = idPastel;
|
||||
}
|
||||
|
||||
public String getContenido() {
|
||||
return contenido;
|
||||
}
|
||||
|
||||
public void setContenido(String contenido) {
|
||||
this.contenido = contenido;
|
||||
}
|
||||
|
||||
public int getEstrellas() {
|
||||
return estrellas;
|
||||
}
|
||||
|
||||
public void setEstrellas(int estrellas) {
|
||||
this.estrellas = estrellas;
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
return "Reseñas [idReseña=" + idReseña + ", nombreUsuario=" + nombreUsuario + ", idPastel=" + idPastel + ", contenido=" + contenido + ", estrellas=" + estrellas + "]";
|
||||
}
|
||||
|
||||
public Reseñas(){
|
||||
|
||||
}
|
||||
|
||||
public Reseñas(String idReseña, String nombreUsuario, String idPastel, String contenido, int estrellas) {
|
||||
this.idReseña = idReseña;
|
||||
this.nombreUsuario = nombreUsuario;
|
||||
this.idPastel = idPastel;
|
||||
this.contenido = contenido;
|
||||
this.estrellas = estrellas;
|
||||
}
|
||||
}
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue