Beispiel #1
0
        public MainWindow()
        {
            ConectorDB.Initialize();
            InitializeComponent();
            Controles  = new Metodos_comunes();
            metodos_bd = new Metodos_bd();

            Controles.campos.Add(caja_texto_usuario);
            Controles.campos.Add(caja_contrasena);
            Controles.Inicial.Focus();
            Controles.Limpiar_controles();
            //Verificacion de conexion a servidor
            _vm = new ToastViewModel();
            ArrayList resultado2 = metodos_bd.BUSCAR(NOMBRE_TABLA, NOMBRE, TIPO_ADMINISTRADOR, CANTIDAD_COLUMNAS, TODO);

            if (resultado2.Count == 0)
            {
                _vm = new ToastViewModel();
                _vm.ShowInformation("Creando cuenta administrador");
                Navegacion.NavegarA(new auxiliar());
            }

            //caja_texto_usuario.Text = "jafet";
            //caja_contrasena.Password = "******";
            //Boton_ingresar_Click(null, null);
        }
        private async void maquina_estados()
        {
            switch (ESTADO)
            {
            case GUARDAR:

                /*¿Todos los campos estan llenos?*/
                if (Controles.Seleccionar_control(false))
                {       /*Ambas contraseñas coinciden*/
                    if (verificar_contrasena())
                    {
                        if (caja_contrasena.Password.Length < 4)
                        {
                            await this.ShowMessageAsync(TITULO_MENSAJE, "Minimo 4 caracteres", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);

                            return;
                        }
                        else
                        {
                            /*Se busca el nombre del usuario ingresado*/
                            ArrayList resultado = metodos_bd.BUSCAR(NOMBRE_TABLA, NOMBRE, NOMBRE_D, CANTIDAD_COLUMNAS, TODO);
                            if (resultado.Count > 0) /*¿ya existe ese usuario?*/
                            {                        /*Mensaje para cambiar nombre*/
                                await this.ShowMessageAsync(TITULO_MENSAJE, "Nombre no disponible", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);

                                return;
                            }
                            else
                            {       /*¿Crear nuevo usuario?*/
                                var a = await this.ShowMessageAsync(TITULO_MENSAJE, "¿Crear nuevo usuario?", MessageDialogStyle.AffirmativeAndNegative, configMetro.mensajeAcentuado);

                                if (a == MessageDialogResult.Affirmative)    /*Se guarda el nuevo usuario*/
                                {
                                    metodos_bd.GUARDAR(NOMBRE_TABLA, (NOMBRE, NOMBRE_D), (CONTRASEÑA, CONTRASEÑA_D), (TIPO_USUARIO, TIPO_USUARIO_D));
                                    await this.ShowMessageAsync(TITULO_MENSAJE, "Usuario creado", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);

                                    LIMPIAR_TODO();
                                    int       ultimooID = metodos_bd.ULTIMO_REGISTRO(NOMBRE_TABLA, ID_USUARIO);
                                    ArrayList userLocal = metodos_bd.BUSCAR(NOMBRE_TABLA, ID_USUARIO, ultimooID.ToString(), CANTIDAD_COLUMNAS, TODO);
                                }
                                else
                                {
                                    return;
                                }
                            }
                        }
                    }
                    else
                    {
                        await this.ShowMessageAsync(TITULO_MENSAJE, "Las contraseñas no coinciden", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);
                    }
                }
                ESTADO = GUARDAR;
                break;

            case APUNTAR:
                ArrayList resultado2 = metodos_bd.BUSCAR(NOMBRE_TABLA, ID_USUARIO, ID_USUARIO_C, CANTIDAD_COLUMNAS, TODO);
                /*los datos se respaldan en unas variables auxiliares y se muestran en los componentes correspondientes*/
                ID_USUARIO_C             = resultado2[0].ToString();
                caja_texto_usuario.Text  = NOMBRE_C = resultado2[1].ToString();
                caja_contrasena.Password = caja_contrasena1.Password = CONTRASEÑA_C = resultado2[2].ToString();
                Combobox_tipo.Text       = TIPO_USUARIO_C = resultado2[3].ToString();
                boton_borrar.Visibility  = Visibility.Visible;
                boton_guardar.Content    = BTN_EDITAR;
                ESTADO = ACTUALIZAR;
                break;


            case ACTUALIZAR:
                /*se verifica que todos los campos esten llenos*/
                if (Controles.Seleccionar_control(false))
                {
                    if (verificar_contrasena())
                    {
                        if (caja_contrasena.Password.Length < 4)
                        {
                            await this.ShowMessageAsync(TITULO_MENSAJE, "Minimo 4 caracteres", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);

                            return;
                        }
                        else
                        {
                            NOMBRE_D       = caja_texto_usuario.Text;
                            CONTRASEÑA_D   = caja_contrasena.Password;
                            TIPO_USUARIO_D = Combobox_tipo.Text;
                            ArrayList resultado3 = metodos_bd.BUSCAR(NOMBRE_TABLA, NOMBRE, NOMBRE_D, CANTIDAD_COLUMNAS, TODO);
                            if (resultado3.Count > 0)
                            {
                                if (resultado3[1].ToString() == TIPO_ADMINISTRADOR)
                                {
                                    var a2 = await this.ShowMessageAsync(TITULO_MENSAJE, "¿Guardar cambios?", MessageDialogStyle.AffirmativeAndNegative, configMetro.mensajeAcentuado);

                                    if (a2 == MessageDialogResult.Affirmative)
                                    {
                                        LLAMAR_ACTUALIZAR();
                                    }
                                    else
                                    {
                                        LIMPIAR_TODO();
                                    }
                                }
                                else
                                {
                                    if (resultado3[0].ToString() == ID_USUARIO_C)
                                    {    /*si resultado3 me regreso a mi mismo puedo modificar el dato*/
                                        var a2 = await this.ShowMessageAsync(TITULO_MENSAJE, "¿Guardar cambios?", MessageDialogStyle.AffirmativeAndNegative, configMetro.mensajeAcentuado);

                                        if (a2 == MessageDialogResult.Affirmative)
                                        {
                                            LLAMAR_ACTUALIZAR();
                                        }
                                        else
                                        {
                                            LIMPIAR_TODO();
                                        }
                                    }
                                    else
                                    {    /*sino esto quiere decir que es otro usuario y por lo tanto no puedo usar ese nombre*/
                                        await this.ShowMessageAsync(TITULO_MENSAJE, "Nombre no disponible", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);

                                        return;
                                    }
                                }
                            }
                            else
                            {    /*si no se regreso ningun dato de la busque significa que el dato esta disponilbe*/
                                var a2 = await this.ShowMessageAsync(TITULO_MENSAJE, "¿Guardar cambios?", MessageDialogStyle.AffirmativeAndNegative, configMetro.mensajeAcentuado);

                                if (a2 == MessageDialogResult.Affirmative)
                                {
                                    LLAMAR_ACTUALIZAR();
                                }
                            }
                        }
                    }
                    else
                    {
                        await this.ShowMessageAsync(TITULO_MENSAJE, "Las contraseñas no coinciden", MessageDialogStyle.Affirmative, configMetro.mensajeNormal);
                    }
                }
                tabla_Principal.Items.Refresh();
                ESTADO = GUARDAR;
                break;

            case ELIMINAR:

                var a3 = await this.ShowMessageAsync(TITULO_MENSAJE, "¿Eliminar usuario?", MessageDialogStyle.AffirmativeAndNegative, configMetro.mensajeBorrar);

                if (a3 == MessageDialogResult.Affirmative)
                {
                    metodos_bd.ELIMINAR(NOMBRE_TABLA, ID_USUARIO, ID_USUARIO_C);
                    tabla_Principal.Items.Refresh();
                }
                LIMPIAR_TODO();
                ESTADO = GUARDAR;
                break;
            }
        }
Beispiel #3
0
        private async void metodo_abrir(int seleccionar)
        {
            if (Controles.Seleccionar_control(false))
            {
                ArrayList resultado = metodos_bd.BUSCAR(NOMBRE_TABLA, NOMBRE, USUARIOdato, CANTIDAD_COLUMNAS, TODO);

                if (resultado.Count > 0) /*si hay mas de un resultado entonces si existe el usuario*/
                {
                    TIPO_USUARIOdato = resultado[3].ToString();
                    if (resultado[2].ToString() == caja_contrasena.Password)
                    {
                        _vm.ShowInformation("Bienvenida(o): " + resultado[1].ToString());
                        if (seleccionar == ABRIR)
                        {
                            if (ventana_Principal == null)
                            {
                                ventana_Principal = new Ventana_principal();
                            }
                            Navegacion.NavegarA(ventana_Principal);
                            // Navegacion.Navigate(new Uri("Ventana_principal.xaml",UriKind.RelativeOrAbsolute));
                        }
                        if (seleccionar == CUENTA_NUEVA)
                        {
                            if (resultado[3].ToString() != TIPO_ADMINISTRADOR)
                            {
                                await this.ShowMessageAsync(TITULO_MENSAJE, "No es administrador", MessageDialogStyle.Affirmative);
                            }
                            else
                            {
                                if (nuevo_Usuario == null)
                                {
                                    nuevo_Usuario = new Nuevo_usuario();
                                }
                                Navegacion.NavegarA(nuevo_Usuario);
                                //Navegacion.Navigate(new Uri("Nuevo_usuario.xaml",UriKind.RelativeOrAbsolute));
                                _vm.ShowInformation("Ajustes de administrador");
                            }
                        }
                    }
                    else
                    {
                        await this.ShowMessageAsync(TITULO_MENSAJE, "Contraseña incorrecta", MessageDialogStyle.Affirmative);

                        limpiar();
                    }
                }
                else
                {
                    ArrayList resultado2 = metodos_bd.BUSCAR(NOMBRE_TABLA, NOMBRE, TIPO_ADMINISTRADOR, CANTIDAD_COLUMNAS, TODO);
                    if (resultado2.Count > 0)
                    {
                        await this.ShowMessageAsync(TITULO_MENSAJE, "Datos incorrectos", MessageDialogStyle.Affirmative);

                        limpiar();
                    }
                    else
                    {
                        Navegacion.NavegarA(new auxiliar());
                        //Navegacion.Navigate("auxiliar.xaml");
                        _vm.ShowInformation("Creando cuenta administrador");
                    }
                }
            }
            else
            {
                await this.ShowMessageAsync(TITULO_MENSAJE, "Información incompleta", MessageDialogStyle.Affirmative);
            }
        }