public bool DatInsertaLectura(Int32 idSensor, Int32 idVariable, Int32 datoVariable, Int32 intidEstatusLinea)
        {
            try
            {
                SqlConnection connection = null;
                Boolean       respuesta;
                String        NumOrdenActivo = "";

                using (connection = Conexion.ObtieneConexion())
                {
                    connection.Open();

                    NumOrdenActivo = Ejecuta.EjecutarConsulta(connection, null, "SELECT NumOrden,totalPiezas,cantidadProducida,estatus,idPersonal FROM MAEOrden WHERE estatus= 1", false).Rows[0]["NumOrden"].ToString();
                    NumOrdenActivo = (NumOrdenActivo != "") ? NumOrdenActivo : "0";

                    respuesta = Ejecuta.ConsultaSinRetorno1(connection, "UPDATE MAEOrden SET cantidadProducida =" + datoVariable.ToString() + " WHERE NumOrden = " + NumOrdenActivo + " INSERT INTO DETOrden (NumOrden,idSensor,idVariableMedida,valorVariable,fechaHora) VALUES(" + NumOrdenActivo + "," + idSensor.ToString() + "," + idVariable.ToString() + "," + datoVariable.ToString() + ",getdate())");
                    connection.Close();
                }
                return(respuesta);
            }
            catch (Exception Falla)
            {
                throw new Exception(Falla.Message, Falla);
            }
        }
        public static void ComplementaCamposTransaccion(ref Entidades.Transaccion Transac)
        {
            SqlConnection connection        = null;
            DataTable     CamposComplemento = new DataTable();

            Console.WriteLine(CamposComplemento);
            List <Entidades.CampoenCabecera> ListaCamposComplementoCab = new List <Entidades.CampoenCabecera>();
            List <Entidades.CampoenDetalle>  ListaCamposComplementoDet = new List <Entidades.CampoenDetalle>();

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    var parametros = new[]
                    {
                        ParametroAcceso.CrearParametro("@idTransaccion", SqlDbType.Int, Transac.idTransaccion, ParameterDirection.Input)
                    };
                    connection.Open();
                    CamposComplemento = Ejecuta.EjecutarConsulta(connection, parametros, "[dbo].[SpObtener_CamposComplementoTransacciones]");
                    connection.Close();
                    if (CamposComplemento.Rows.Count > 0)
                    {
                        DataSet dtCamposComplemento = ConvertJsonStringToDataSet(CamposComplemento.Rows[0][0].ToString());
                        //Datos Cabecera
                        foreach (DataRow Campo in dtCamposComplemento.Tables["Cabecera"].Rows)
                        {
                            Entidades.CampoenCabecera CampoCabecera = new Entidades.CampoenCabecera();
                            CampoCabecera.idCampo         = Convert.ToInt32(Campo["idCampo"].ToString());
                            CampoCabecera.idTipoDatoCampo = Convert.ToInt32(Campo["idTipodeDatoCampo"].ToString());
                            CampoCabecera.nombreCampo     = Campo["nombreCampo"].ToString();
                            CampoCabecera.valor           = Campo["valor"].ToString();
                            ListaCamposComplementoCab.Add(CampoCabecera);
                        }
                        Transac.CamposComplementoCabecera = ListaCamposComplementoCab.ToArray();
                        //Datos Detalle
                        foreach (DataRow Campo in dtCamposComplemento.Tables["Detalle"].Rows)
                        {
                            Entidades.CampoenDetalle CampoDetalle = new Entidades.CampoenDetalle();
                            CampoDetalle.idFila          = Convert.ToInt32(Campo["idFila"].ToString());
                            CampoDetalle.idCampo         = Convert.ToInt32(Campo["idCampo"].ToString());
                            CampoDetalle.idTipoDatoCampo = Convert.ToInt32(Campo["idTipodeDatoCampo"].ToString());
                            CampoDetalle.nombreCampo     = Campo["nombreCampo"].ToString();
                            CampoDetalle.valor           = Campo["valor"].ToString();
                            ListaCamposComplementoDet.Add(CampoDetalle);
                        }
                        Transac.DetalleTransaccion = ListaCamposComplementoDet.ToArray();
                    }
                    else
                    {
                        Transac.CamposComplementoCabecera = ListaCamposComplementoCab.ToArray();
                        Transac.DetalleTransaccion        = ListaCamposComplementoDet.ToArray();
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
        }
        public Entidades.CamposTransaccion ArmaFormulario(int idTransaccion)
        {
            SqlConnection connection    = null;
            DataTable     Transacciones = new DataTable();

            Console.WriteLine(Transacciones);
            Entidades.CamposTransaccion campos = new Entidades.CamposTransaccion();
            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    var parametros = new[]
                    {
                        ParametroAcceso.CrearParametro("@idTransaccion", SqlDbType.Int, idTransaccion, ParameterDirection.Input)
                    };

                    connection.Open();
                    Transacciones = Ejecuta.EjecutarConsulta(connection, parametros, "[dbo].[SpObtenerTransaccion]");
                    Console.WriteLine(Transacciones);
                    connection.Close();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }


            return(campos);
        }
        public static List <XmlDocument> ConsultaTransacciones(int idEstatus)
        {
            DataTable Transacciones = new DataTable();

            Console.WriteLine(Transacciones);
            SqlConnection connection    = null;
            XmlDocument   serializedXML = new XmlDocument();

            List <XmlDocument> ListaTransacciones = new List <XmlDocument>();

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    {
                        ParametroAcceso.CrearParametro("@idEstatus", SqlDbType.Int, idEstatus, ParameterDirection.Input);
                    }
                    connection.Open();
                    Transacciones = Ejecuta.EjecutarConsulta(connection, null, "[dbo].[SpObtener_Transacciones]");
                    connection.Close();

                    foreach (DataRow Transaccion in Transacciones.Rows)
                    {
                        Entidades.Transaccion Transac = new Entidades.Transaccion();
                        Transac.idTransaccion    = Convert.ToInt32(Transaccion["idTransaccion"].ToString());
                        Transac.idTipoTrasaccion = Convert.ToInt32(Transaccion["idTipoTransaccion"].ToString());
                        Transac.idUsuario        = Convert.ToInt32(Transaccion["idUsuario"].ToString());
                        Transac.idEstatus        = Convert.ToInt32(Transaccion["idEstatus"].ToString());
                        Transac.fechaTransaccion = Transaccion["fechaIniTransaccion"].ToString();
                        Transac.claveTT          = Transaccion["cveTipoTransaccion"].ToString();
                        ComplementaCamposTransaccion(ref Transac);
                        //Serializa la clase para convertirla a estructura XML
                        XmlSerializer mySerializer = new XmlSerializer(typeof(Entidades.Transaccion));
                        MemoryStream  memStream    = new MemoryStream();
                        StreamWriter  streamWriter = new StreamWriter(memStream);
                        mySerializer.Serialize(streamWriter, Transac);
                        memStream.Position = 0;
                        StreamReader streamReader = new StreamReader(memStream);
                        serializedXML.Load(streamReader);
                        ListaTransacciones.Add(serializedXML);
                    }
                    return(ListaTransacciones);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
        }
        public static XmlDocument CamposTransaccion(int idTransaccion)
        {
            DataTable Transacciones = new DataTable();

            Console.WriteLine(Transacciones);
            SqlConnection connection    = null;
            XmlDocument   serializedXML = new XmlDocument();

            XmlDocument composTransacciones = new XmlDocument();

            Console.WriteLine(composTransacciones);
            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    var parametros = new[]
                    {
                        ParametroAcceso.CrearParametro("@idTransaccion", SqlDbType.Int, idTransaccion, ParameterDirection.Input)
                    };
                    connection.Open();
                    Transacciones = Ejecuta.EjecutarConsulta(connection, parametros, "[dbo].[SpObtenerTransaccion]");
                    connection.Close();

                    foreach (DataRow Transaccion in Transacciones.Rows)
                    {
                        Entidades.CamposTransaccion comptran = new Entidades.CamposTransaccion();
                        comptran.idTipoTrasaccion   = Convert.ToInt32(Transaccion["idTipoTransaccion"].ToString());
                        comptran.descripcion        = Transaccion["descripcion"].ToString();
                        comptran.cveTipoTransaccion = Transaccion["cveTipoTransaccion"].ToString();
                        comptran.activo             = Convert.ToBoolean(Transaccion["activo"].ToString());
                        CamposTransaccion(ref comptran);
                        //Serializa la clase para convertirla a estructura XML
                        XmlSerializer mySerializer = new XmlSerializer(typeof(Entidades.CamposTransaccion));
                        MemoryStream  memStream    = new MemoryStream();
                        StreamWriter  streamWriter = new StreamWriter(memStream);
                        mySerializer.Serialize(streamWriter, comptran);
                        memStream.Position = 0;
                        StreamReader streamReader = new StreamReader(memStream);
                        serializedXML.Load(streamReader);
                    }
                    return(serializedXML);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
        }
예제 #6
0
        // Método Consulta en la BD en List
        public static DataTable ObtieneUsuarios(String usuario, String contrasena)
        {
            DataTable     Lecturas   = new DataTable();
            SqlConnection connection = new SqlConnection();

            try {
                using (connection = Conexion.ObtieneConexion("ConexionBD")) {
                    connection.Open();
                    Lecturas = Ejecuta.EjecutarConsulta(connection, null, "SELECT * FROM [RecursosHumanos].[DatosdeAcceso] INNER JOIN [RecursosHumanos].[Personal] ON [RecursosHumanos].[DatosdeAcceso].[idPerfil] = [RecursosHumanos].[Personal].[idPerfil] WHERE credencial='" + usuario + "' and contrasenia='" + contrasena + "' ", false);
                    connection.Close();
                }
            } catch (Exception ex) {
                connection.Close();
                throw new Exception("Error en obtener los estados por máquina  \r\nError: " + ex.Message, ex);
            }
            return(Lecturas);
        }
        public ComboPrivilegiosCHK LlenaCheckBoxPrivilegiosEdit(int idPersonal, int idUsuario, int idRol)
        {
            ComboPrivilegiosCHK listaPrivilegiosCHK = new ComboPrivilegiosCHK();

            DataTable     dt         = new DataTable();
            SqlConnection connection = null;
            List <CamposPrivilegiosCHK> composList = new List <CamposPrivilegiosCHK>();

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    SqlDataReader consulta;
                    connection.Open();
                    var parametros = new[] {
                        ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.Int, idPersonal, ParameterDirection.Input),
                        ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.Int, idUsuario, ParameterDirection.Input),
                        ParametroAcceso.CrearParametro("@idRol", SqlDbType.Int, idRol, ParameterDirection.Input)
                    };
                    //consulta = Ejecuta.ConsultaConRetorno(connection, "Usp_CombCP", parametros);
                    DataTable prueba = Ejecuta.EjecutarConsulta(connection, parametros, "Usp_CombPrivilegiosCHKMostrar");

                    dt = prueba;
                    connection.Close();
                }
                foreach (DataRow row in dt.Rows)
                {
                    CamposPrivilegiosCHK reg = new CamposPrivilegiosCHK();
                    reg.idPrivilegio          = Convert.ToInt32(row["idPrivilegio"].ToString());
                    reg.descripcionPrivilegio = row["descripcionPrivilegio"].ToString();
                    reg.estatus = row["estatus"].ToString();
                    composList.Add(reg);
                }
                listaPrivilegiosCHK.listaPrivilegiosCHK = composList.ToArray();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
            return(listaPrivilegiosCHK);
        }
        public Maquina LlenaMaquina(int idDepartamento)
        {
            Maquina              campos         = new Maquina();
            DataTable            dt             = new DataTable();
            List <CamposMaquina> ListaRegistros = new List <CamposMaquina>();


            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    // SqlDataReader consulta;
                    connection.Open();
                    var parametros = new[] {
                        ParametroAcceso.CrearParametro("@idDepartamento", SqlDbType.Int, idDepartamento, ParameterDirection.Input)
                    };
                    //consulta = Ejecuta.ConsultaConRetorno(connection, "Usp_CombCP", parametros);
                    DataTable prueba = Ejecuta.EjecutarConsulta(connection, parametros, "Usp_CombMaq");
                    dt = prueba;
                    connection.Close();
                }


                foreach (DataRow row in dt.Rows)
                {
                    CamposMaquina reg = new CamposMaquina();
                    reg.IdMaquina   = Convert.ToInt32(row["idMaquina"].ToString());
                    reg.Descripcion = row["descripcion"].ToString();
                    ListaRegistros.Add(reg);
                }
                campos.ListaRegistrosMaquina = ListaRegistros.ToArray();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            return(campos);
        }
        public CodigoPostal LlenaComboCP(int idEstado)
        {
            CodigoPostal    campos        = new CodigoPostal();
            DataTable       dt            = new DataTable();
            List <CamposCP> ListaCamposCP = new List <CamposCP>();


            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    SqlDataReader consulta;
                    connection.Open();
                    var parametros = new[] {
                        ParametroAcceso.CrearParametro("@IdEstado", SqlDbType.Int, idEstado, ParameterDirection.Input)
                    };
                    //consulta = Ejecuta.ConsultaConRetorno(connection, "Usp_CombCP", parametros);
                    DataTable prueba = Ejecuta.EjecutarConsulta(connection, parametros, "Usp_CombCP");
                    dt = prueba;
                    connection.Close();
                }


                foreach (DataRow row in dt.Rows)
                {
                    CamposCP reg = new CamposCP();
                    reg.c_CP     = Convert.ToInt32(row["c_CP"].ToString());
                    reg.d_ciudad = row["d_ciudad"].ToString();
                    ListaCamposCP.Add(reg);
                }
                campos.ListaRegistroCP = ListaCamposCP.ToArray();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            return(campos);
        }
        public ComboCP LlenaComboCP(int idEstado)
        {
            ComboCP   listaCodigosPostales = new ComboCP();
            DataTable dt = new DataTable();
            List <CamposCodigosPostales> composList = new List <CamposCodigosPostales>();


            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    SqlDataReader consulta;
                    connection.Open();
                    var parametros = new[] {
                        ParametroAcceso.CrearParametro("@IdEstado", SqlDbType.Int, idEstado, ParameterDirection.Input)
                    };
                    //consulta = Ejecuta.ConsultaConRetorno(connection, "Usp_CombCP", parametros);
                    DataTable prueba = Ejecuta.EjecutarConsulta(connection, parametros, "Usp_CombCPxEstadoMostrar");
                    dt = prueba;
                    connection.Close();
                }


                foreach (DataRow row in dt.Rows)
                {
                    CamposCodigosPostales reg = new CamposCodigosPostales();
                    reg.id     = Convert.ToInt32(row["id"].ToString());
                    reg.nombre = row["nombre"].ToString();
                    composList.Add(reg);
                }
                listaCodigosPostales.listaCodigosPostales = composList.ToArray();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            return(listaCodigosPostales);
        }
예제 #11
0
        public Area LlenaCheckBoxAreasEdit(CamposArea camposArea)
        {
            DataTable         dt         = new DataTable();
            Area              campos     = new Area();
            List <CamposArea> camposList = new List <CamposArea>();

            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    connection.Open();
                    var parametros = new[] {
                        ParametroAcceso.CrearParametro("@idArea", SqlDbType.Int, camposArea.idArea, ParameterDirection.Input)
                    };
                    dt = Ejecuta.EjecutarConsulta(connection, parametros, "Usp_CatMostrarAreasXSucursal");

                    connection.Close();
                }
                foreach (DataRow row in dt.Rows)
                {
                    CamposArea reg = new CamposArea();
                    reg.camposSucursal            = new CamposSucursal();
                    reg.camposSucursal.idSucursal = Convert.ToInt32(row["idSucursal"].ToString());
                    reg.camposSucursal.nombre     = row["nombre"].ToString();
                    reg.chkSucursal = row["isCheck"].ToString();
                    camposList.Add(reg);
                }
                campos.listaRegistrosAreas = camposList.ToArray();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
            return(campos);
        }
        public Roles LlenaCheckBoxRolEdit(CamposRoles camposRoles)
        {
            DataTable          dt         = new DataTable();
            Roles              campos     = new Roles();
            List <CamposRoles> camposList = new List <CamposRoles>();

            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    connection.Open();
                    var parametros = new[] {
                        ParametroAcceso.CrearParametro("@idRol", SqlDbType.Int, camposRoles.idRol, ParameterDirection.Input)
                    };
                    dt = Ejecuta.EjecutarConsulta(connection, parametros, "Usp_CatMostrarRolesXMenu");

                    connection.Close();
                }
                foreach (DataRow row in dt.Rows)
                {
                    CamposRoles reg = new CamposRoles();
                    reg.camposMenus            = new CamposMenus();
                    reg.camposMenus.idMenu     = Convert.ToInt32(row["idMenu"].ToString());
                    reg.camposMenus.nombreMenu = row["nombreMenu"].ToString();
                    reg.chkMenu = row["isCheck"].ToString();
                    camposList.Add(reg);
                }
                campos.listaRegistrosRoles = camposList.ToArray();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
            return(campos);
        }
        public static DataTable TiposTransacciones()
        {
            DataTable Transacciones = new DataTable();

            Console.WriteLine(Transacciones);
            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    connection.Open();
                    Transacciones = Ejecuta.EjecutarConsulta(connection, null, "[dbo].[SpTiposTransacciones]");
                    connection.Close();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
            return(Transacciones);
        }
        public bool eliminarPersonalUsuario(int idPersonal, int idUsuario, int idRolAnterior)
        {
            bool respuesta                  = false;
            ConvertJsonToDataset cj         = new ConvertJsonToDataset();
            SqlConnection        connection = null;
            int existePersonal              = 0;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    connection.Open();
                    //Parametros de entrada para la eliminacion de PersonalUsuario
                    var parametrosPersonalUsuarioElimina = new[]
                    {
                        ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.Int, idPersonal, ParameterDirection.Input),
                        ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.Int, idUsuario, ParameterDirection.Input),
                        ParametroAcceso.CrearParametro("@idRol", SqlDbType.Int, idRolAnterior, ParameterDirection.Input)
                    };
                    //Ejecuta el sp de eliminacion de PersonalUsuario
                    DataTable regresaPersona = Ejecuta.EjecutarConsulta(connection, parametrosPersonalUsuarioElimina, "[dbo].[Usp_CnfPersonalUsuariosTEliminar]");

                    //Itera el datatable donde el primer registro que regresa indica si existe otro usuario en la tabla
                    foreach (DataRow row in regresaPersona.Rows)
                    {
                        existePersonal = Convert.ToInt32(row["existePersonal"].ToString());
                    }

                    connection.Close();

                    connection.Open();
                    //Parametros de entrada para la eliminacion de usuario
                    var parametrosUsuario = new[]
                    {
                        ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.Int, idUsuario, ParameterDirection.Input),
                    };
                    //Ejecuta el sp de eliminacion de usuario
                    Ejecuta.ProcedimientoAlmacenado(connection, "[dbo].[Usp_CnfUsuariosTEliminar]", parametrosUsuario);
                    connection.Close();

                    //Si no existen mas usuarios en la tabla de personal usuario, se elimina la persona de la tabla de personal
                    if (existePersonal == 0)
                    {
                        connection.Open();
                        //Parametros de entrada para la eliminacion de personal
                        var parametrosPersonal = new[]
                        {
                            ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.Int, idPersonal, ParameterDirection.Input),
                        };
                        //Ejecuta el sp de eliminacion de personal
                        Ejecuta.ProcedimientoAlmacenado(connection, "[dbo].[Usp_CnfPersonalEliminar]", parametrosPersonal);
                        connection.Close();
                    }
                    respuesta = true;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            return(respuesta);
        }
        public bool modificarPersonalUsuario(string nombre, string apPaterno, string apMaterno, string rfc, string estadoC, string cpC, string idPuesto, string email, string idRol, string usuario, string pwd, string accesarSistema, int[] privilegios, int idPersonal, int idUsuario, int idRolAnterior)
        {
            bool respuesta                  = false;
            ConvertJsonToDataset cj         = new ConvertJsonToDataset();
            SqlConnection        connection = null;
            int idUsuarioEncontrado         = 0;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    connection.Open();

                    //Parametros de entrada para buscar un usuario
                    var parametrosBuscaUsuario = new[]
                    {
                        ParametroAcceso.CrearParametro("@nombreUsuario", SqlDbType.VarChar, usuario, ParameterDirection.Input),
                    };
                    //Ejecuta el sp de busqueda de usuario y regresa un id en el datatable
                    DataTable regresaIdUsuario = Ejecuta.EjecutarConsulta(connection, parametrosBuscaUsuario, "[dbo].[Usp_CnfUsuariosTConsultarUsuario]");

                    //Itera el datatable donde el primer registro que regresa es el id de usuario
                    foreach (DataRow row in regresaIdUsuario.Rows)
                    {
                        idUsuarioEncontrado = Convert.ToInt32(row["idUsuario"].ToString());
                    }
                    connection.Close();

                    if (idUsuarioEncontrado == 0 || idUsuarioEncontrado == idUsuario)
                    {
                        connection.Open();

                        //Parametros de entrada para la modificacion de Personal
                        var parametros = new[]
                        {
                            ParametroAcceso.CrearParametro("@nombre", SqlDbType.VarChar, nombre, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@apPaterno", SqlDbType.VarChar, apPaterno, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@apMaterno", SqlDbType.VarChar, apMaterno, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@RFC", SqlDbType.VarChar, rfc, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@idPuesto", SqlDbType.Int, idPuesto, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@c_CP", SqlDbType.Int, cpC, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@idEstado", SqlDbType.Int, estadoC, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@email", SqlDbType.VarChar, email, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@acceso_a_sistemas", SqlDbType.VarChar, accesarSistema, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.Int, idPersonal, ParameterDirection.Input),
                        };
                        //Ejecuta el sp de modificacion de personal
                        Ejecuta.ProcedimientoAlmacenado(connection, "[dbo].[Usp_CnfPersonalModificar]", parametros);
                        connection.Close();

                        connection.Open();
                        //Parametros de entrada para la modificacion de Usuario
                        var parametrosUsuario = new[]
                        {
                            ParametroAcceso.CrearParametro("@nombreUsuario", SqlDbType.VarChar, usuario, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@contrasena", SqlDbType.VarChar, pwd, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.Int, idUsuario, ParameterDirection.Input),
                        };
                        //Ejecuta el sp de modificacion de Usuario
                        Ejecuta.ProcedimientoAlmacenado(connection, "[dbo].[Usp_CnfUsuariosTModificar]", parametrosUsuario);
                        connection.Close();

                        connection.Open();
                        //Parametros de entrada para la eliminacion de PersonalUsuario
                        var parametrosPersonalUsuarioElimina = new[]
                        {
                            ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.Int, idPersonal, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.Int, idUsuario, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@idRol", SqlDbType.Int, idRolAnterior, ParameterDirection.Input)
                        };
                        //Ejecuta el sp de eliminacion de PersonalUsuario
                        Ejecuta.ProcedimientoAlmacenado(connection, "[dbo].[Usp_CnfPersonalUsuariosTEliminar]", parametrosPersonalUsuarioElimina);
                        connection.Close();

                        //Recorrer el arreglo de privilegios
                        foreach (int i in privilegios)
                        {
                            //Parametros de entrada para la insercion en PersonalUsuario
                            connection.Open();
                            var parametrosPersonalUsuario = new[]
                            {
                                ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.VarChar, idPersonal, ParameterDirection.Input),
                                ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.VarChar, idUsuario, ParameterDirection.Input),
                                ParametroAcceso.CrearParametro("@idRol", SqlDbType.VarChar, idRol, ParameterDirection.Input),
                                ParametroAcceso.CrearParametro("@idPrivilegio", SqlDbType.VarChar, i, ParameterDirection.Input),
                            };
                            //Ejecuta el sp de insercion de usuario y regresa un id en el datatable
                            Ejecuta.ProcedimientoAlmacenado(connection, "[dbo].[Usp_CnfPersonalUsuariosTInsertar]", parametrosPersonalUsuario);
                            connection.Close();
                        }
                        respuesta = true;
                    }
                    else
                    {
                        respuesta = false;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            return(respuesta);
        }
        public bool insertaUsuario(string personaC, string idRol, string usuario, string pwd, int[] privilegios)
        {
            bool respuesta          = false;
            ConvertJsonToDataset cj = new ConvertJsonToDataset();
            int idPersonal          = Convert.ToInt32(personaC);
            int idUsuario           = 0;
            int idUsuarioEncontrado = 0;

            SqlConnection connection = null;

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    connection.Open();

                    //Parametros de entrada para buscar un usuario
                    var parametrosBuscaUsuario = new[]
                    {
                        ParametroAcceso.CrearParametro("@nombreUsuario", SqlDbType.VarChar, usuario, ParameterDirection.Input),
                    };
                    //Ejecuta el sp de busqueda de usuario y regresa un id en el datatable
                    DataTable regresaIdUsuarioBuscado = Ejecuta.EjecutarConsulta(connection, parametrosBuscaUsuario, "[dbo].[Usp_CnfUsuariosTConsultarUsuario]");

                    //Itera el datatable donde el primer registro que regresa es el id de usuario
                    foreach (DataRow row in regresaIdUsuarioBuscado.Rows)
                    {
                        idUsuarioEncontrado = Convert.ToInt32(row["idUsuario"].ToString());
                    }
                    connection.Close();

                    if (idUsuarioEncontrado == 0)
                    {
                        connection.Open();

                        //Parametros de entrada para la insercion en usuario
                        var parametrosUsuario = new[]
                        {
                            ParametroAcceso.CrearParametro("@nombreUsuario", SqlDbType.VarChar, usuario, ParameterDirection.Input),
                            ParametroAcceso.CrearParametro("@contrasena", SqlDbType.VarChar, pwd, ParameterDirection.Input),
                        };
                        //Ejecuta el sp de insercion de usuario y regresa un id en el datatable
                        DataTable regresaIdUsuario = Ejecuta.EjecutarConsulta(connection, parametrosUsuario, "[dbo].[Usp_CnfUsuariosTInsertar]");

                        //Itera el datatable donde el primer registro que regresa es el id de usuario
                        foreach (DataRow row in regresaIdUsuario.Rows)
                        {
                            idUsuario = Convert.ToInt32(row["idUsuario"].ToString());
                        }

                        //Recorrer el arreglo de privilegios
                        foreach (int i in privilegios)
                        {
                            //Parametros de entrada para la insercion en PersonalUsuario
                            var parametrosPersonalUsuario = new[]
                            {
                                ParametroAcceso.CrearParametro("@idPersonal", SqlDbType.VarChar, idPersonal, ParameterDirection.Input),
                                ParametroAcceso.CrearParametro("@idUsuario", SqlDbType.VarChar, idUsuario, ParameterDirection.Input),
                                ParametroAcceso.CrearParametro("@idRol", SqlDbType.VarChar, idRol, ParameterDirection.Input),
                                ParametroAcceso.CrearParametro("@idPrivilegio", SqlDbType.VarChar, i, ParameterDirection.Input),
                            };
                            //Ejecuta el sp de insercion de usuario y regresa un id en el datatable
                            Ejecuta.EjecutarConsulta(connection, parametrosPersonalUsuario, "[dbo].[Usp_CnfPersonalUsuariosTInsertar]");
                        }

                        connection.Close();
                        respuesta = true;
                    }
                    else
                    {
                        respuesta = false;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            return(respuesta);
        }
        public static void CamposTransaccion(ref Entidades.CamposTransaccion campos)
        {
            SqlConnection connection        = null;
            DataTable     CamposComplemento = new DataTable();

            Console.WriteLine(CamposComplemento);
            List <Entidades.CampCabecera> ListaCamposComplementoCab = new List <Entidades.CampCabecera>();
            List <Entidades.CampDetalle>  ListaCamposComplementoDet = new List <Entidades.CampDetalle>();

            try
            {
                using (connection = Conexion.ObtieneConexion("ConexionBD"))
                {
                    var parametros = new[]
                    {
                        ParametroAcceso.CrearParametro("@idTransaccion", SqlDbType.Int, campos.idTipoTrasaccion, ParameterDirection.Input)
                    };
                    connection.Open();
                    CamposComplemento = Ejecuta.EjecutarConsulta(connection, parametros, "[dbo].[SpObtener_x_Transacciones]");
                    connection.Close();
                    if (CamposComplemento.Rows.Count > 0)
                    {
                        DataSet dtCampos = new DataSet();

                        dtCampos.Tables.Add(CamposComplemento);

                        //Datos Cabecera

                        if (1 == (int)Entidades.nivel.cabecera)
                        {
                            foreach (DataRow Campo in CamposComplemento.Rows)
                            {
                                if ((Convert.ToInt32(Campo["idnivel"].ToString())) == (int)Entidades.nivel.cabecera)
                                {
                                    Entidades.CampCabecera CampoCabecera = new Entidades.CampCabecera();
                                    CampoCabecera.idCampo       = Convert.ToInt32(Campo["idCampo"].ToString());
                                    CampoCabecera.idnivel       = Convert.ToInt32(Campo["idnivel"].ToString());
                                    CampoCabecera.nombreCampo   = Campo["nombreCampo"].ToString();
                                    CampoCabecera.TipoDatoCampo = Campo["idTipoDatoCampo"].ToString();
                                    CampoCabecera.TipoOperacion = Campo["idTipoOperacion"].ToString();
                                    CampoCabecera.activo        = Convert.ToBoolean(Campo["activo"].ToString());

                                    ListaCamposComplementoCab.Add(CampoCabecera);
                                }
                                if ((Convert.ToInt32(Campo["idnivel"].ToString())) == (int)Entidades.nivel.detalle)
                                {
                                    Entidades.CampDetalle CampoDet = new Entidades.CampDetalle();
                                    CampoDet.idCampo       = Convert.ToInt32(Campo["idCampo"].ToString());
                                    CampoDet.idnivel       = Convert.ToInt32(Campo["idnivel"].ToString());
                                    CampoDet.nombreCampo   = Campo["nombreCampo"].ToString();
                                    CampoDet.TipoDatoCampo = Campo["idTipoDatoCampo"].ToString();
                                    CampoDet.TipoOperacion = Campo["idTipoOperacion"].ToString();
                                    CampoDet.activo        = Convert.ToBoolean(Campo["activo"].ToString());

                                    ListaCamposComplementoDet.Add(CampoDet);
                                }
                            }
                        }
                        campos.CamposCabecera = ListaCamposComplementoCab.ToArray();
                        campos.CamposDetalle  = ListaCamposComplementoDet.ToArray();
                    }
                    else
                    {
                        campos.CamposCabecera = ListaCamposComplementoCab.ToArray();
                        campos.CamposDetalle  = ListaCamposComplementoDet.ToArray();
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
        }