Commit 4cef25d3 by gema

1. una vez creada una conversacion volvemos a la vista lista de conversacines…

1. una vez creada una conversacion volvemos a la vista lista de conversacines actualizada para ver la que acabamos de crear.
2. una vez resondido un mensaje volvemos a cargar la misma pagina de detalles de consulta para ver el mensaje que acabamos de enviar, vaciando el input text de la respuesta, ocultamos input y botón de respuesta y ponemos leyenda.
3. si la conversación tiene un estado distinto de "respuesta del nutri",  no puedo contestar por lo tanto ocultamos el input y el botón de responder y mostramos un texto leyenda.
parent 9f1201b6
......@@ -21,6 +21,11 @@
[JsonProperty("state_ds")]
public string State { get; set; }
[JsonProperty("state_id")]
public int StateId { get; set; }
[JsonProperty("messages")]
public IList<Message> Messages { get; set; }
......
......@@ -9,19 +9,47 @@
public DetailsNutriQuestionListViewModel(Conversation conversation)
{
Conversation = conversation;
Title = Conversation.Subject;
/*
estado_id 1= pendiente
estado 2= respondido por cliente
estado 3= respondido por nutricionista
estado 4=cerrada
*/
/*solo muestro input y boton de respuesta si la consulta está "respondida por nutricionista*/
if (Conversation.StateId == 3)
{
/*uso "canloadmore" porque es un variable tipo bool definida ya en MvvmHelpers, es poco intuitiva
ya que tendría que ser algo tal que "isvisibleInput" */
CanLoadMore = true;
/*Pasarle un texto explicativo del uso de las conversaciones*/
Title = "";
}
else
{
CanLoadMore = false;
Title = "Si estás viendo este mensaje, es que todavía no puedes responder a la consulta. Cada consulta a tu nutricionista tiene un máximo de dos respuestas por tu parte. Una vez escrito un mensaje no podrás volver a contestar hasta que tu nutricionista haya leido y contestado tu mensaje anterior. Una vez sobrepasado el límite de mensajes la consulta pasa a estado cerrado y no se podra seguir conversando. Si te quedas con más dudas tendrás que crear una consulta nueva.";
}
/* Title = Conversation.Subject;*/
if (Conversation.Messages == null)
Conversation.Messages = new Message[0];
}
public DetailsNutriQuestionListViewModel() { Conversation = new Conversation(); }
public Conversation Conversation { get; private set; }
public async Task RefreshData()
{
if (Conversation == null)
......@@ -34,7 +62,8 @@
OnPropertyChanged("Conversation");
// Cambiar título
Title = Conversation.Subject;
/*Title = Conversation.Subject;*/
} //endif
IsBusy = false;
......
......@@ -43,9 +43,9 @@ namespace inutralia.Views.NutriQuestion
{
await ViewModel.SaveData(subjectValue, messageValue);
await DisplayAlert("Exito", "El mensaje se ha enviado correctamente.", "Entendido");
await DisplayAlert("Exito", "La consulta se ha enviado correctamente.", "Entendido");
(App.Current.MainPage as RootPage).Navigate<HomeView>();
(App.Current.MainPage as RootPage).Navigate<NutriQuestionListView>();
}
......
......@@ -73,11 +73,11 @@
Text="{Binding Created_at }"/>
<Label Grid.Row="1" Grid.Column="1"
<!-- <Label Grid.Row="1" Grid.Column="1"
XAlign="End"
FontSize="Micro"
TextColor="#000000"
Text="{Binding Read_message}"/>
Text="{Binding Read_message}"/>-->
</Grid>
</ViewCell>
......@@ -110,14 +110,25 @@
Placeholder="Escribe un mensaje.."
x:Name="messageEntry"
HeightRequest="45"
VerticalOptions="FillAndExpand" />
VerticalOptions="FillAndExpand"
IsVisible="{Binding CanLoadMore}"/>
<Button Text="ENVIAR >"
Clicked="OnSendButtonClicked"
HorizontalOptions="FillAndExpand"
BackgroundColor="#333333"
TextColor="#ffffff"
Margin="0,30,0,0" />
Margin="0,30,0,0"
x:Name="btnEnviar"
IsVisible="{Binding CanLoadMore}"/>
<Label
FontSize="Micro"
TextColor="#000000"
HorizontalTextAlignment="Start"
x:Name="infoText"
Text="{Binding Title }"/>
</StackLayout>
</Grid>
......
......@@ -39,9 +39,16 @@ namespace inutralia.Views.NutriQuestion
{
await ViewModel.saveData(messageValue);
await DisplayAlert("Exito", "El mensaje se ha enviado correctamente.", "Entendido");
await DisplayAlert("Exito", "El mensaje se ha enviado correctamente. Podras volver a escribir una vez te haya respondido un nutricionista. ", "Entendido");
/*Una vez envio mensaje y recargo la misma pagina para verlo en el listado, vacio el input de enviar mensaje, oculto el input, el botón y pongo el texto informativo.*/
messageEntry.Text = "";
messageEntry.IsVisible = false;
btnEnviar.IsVisible = false;
infoText.Text="Si estás viendo este mensaje, es que todavía no puedes responder a la consulta. Cada consulta a tu nutricionista tiene un máximo de dos respuestas por tu parte. Una vez escrito un mensaje no podrás volver a contestar hasta que tu nutricionista haya leido y contestado tu mensaje anterior. Una vez sobrepasado el límite de mensajes la consulta pasa a estado cerrado y no se podra seguir conversando. Si te quedas con más dudas tendrás que crear una consulta nueva.";
(App.Current.MainPage as RootPage).Navigate<HomeView>();
await ViewModel.RefreshData();
/*(App.Current.MainPage as RootPage).Navigate<NutriQuestionListView>();*/
}
}
......
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