예제 #1
0
파일: Usuario.aspx.cs 프로젝트: lulzzz/SAT
        /// <summary>
        /// Método que almacena los datos obtenidos de los controles del formulario Usuario a la base de datos.
        /// </summary>
        private void guardarUsuario()
        {
            //Creación del objeto retorno
            RetornoOperacion retorno = new RetornoOperacion();

            //Declarando Variable Auxiliar
            int id_usuario = 0;

            //Inicializando Bloque Transaccional
            using (TransactionScope trans = TSDK.Datos.Transaccion.InicializaBloqueTransaccional(System.Transactions.IsolationLevel.ReadCommitted))
            {
                //Valida cada estado del formulario.
                switch ((Pagina.Estatus)Session["estatus"])
                {
                //En caso de que el estado de la página sea nuevo, realizara una inserción de datos.
                case Pagina.Estatus.Nuevo:
                {
                    //Validando que la Contraseña sea Identica
                    if (txtContrasena.Text == txtRepitaContrasena.Text)
                    {
                        //Asigna al objeto retorno los valores obtenidos del formulario Usuario, invocando al método de insercion de la clase usuario.
                        retorno = SAT_CL.Seguridad.Usuario.InsertaUsuario(txtNombre.Text, txtEmail.Text, txtContrasena.Text, DateTime.Today,
                                                                          Convert.ToByte(txtVigencia.Text), Convert.ToByte(txtTiempo.Text), txtPregunta.Text, txtRespuesta.Text,
                                                                          Convert.ToByte(txtSesiones.Text), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);

                        //Validando que la Operación fuese Exitosa
                        if (retorno.OperacionExitosa)
                        {
                            //Obteniendo Registro de Usuario
                            id_usuario = retorno.IdRegistro;

                            //Insertando Usuario - Compania
                            retorno = SAT_CL.Seguridad.UsuarioCompania.InsertaUsuarioCompania(id_usuario, ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor,
                                                                                              Convert.ToInt32(ddlDepartamento.SelectedValue), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);
                        }
                    }
                    break;
                }

                //En caso de que el estado de la página sea edición, realizara una actualización de datos.
                case Pagina.Estatus.Edicion:
                {
                    //Invoca al constructor de la clase Usuario y asigna como parametro la variable de session id_registro
                    using (SAT_CL.Seguridad.Usuario us = new SAT_CL.Seguridad.Usuario((int)Session["id_registro"]))
                    {
                        //Valida que exista el registro en la base de datos
                        if (us.id_usuario != 0)
                        {
                            //Asigna al objeto retorno los datos obtenidos del formulario, invocando al método de actualización de la clase usuario.
                            retorno = us.EditaInformaciónGeneral(txtNombre.Text, txtEmail.Text, Convert.ToByte(txtSesiones.Text), Convert.ToByte(txtTiempo.Text),
                                                                 Convert.ToByte(txtVigencia.Text), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);

                            //Validando que la Operación fuese Exitosa
                            if (retorno.OperacionExitosa)
                            {
                                //Obteniendo Registro de Usuario
                                id_usuario = retorno.IdRegistro;

                                //Instanciando Usuario Compania
                                using (SAT_CL.Seguridad.UsuarioCompania uc = new SAT_CL.Seguridad.UsuarioCompania(us.id_usuario, ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor))
                                {
                                    //Validando que Exista un registro Usuario - Compania
                                    if (uc.id_usuario_compania > 0)
                                    {
                                        //Editando Usuario - Compania
                                        retorno = uc.EditaUsuarioCompania(us.id_usuario, uc.id_compania_emisor_receptor, Convert.ToInt32(ddlDepartamento.SelectedValue), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);
                                    }
                                }
                            }
                        }
                    }
                    break;
                }
                }

                //Valida que la operacion de inserción se realizo correctamente
                if (retorno.OperacionExitosa)
                {
                    //Instanciando Registro de Usuario
                    retorno = new RetornoOperacion(id_usuario);

                    //Completando Transacción
                    trans.Complete();
                }
            }

            //Valida que la operacion de inserción se realizo correctamente
            if (retorno.OperacionExitosa)
            {
                //Asigna el valor de estatus session en modo lectura.
                Session["estatus"] = Pagina.Estatus.Lectura;
                //Asigna a la variable de session id_registro el valor generado en la base de datos(id).
                Session["id_registro"] = retorno.IdRegistro;
                //Invoca al método inicializaForma.
                inicializaForma();
            }

            //Muestra un mensaje acorde a la validación de la operación.
            lblError.Text = retorno.Mensaje;
        }
예제 #2
0
파일: Usuario.aspx.cs 프로젝트: lulzzz/SAT
        /// <summary>
        /// Evento que permite seleccionar y ejecutar acciones del menú.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void lkbElementoMenu_Click(object sender, EventArgs e)
        {
            //Creación del objeto botonMenu que obtiene las opciones de los menú desplegable .
            LinkButton botonMenu = (LinkButton)sender;

            //Permite ejecutar acciones determinadas por cada opción del menú
            switch (botonMenu.CommandName)
            {
            //Si la elección del menú es la opción Nuevo
            case "Nuevo":
            {
                //Asigna a la variable de session estatus el estado del formulario en nuevo
                Session["estatus"] = Pagina.Estatus.Nuevo;
                //Asigna a la variable de session id_registro el valor de 0.
                Session["id_registro"] = 0;
                //Invoca al método inicializaForma
                inicializaForma();
                //Limpia los mensajes de error del lblError
                lblError.Text = "";
                //Hace un enfoque en el primer control
                txtNombre.Focus();
                //Asigna el valor de 0, al método que inicializa el control de usuario PerfilUsuarioAlta
                ucPerfilUsuarioAlta.InicializaPerfilesUsuarioAlta(0, 0);
                break;
            }

            //Si la elección del menú es la opcion Abrir
            case "Abrir":
            {
                //Invoca al método inicializaAperturaRegistro();
                inicializaAperturaRegistro(30, ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor);
                break;
            }

            //Si la elección del menú es la opción Guardar
            case "Guardar":
            {
                //Invoca al método guardaTipoPago();
                guardarUsuario();
                break;
            }

            //Si la elección del menú es la opción Editar
            case "Editar":
            {
                //Asigna a la variable session estaus el estado de la pagina nuevo
                Session["estatus"] = Pagina.Estatus.Edicion;
                //Invoca el método inicializaForma();
                inicializaForma();
                //Limpia los mensajes del lblError
                lblError.Text = "";
                //Hace un efoque en el primer control
                txtNombre.Focus();
                break;
            }

            //Si la elección del menú es la opción Eliminar
            case "Eliminar":
            {
                //Creación del objeto retorno
                RetornoOperacion retorno = new RetornoOperacion();

                //Inicializando Bloque Transaccional
                using (TransactionScope trans = TSDK.Datos.Transaccion.InicializaBloqueTransaccional(System.Transactions.IsolationLevel.ReadCommitted))
                {
                    //Invoca al constructor de la clase y asigna el valor de la variable de session id_registro.
                    using (SAT_CL.Seguridad.Usuario us = new SAT_CL.Seguridad.Usuario((int)Session["id_registro"]))
                    {
                        //Valida si el registro existe.
                        if (us.id_usuario > 0)
                        {
                            //Asigna al objeto retorno los datos del usuario que realizo el cambio de estado del registro(Deshabilito)
                            retorno = us.DeshabilitaUsuario(((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);

                            //Validando Operación Exitosa
                            if (retorno.OperacionExitosa)
                            {
                                //Instanciando registro de Usuario - Compania
                                using (SAT_CL.Seguridad.UsuarioCompania uc = new SAT_CL.Seguridad.UsuarioCompania(us.id_usuario, Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtCompania.Text, "ID:", 1, "0"))))
                                {
                                    //Validando que Existe el Registro
                                    if (uc.id_usuario_compania > 0)
                                    {
                                        //Deshabilitando
                                        retorno = uc.DeshabilitaUsuarioCompania(((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);

                                        //Validando Operación Exitosa
                                        if (retorno.OperacionExitosa)
                                        {
                                            //Completando Transacción
                                            trans.Complete();
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                //Valida si la operación se realizo correctamente.
                if (retorno.OperacionExitosa)
                {
                    //Asigna el valor de estado lectura a la variable de session estatus
                    Session["estatus"] = Pagina.Estatus.Nuevo;
                    //Asigna el valor 0 a la variable de session id_registro
                    Session["id_registro"] = 0;
                    //invoca al método inicializaForma().
                    inicializaForma();
                    ucPerfilUsuarioAlta.InicializaPerfilesUsuarioAlta(0, Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtCompania.Text, "ID:", 1, "0")));
                }


                //Muestra un mensaje acorde a la validación de la operación
                lblError.Text = retorno.Mensaje;
                break;
            }

            //Si la elección del menú en la opción Bitacora
            case "Bitacora":
            {
                //Invoca al método bitacora
                inicializaBitacora(Session["id_registro"].ToString(), "30", "Usuario");
                break;
            }

            //Si la elección del menú en la opcion Referencia
            case "Referencias":
            {
                //Invoca al método inicializaReferencia que muestra las observaciones hechas a un registro de TipoPago
                inicializaReferenciaRegistro(Session["id_registro"].ToString(), "30",
                                             ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor.ToString());
                break;
            }

            //Si la elección del menú en la opcion Sesiones Activas
            case "Sesiones":
            {
                //Validando Estatus el Sesión
                switch ((Pagina.Estatus)Session["estatus"])
                {
                case Pagina.Estatus.Nuevo:
                {
                    //Mostrando Excepción
                    ScriptServer.MuestraNotificacion(botonMenu, "No hay Usuario", ScriptServer.NaturalezaNotificacion.Error, ScriptServer.PosicionNotificacion.AbajoDerecha);
                    break;
                }

                case Pagina.Estatus.Lectura:
                case Pagina.Estatus.Edicion:
                {
                    //Cargando Sesiones Activas
                    cargaSessionesActivas();
                    //Mostrando Ventana Modal
                    ScriptServer.AlternarVentana(botonMenu, "SesionesActivas", "contenedorVentanaSesionesActivas", "ventanaSesionesActivas");
                    break;
                }
                }

                break;
            }

            //Si la elección del menú en la opcion Archivo
            case "Archivo":
            {
                //Validando Estatus de Sesión
                switch ((Pagina.Estatus)Session["estatus"])
                {
                case Pagina.Estatus.Lectura:
                case Pagina.Estatus.Edicion:
                    //Inicializando Archivos
                    inicializaArchivosRegistro(Session["id_registro"].ToString(), "30", "0");
                    break;

                default:
                    //Mostrando Excepción
                    ScriptServer.MuestraNotificacion(lkbArchivos, new RetornoOperacion("Debe existir un Usuario"), ScriptServer.PosicionNotificacion.AbajoDerecha);
                    break;
                }
                break;
            }

            //Si la elección del menú en la opcion Acerca
            case "Acerca":
            {
                break;
            }

            //Si la elección del menú en la opcion Ayuda
            case "Ayuda":
            {
                break;
            }
            }
        }
예제 #3
0
파일: Usuario.aspx.cs 프로젝트: lulzzz/SAT
        /// <summary>
        /// Método que inicializa los valores de los controles del formulario Usuario en base a su estatus.
        /// </summary>
        private void inicializaValores()
        {
            //Valida cada estatus de la página
            switch ((Pagina.Estatus)Session["estatus"])
            {
            //En caso de que el estado de la página sea nuevo limpia los datos de los controles
            case Pagina.Estatus.Nuevo:
            {
                txtNombre.Text                                    =
                    txtEmail.Text                                 =
                        txtContrasena.Text                        =
                            txtRepitaContrasena.Text              =
                                txtPregunta.Text                  =
                                    txtRespuesta.Text             =
                                        txtSesiones.Text          =
                                            txtTiempo.Text        =
                                                txtVigencia.Text  =
                                                    lblError.Text = "";
                //Asigna formato de password a la caja de texto
                txtContrasena.Attributes["type"]       = "password";
                txtRepitaContrasena.Attributes["type"] = "password";
                txtRespuesta.Attributes["type"]        = "password";
                break;
            }

            //En caso de que el estado de la página sea edicion y lectura, realiza una consulta a la base de datos y obtiene un registro.
            case Pagina.Estatus.Lectura:
            case Pagina.Estatus.Edicion:
            {
                //Invoca a la clase usuario, y asigna el valor de la variable ssion id_registro al constructor de la clase para obtener un registro.
                using (SAT_CL.Seguridad.Usuario us = new SAT_CL.Seguridad.Usuario((int)Session["id_registro"]))
                {
                    //Validando que exista el Usuario
                    if (us.id_usuario != 0)
                    {
                        txtNombre.Text   = us.nombre;
                        txtEmail.Text    = us.email;
                        txtSesiones.Text = us.sesiones_disponibles.ToString();
                        txtTiempo.Text   = us.tiempo_expiracion.ToString();
                        txtVigencia.Text = us.dias_vigencia.ToString();
                        txtPregunta.Text = us.pregunta_secreta;
                        //Deshabilita los controles para su edición.
                        txtContrasena.Enabled            =
                            txtRepitaContrasena.Enabled  =
                                txtPregunta.Enabled      =
                                    txtRespuesta.Enabled = false;
                        //Asigna formato de password a la caja de texto
                        txtContrasena.Attributes["type"] = "password";
                        txtContrasena.Text = "password";
                        txtRepitaContrasena.Attributes["type"] = "password";
                        txtRepitaContrasena.Text        = "password";
                        txtRespuesta.Attributes["type"] = "password";
                        txtRespuesta.Text = "password";

                        //Inicializando Control
                        ucPerfilUsuarioAlta.InicializaPerfilesUsuarioAlta(Convert.ToInt32(Session["id_registro"]), ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor);

                        //Instanciando Usuario Compania
                        using (SAT_CL.Seguridad.UsuarioCompania uc = new SAT_CL.Seguridad.UsuarioCompania(us.id_usuario, ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor))
                        {
                            //Validando que exista el Registro
                            if (uc.id_usuario_compania > 0)
                            {
                                //Asignando Departamento
                                ddlDepartamento.SelectedValue = uc.id_departamento.ToString();

                                //Instanciando Compania Emisor
                                using (SAT_CL.Global.CompaniaEmisorReceptor cer = new SAT_CL.Global.CompaniaEmisorReceptor(uc.id_compania_emisor_receptor))
                                {
                                    //Validando que Existe la Compania
                                    if (cer.id_compania_emisor_receptor > 0)
                                    {
                                        //Asignando Valor
                                        txtCompania.Text = cer.nombre + " ID:" + cer.id_compania_emisor_receptor.ToString();
                                    }
                                    else
                                    {
                                        //Limpiando Control
                                        txtCompania.Text = "";
                                    }
                                }
                            }
                        }
                    }
                }
                break;
            }
            }
        }