private void guardar() { CONTRASEÑA_D = caja_contrasena.Password.Trim(); NOMBRE_D = "ADMINISTRADOR"; TIPO_USUARIO_D = TIPO_ADMINISTRADOR; metodos_bd.GUARDAR(NOMBRE_TABLA, (NOMBRE, NOMBRE_D), (CONTRASEÑA, CONTRASEÑA_D), (TIPO_USUARIO, TIPO_USUARIO_D)); Navegacion.NavegarAtras(); }
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; } }