%--
Document : exec_agregar_declarantes_user
Created on : 16/08/2013, 08:53:32 PM
Author : Martha
--%>
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page
import = "conexion.*"
import = "java.sql.*"
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("/");
%>
<%
Connection lcnt_con = null;
ResultSet lrs_res1 = null;
//Date hoy = new Date();
//Connection lcnt_con = null;
ResultSet lrs_res = null;
Statement lst_stm = null;
//ResultSet lrs_res2 = null;
Statement lst_stm1 = null;
/*Segunda Conexión*/
ConexionDeclaranet cd = null;
Connection lcd_connection = null;
//Statement lstg_conecta=null;
/*FIN. SEGUNDA CONEXIÓN*/
String ls_query = new String("");
String emergent_error = new String("");
boolean lb_connection = false;
String debug = new String("si");
String id_funcionario = new String("");
String id_dom_puesto = new String("");
String id_puesto_funcionario = new String("");
String id_altabaja = new String("");
String clave = new String("");
int clavemas=0;
int codigop;
boolean valido = true;
Date fechaActual = new Date();
SimpleDateFormat formato = new SimpleDateFormat("yyyy-MM-dd");
String resultado = formato.format(fechaActual);
String id_tipo_cargo = new String();
java.sql.Date fechaSesenta = null;
Date hoy = new Date();
int dias = 0;
String status = "";
String pwd="";
int id_usuarios = 0;
//int id_funcionario = 0;
String sexo = "";
//int codigop = 0;
// Conexión a la base de datos
try {
if (!Config.getParametro("debug").equals("si"))
debug = "no";
Conexion c=new Conexion();
lcnt_con= c.getConnection();
lst_stm1=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;
}
/********* INICIO. Conexión a la base de datos ********/
try {
if (!Config.getParametro("debug").equals("si")) {
debug = "no";
}
cd = new ConexionDeclaranet();
lcd_connection = cd.getConnection();
lst_stm = lcd_connection.createStatement();
lb_connection = true;
}catch (Exception e) {
emergent_error = "Error al conectarse a la base de datos 2 ";
}
/********* FIN. Conexión a la base de datos ********/
//********* 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();
lcd_connection.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 {
%>
Actualizando la base de datos, espere por favor...
<%
lst_stm.executeUpdate("START TRANSACTION;");
if(request.getParameter("id_funcionario") != null){
if(Integer.parseInt(request.getParameter("id_funcionario"))>0){
id_funcionario=request.getParameter("id_funcionario");
}
}
else{
id_funcionario="";
}
if(id_funcionario != null){
if(id_funcionario.equals("")){
ls_query = "INSERT INTO funcionarios("
+ "nombre, ap_paterno, ap_materno, rfc, sexo"
+ ") VALUES("
+ " '" + request.getParameter("nombre").trim() + "', "
+ " '" + request.getParameter("ap_paterno").trim() + "', "
+ " '" + request.getParameter("ap_materno").trim() + "', "
+ " '" + request.getParameter("rfc").trim() + "', "
+ request.getParameter("tipo_sexo_1")+" "
+");";
lst_stm.executeUpdate(ls_query);
lrs_res = lst_stm.executeQuery("SELECT LAST_INSERT_ID() as id_funcionario;");
if (lrs_res.next()) {
id_funcionario = lrs_res.getString("id_funcionario");
}
}
}
if(request.getParameter("cp").equals("") || request.getParameter("cp").equals("0")){
codigop=0;
}
else{
codigop=Integer.parseInt(request.getParameter("cp"));
}
ls_query = "INSERT INTO domicilios "
+ "(tipo, calle, num, col, cd, id_municipio, cp, id_funcionario, id_edo, tel, interior )"
+ " values (1, "
+ "'" + request.getParameter("calle") + "' , "
+ "'" + request.getParameter("num") + "' , "
+ "'" + request.getParameter("col") + "' , "
+ "'" + request.getParameter("cd") + "' , "
+ request.getParameter("municipio") + ", "
+ codigop + ", "
+ id_funcionario +","
+ request.getParameter("edo_fed") + ","
+ "'"+request.getParameter("tel")+"', "
+ request.getParameter("int")+""
+")";
lst_stm.executeUpdate(ls_query);
/*if (request.getParameter("id_dom_puesto") != null ){
if(request.getParameter("cp_1") != null){
if(request.getParameter("cp_1").equals("") || request.getParameter("cp_1").equals("0")){
codigop =0;
}else{
codigop=Integer.parseInt(request.getParameter("cp_1"));
}
}else{
codigop =0;
}
if(request.getParameter("id_dom_puesto").equals("")){
id_dom_puesto="0";
}else{
id_dom_puesto=request.getParameter("id_dom_puesto");
}
if(Integer.parseInt(id_dom_puesto)>0){
ls_query = "update dom_cargo_funcionario set "
+ "calle='" + request.getParameter("calle_1") + "', "
+ "num='" + request.getParameter("num_1") + "', "
+ "col='" + request.getParameter("col_1") + "', "
+ "cd='" + request.getParameter("cd_1") + "', "
+ "id_municipio=" + request.getParameter("municipio") + ", "
+ "cp=" + codigop + ", "
+ "id_edo=" + request.getParameter("edo_fed")+", "
+ "tel='" + request.getParameter("tel_1")+"' "
+ "where id_dom_puesto="+request.getParameter("id_dom_puesto");
lst_stm.executeUpdate(ls_query);
}
else{
if(request.getParameter("calle_1") != null){
ls_query = "INSERT INTO dom_cargo_funcionario ("
+ "calle, num, col, cd, "
+ "id_municipio, cp, id_edo, tel"
+ ") VALUES( "
+ " '" + request.getParameter("calle_1") + "', "
+ " '" + request.getParameter("num_1") + "',"
+ " '" + request.getParameter("col_1") + "',"
+ " '" + request.getParameter("cd_1") + "',"
+ " " + request.getParameter("municipio") + ", "
+ " " + codigop +", "
+ " " + request.getParameter("edo_fed")+", "
+ " '" + request.getParameter("tel_1")+"'"
+ " );";
lst_stm.executeUpdate(ls_query);
lrs_res = lst_stm.executeQuery("SELECT LAST_INSERT_ID() as id_dom_puesto");
if (lrs_res.next()) {
id_dom_puesto = lrs_res.getString("id_dom_puesto");
}
}
}
}*/
//if(request.getParameter("id_puesto")==null){
if(request.getParameter("id_puesto").equals("") || request.getParameter("id_puesto").equals("0")){
ls_query = "INSERT INTO puesto_funcionario("
+ " id_tipo_cargo, area, id_dependencia, "
+ "id_area_adscripcion, id_dom_puesto, tipo "
+ ") VALUES( "
+ " " + request.getParameter("id_cat_tipo_puesto") + ", "
+ " '" + request.getParameter("area").trim() + "',"
+ " " + request.getParameter("id_cat_dep") + ","
+ " " + request.getParameter("id_ur") + ", "
+ " 0, 'd'"
+ " );";
lst_stm.executeUpdate(ls_query);
lrs_res = lst_stm.executeQuery("SELECT LAST_INSERT_ID() as id_puesto_funcionario");
if (lrs_res.next()) {
id_puesto_funcionario = lrs_res.getString("id_puesto_funcionario");
}
//}
}else{
ls_query = "update puesto_funcionario set "
+ "id_tipo_cargo="+ id_tipo_cargo + ", "
+ "area='" + request.getParameter("area").trim() + "', "
+ "id_dependencia="+ request.getParameter("id_cat_dep") + ", "
+ "id_area_adscripcion="+ request.getParameter("id_ur") + ", "
+ " id_dom_puesto=0"
+ " where id_puesto_funcionario="+request.getParameter("id_puesto")+";";
lst_stm.executeUpdate(ls_query);
id_puesto_funcionario=request.getParameter("id_puesto");
}
if(request.getParameter("id_altabaja") == null || request.getParameter("id_altabaja").equals("0")){
ls_query = "INSERT INTO altabaja("
+ "fecha_alta, id_funcionario,"
+ "status, id_historial, clave, id_puesto_funcionario"
+ ") VALUES( "
+ " '" + request.getParameter("fecha_inicio") + "', "
+ " " + (id_funcionario) + ", "
+ " 1, "
+ " 0, "
+ " 'C', "
+ id_puesto_funcionario+ ");";
lst_stm.executeUpdate(ls_query);
lrs_res = lst_stm.executeQuery("SELECT LAST_INSERT_ID() as id_altabaja");
if (lrs_res.next()) {
id_altabaja = lrs_res.getString("id_altabaja");
}
}else{
if(request.getParameter("id_fechafinal") != null){
ls_query="update altabaja set "
+ "fecha_baja='"+request.getParameter("fecha_final") +"', "
+ "status=0 "
+ "where id_altabaja="+request.getParameter("id_altabaja") +"";
lst_stm.executeUpdate(ls_query);
}
if(request.getParameter("id_fechainicial") != null){
ls_query="update altabaja set "
+ "fecha_alta='"+request.getParameter("fecha_inicio") +"' "
+ "where id_altabaja="+request.getParameter("id_altabaja") +"";
lst_stm.executeUpdate(ls_query);
}
id_altabaja=request.getParameter("id_altabaja");
if(!id_puesto_funcionario.equals("")){
ls_query="update altabaja set "
+ " id_puesto_funcionario="+id_puesto_funcionario
+ " where id_altabaja="+request.getParameter("id_altabaja") +"";
lst_stm.executeUpdate(ls_query);
}
}
//if(Integer.parseInt(request.getParameter("id_funcionario"))>0){
//funcionarios.selectfuncionario(Integer.parseInt(request.getParameter("id_funcionario")));
if(Integer.parseInt(request.getParameter("tipo_sexo_1"))==1){
sexo="f";
}else{
sexo="m";
}
//}
if(request.getParameter("status") != null){
if(Integer.parseInt(request.getParameter("status"))==1){
status="b";
}
}else{
status="a";
}
//if(Integer.parseInt(request.getParameter("id_usuarios"))<=0){
//Inserta los datos del nuevo usuario en la base de datos
ls_query="INSERT INTO usuarios (nombre_usuario, contrasena_usuario, email, status, id_area, "
+ "paterno, materno, nombre_real, sexo, ife, fecha_inicio) VALUES('"+
request.getParameter("rfc")+"', '"+request.getParameter("contrasena_usuario")+"', "
+"'"+request.getParameter("email")+"', '"+status+"', 11, "
+"'"+ request.getParameter("ap_paterno")+"', "
+"'"+request.getParameter("ap_materno")+"', "
+"'"+request.getParameter("nombre")+"', "
+ "'"+sexo+"', "
+ "'"+request.getParameter("ife")+"', '"+resultado+"'"
+ ");";
lst_stm1.executeUpdate(ls_query);
lrs_res1=lst_stm1.executeQuery("select last_insert_id() as id_usuarios");
if(lrs_res1.next()){
id_usuarios=lrs_res1.getInt("id_usuarios");
}
//Inserta el perfil del usuario en la tabla de relaciones de usuarios con perfiles
ls_query="INSERT INTO rel_usuarios_perfil (id_usuarios, id_rel_perfiles_modulos) VALUES ((SELECT max(id_usuarios) FROM usuarios), 5);";
lst_stm1.executeUpdate(ls_query);
lst_stm1.executeUpdate("COMMIT;");
/* }else{
if(request.getParameter("decodedpw").equals("")){
pwd="";
}else{
pwd="contrasena_usuario='"+request.getParameter("contrasena_usuario")+"', ";
}
ls_query="update usuarios set "
+ "nombre_usuario='"+request.getParameter("nombre_usuario")+"', "
+ pwd
+ "email='"+request.getParameter("email")+"', "
+ "status='"+status+"' "
+"where id_usuarios="+request.getParameter("id_usuarios")+";";
lst_stm.executeUpdate(ls_query);
lst_stm.executeUpdate("COMMIT;");
id_usuarios=Integer.parseInt(request.getParameter("id_usuarios"));
}*/
//if(Integer.parseInt(request.getParameter("id_funcionario"))<=0){
/*lst_stm1.executeUpdate("START TRANSACTION;");
ls_query="INSERT INTO funcionarios (nombre, ap_paterno, ap_materno, id_usuarios) "
+ "VALUES('', '', '', "+id_usuarios+");" ;
lst_stm1.executeUpdate(ls_query);
lrs_res1=lst_stm.executeQuery("select last_insert_id() as id_funcionario");
if(lrs_res1.next()){
id_funcionario=lrs_res1.getInt("id_funcionario");
}
lst_stm1.executeUpdate("COMMIT;");*/
// }else{
lst_stm.executeUpdate("START TRANSACTION;");
ls_query="update funcionarios set "
+ "id_usuarios="+id_usuarios
+" where id_funcionario="+id_funcionario+";";
lst_stm.executeUpdate(ls_query);
lst_stm.executeUpdate("COMMIT;");
//id_funcionario=Integer.parseInt(request.getParameter("id_funcionario"));
// }
if(id_usuarios>0){
%>
<%
}
//Registrar en la bitácora
try {
String mensaje_log = new String("");
mensaje_log = "Usuario -" + session.getAttribute("username").toString() + "- agrego el Declarante Nuevo - " + id_funcionario + " , " + request.getParameter("nombre") + request.getParameter("ap_paterno") + request.getParameter("ap_materno") + " - en el DEclaranet;";
Config.GuardarLog(Integer.parseInt(session.getAttribute("id_user").toString()), mensaje_log, 3);
} catch (Exception e) {
}
session.setAttribute("mensaje_pendiente", "El sistema ha sido actualizado, los datos del Declarante - " + id_funcionario + " - fueron actualizados.");
lst_stm.executeUpdate("COMMIT;");
%>
<%
} catch (Exception e) {
emergent_error = "Error al actualizar la base de datos ";
lst_stm.executeUpdate("ROLLBACK;");
lst_stm1.executeUpdate("ROLLBACK;");
if (debug.equals("si")) {
emergent_error += e + " Query actual: " + ls_query;
}
%>
<%=emergent_error%>
<%
} finally {
lst_stm.close();
lcd_connection.close();
}
} else {
%>
<%=emergent_error%>
<%
}
%>