Commit dcbebebc by Javier Piris

Creado ViewModel de Preguntas pendientes y añadidos métodos al de question

parent 0c652ddd
using System.Threading.Tasks;
using inutralia.Models;
namespace inutralia.ViewModels
{
public class PendingReadViewModel : BaseNavigationViewModel
{
public enum Estatus
{
Pendiente = 1,
Respondida = 2
}
public PendingReadViewModel(QuestionSpecialist questionSpecialist)
{
QuestionSpecialist = questionSpecialist;
Title = QuestionSpecialist?.StatusImg;
}
public PendingReadViewModel() { }
public QuestionSpecialist QuestionSpecialist { private set; get; }
public int StateId => QuestionSpecialist.StateId;
public Estatus estatus => (Estatus)QuestionSpecialist?.StateId;
public async Task RefresData()
{
if (QuestionSpecialist == null)
return;
IsBusy = true;
if (await App.API.RefreshItemAsync(QuestionSpecialist))
{
Title = QuestionSpecialist.StatusImg;
OnPropertyChanged("");
}
IsBusy = false;
}
}
}
...@@ -9,7 +9,7 @@ namespace inutralia.ViewModels ...@@ -9,7 +9,7 @@ namespace inutralia.ViewModels
/// <summary> /// <summary>
/// ViewModel del listado de preguntas. Hereda de MvvmHelpers.BaseViewModel /// ViewModel del listado de preguntas. Hereda de MvvmHelpers.BaseViewModel
/// </summary> /// </summary>
public class QuestionListViewModel : BaseViewModel public class QuestionListViewModel : BaseNavigationViewModel
{ {
public QuestionListViewModel() { } public QuestionListViewModel() { }
...@@ -20,7 +20,7 @@ namespace inutralia.ViewModels ...@@ -20,7 +20,7 @@ namespace inutralia.ViewModels
Command _LoadQuestionListCommand; Command _LoadQuestionListCommand;
// Comando de actualización del listado del listado // Comando de actualización del listado del listado
Command _RefreshQuestionListCommand; Command _RefreshQuestionListCommand;
// Acceso a la lista preguntas // Acceso a la lista preguntas
public ObservableRangeCollection<QuestionSpecialist> QuestionList public ObservableRangeCollection<QuestionSpecialist> QuestionList
...@@ -44,19 +44,7 @@ namespace inutralia.ViewModels ...@@ -44,19 +44,7 @@ namespace inutralia.ViewModels
/// <summary> /// <summary>
/// Método que realiza la carga inicial del listado /// Método que realiza la carga inicial del listado
/// </summary> /// </summary>
public async Task ExecuteLoadPollProfessionalCommand() ///
{
// Realiza el proceso de actualización si hay menos de un
// elemento en el listado
LoadQuestionListCommand.ChangeCanExecute();
//if (Notifications.Count < 1)
await FetchQuestionList();
LoadQuestionListCommand.ChangeCanExecute();
}
/// <summary>
/// Método que realiza la carga inicial del listado
/// </summary>
public async Task ExecuteLoadQuestionListCommand() public async Task ExecuteLoadQuestionListCommand()
{ {
// Realiza el proceso de actualización si hay menos de un // Realiza el proceso de actualización si hay menos de un
...@@ -79,16 +67,23 @@ namespace inutralia.ViewModels ...@@ -79,16 +67,23 @@ namespace inutralia.ViewModels
/// </summary> /// </summary>
async Task ExecuteRefreshQuestionListCommand() async Task ExecuteRefreshQuestionListCommand()
{ {
// Hace que el comando no se pueda ejecutar de nuevo try
RefreshQuestionListCommand.ChangeCanExecute(); {
// Hace que el comando no se pueda ejecutar de nuevo
RefreshQuestionListCommand.ChangeCanExecute();
// Realiza el proceso de actualización // Realiza el proceso de actualización
await FetchQuestionList(); await FetchQuestionList();
// Hace que el comando pueda volver a ejecutarse // Hace que el comando pueda volver a ejecutarse
RefreshQuestionListCommand.ChangeCanExecute(); RefreshQuestionListCommand.ChangeCanExecute();
}
catch (Exception e)
{
string err = e.Message;
}
} }
/// <summary> /// <summary>
/// Proceso de actualización del listado /// Proceso de actualización del listado
/// </summary> /// </summary>
...@@ -106,6 +101,7 @@ namespace inutralia.ViewModels ...@@ -106,6 +101,7 @@ namespace inutralia.ViewModels
} }
catch (Exception e) catch (Exception e)
{ {
QuestionList.Clear();
string err = e.Message; string err = e.Message;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment