/// <summary> /// Actualiza la base de datos en la pregunta /// con la respuesta seleccionada /// y vincula la referencia a la solucion en la pregunta /// </summary> /// <param name="resp"></param> /// <param name="preg"></param> public static void SolucionarPregunta(Respuesta resp, Pregunta preg) { if (preg.EstaSolucionada() == false) { ABMPregunta.UpdateSolucionPregunta(preg.IdPregunta, resp.IdRespuesta); preg.Solucion = resp; preg.IdSolucion = resp.IdRespuesta; preg.Estado = "Solucionada"; } }
private void btnSolucion_Click(object sender, RoutedEventArgs e) { // Verificar si el usuario logueado puede marcar como solucion a la respuesta Pregunta pregRespondida = respuesta.PregRespuesta; if (pregRespondida.EstaSolucionada() == false && pregRespondida.PerteneceAUsuario(usuario)) { ControladorABM.SolucionarPregunta(respuesta, pregRespondida); CargarComponentes(); } }
/// <summary> /// Carga la lista de respuestas al objeto pregunta /// </summary> /// <param name="preg"></param> static public void CargarListaRespuestas(Pregunta preg) { preg.Respuestas = ABMRespuesta.GetRespuestas(preg.IdPregunta); // Asignar la referencia a la pregunta para cada una de sus respuestas foreach (Respuesta r in preg.Respuestas) { r.PregRespuesta = preg; r.UserRespuesta = ABMUsuario.GetUsuario(r.IdUserResp); // Cargar usuario que hizo la respuesta r.IdsUsuariosLike = ABMRespuesta.GetIdsUsuariosLike(r.IdRespuesta); } // Asignar la referencia a la solucion, si es que tiene solucion if (preg.EstaSolucionada()) { preg.Solucion = preg.Respuestas.Find(r => r.IdRespuesta == preg.IdSolucion); } }
private void CargarComponentes() { // Actualizar boton de like if (respuesta.DioLike(usuario)) { icoLike.Kind = MaterialDesignThemes.Wpf.PackIconKind.Dislike; } else { icoLike.Kind = MaterialDesignThemes.Wpf.PackIconKind.Like; } // Verificar si el usuario logueado puede marcar como solucion a la respuesta Pregunta pregRespondida = respuesta.PregRespuesta; if (pregRespondida.EstaSolucionada() == false && pregRespondida.PerteneceAUsuario(usuario)) { btnSolucion.IsEnabled = true; } else { btnSolucion.IsEnabled = false; } // Boton de ver imagen if (string.IsNullOrEmpty(respuesta.UrlImagen)) { btnVerImagen.IsEnabled = false; } else { btnVerImagen.IsEnabled = true; } // Cargar informacion de la respuesta lblTitulo.Content = respuesta.Titulo; tbkDescripcion.Text = respuesta.Descripcion; lblInfoUserFecha.Content = respuesta.UserRespuesta.ToString() + " el día " + respuesta.Fecha.ToShortDateString() + " a las " + respuesta.Fecha.ToShortTimeString(); }