%--
Document : exec_cerrar_ticket
Created on : 28/11/2011, 11:32:02 AM
Author : psoto
--%>
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page
import = "conexion.*"
import = "java.sql.*"
import = "own.codec.*"
import = "general.Config"
import = "general.Permisos"
import = "java.util.Date"
import = "java.text.SimpleDateFormat"
%>
Actualizando el sistema...
<%
/************************** Guarda los cambios hechos a los datos del usuario en la base de datos **************************************/
out.println("");
String nompag[] = request.getRequestURI().split("/");
Date hoy = new Date();
SimpleDateFormat formato = new SimpleDateFormat("yyyyMMdd");
String fecha_hoy = formato.format(hoy);
%>
<%
Connection lcnt_con = null;
ResultSet lrs_res = null;
Statement lst_stm = null;
String ls_query = new String("");
String emergent_error = new String("");
boolean lb_connection = false;
String debug = new String("si");
String id_tickets = new String("si");
int consecutivo = 0;
// Conexión a la base de datos
try {
if (!Config.getParametro("debug").equals("si")) {
debug = "no";
}
ConexionEquipos c = new ConexionEquipos();
lcnt_con = c.getConnection();
lst_stm = lcnt_con.createStatement();
lb_connection = true;
} catch (Exception e) {
emergent_error = "Error al conectarse a la base de datos ";
if (debug.equals("si")) {
emergent_error += e;
}
lb_connection = false;
}
//********* Validación fundamental para evitar ejecución de código sin privilegios suficientes **********//
try {
if (!Permisos.PermisoModulo(nompag[nompag.length - 1].toString(), Integer.parseInt(session.getAttribute("id_user").toString()))) {
if (lb_connection) {
lst_stm.close();
lcnt_con.close();
}
emergent_error += " Privilegios insuficientes. ";
lb_connection = false;
}
} catch (Exception e) {
emergent_error += " Privilegios insuficientes. ";
if (debug.equals("si")) {
emergent_error += "Trace: " + e.toString();
}
lb_connection = false;
}
//*******************************************************************************************************//
if (lb_connection) {
try {
id_tickets = new codec().codec(request.getParameter("id_tickets"), 0);
lst_stm.executeUpdate("START TRANSACTION;");
ls_query = "UPDATE tickets "
+ " SET "
+ " observaciones_cierre = '" + request.getParameter("descripcion") + "', "
+ " tipo_cerrado = '" + request.getParameter("tipo_cerrado") + "', "
+ " cerrado = true , "
+ "fecha_cierre = NOW() "
+ " WHERE id_tickets="+id_tickets+ " ;";
lst_stm.executeUpdate(ls_query);
//Registrar en la bitácora
try {
String mensaje_log = new String("");
mensaje_log = "Usuario -" + session.getAttribute("username").toString() + "- cerró el la Ticket -"+id_tickets+"- con un estado de -"+(request.getParameter("tipo_cerrado").equals("ce")?"Con exito":(request.getParameter("tipo_cerrado").equals("se")?"Sin Exito":"Cancelado"))+"- ;";
Config.GuardarLog(Integer.parseInt(session.getAttribute("id_user").toString()), mensaje_log, 3);
} catch (Exception e) {
}
session.setAttribute("mensaje_pendiente", "El Ticket #"+request.getParameter("clave_ticket") +" fue cerrado con un estado de '"+(request.getParameter("tipo_cerrado").equals("ce")?"Con exito":(request.getParameter("tipo_cerrado").equals("se")?"Sin Exito":"Cancelado"))+"' .");
lst_stm.executeUpdate("COMMIT;");
%>
<%
} catch (Exception e) {
emergent_error = "Error al actualizar la base de datos ";
lst_stm.executeUpdate("ROLLBACK;");
if (debug.equals("si")) {
emergent_error += e + " Query actual: " + ls_query;
}
%>
<%=emergent_error%>
<%
} finally {
lst_stm.close();
lcnt_con.close();
}
} else {
%>
<%=emergent_error%>
<%
}
%>