private void PartidoAsignable_Tapped(object sender, EventArgs e) //lista1 tocada, pasamos a lista 2 { PartidoDTO partidoSelected = (PartidoDTO)listaAsignables.SelectedItem; partidoSelected.IsVisibleDesasignar = true; partidoSelected.IsVisiblePickerFuncion = true; partidoSelected.IsVisibleTextoFuncion = false; listaPartidosAsignados.Add(partidoSelected); listaPartidosAsignables.Remove(partidoSelected); listaAsignados.ItemsSource = listaPartidosAsignados.OrderBy(f => f.FechaPartido);//refrescamos las listas listaAsignables.ItemsSource = listaPartidosAsignables.OrderBy(f => f.FechaPartido); }
private void PartidoAsignado_Tapped(object sender, EventArgs e) //lista2 tocada pasamos a lista 1 { PartidoDTO partidoSelected = (PartidoDTO)listaAsignados.SelectedItem; //Si ya estaban asignados de antes no lo puede desasignar tocando en la pantalla (porque no se actualiza bd) if (partidoSelected.IsVisibleDesasignar) { listaPartidosAsignados.Remove(partidoSelected); listaPartidosAsignables.Add(partidoSelected); listaAsignados.ItemsSource = listaPartidosAsignados.OrderBy(f => f.FechaPartido);//refrescamos la lista listaAsignables.ItemsSource = listaPartidosAsignables.OrderBy(f => f.FechaPartido); } }
public PartidoDetalles(PartidoDTO partido) { try { InitializeComponent(); partidoActivo = partido; DateTime lunesAnterior, lunesSiguiente; lunesAnterior = DateTime.Today.GetDateAnteriorLunes(); lunesSiguiente = DateTime.Today.GetDateSiguienteLunes(); SetValoresControles(partido); } catch (Exception ex) { DisplayAlert("ERROR", ex.Message, "ACEPTAR"); } }
private void SetValoresControles(PartidoDTO partido) { try { txtEquipos.Text = partido.Equipos.Trim(); txtCategoria.Text = partido.DescripcionCategoria.Trim(); txtFecha.Text = partido.FechaPartido.ToString("dd/MM/yy HH:mm"); txtUbicacion.Text = partido.Ubicacion.Trim(); txtFuncion.Text = partido.DescripcionFuncion.Trim(); txtObservaciones.Text = partido.Observaciones.Trim(); listaArbitros.ItemsSource = partido.listaArbitros; /// Para poder enviar el resultado se debe cumplir: /// 1. Que no este enviado ya /// 2. Que sea el arbitro principal el que lo envie /// 3. Que se haya jugado el partido /// En caso contrario bloquearemos el boton /// Se compara el idFuncion para ver si el arbitro tenia de funcion arbitro principal. Se deberia hacer consulta en BD /// pero no hay algo que asegure que el numero 1 va a ser el principal en BD. /// Se podria buscar el que tenga en descripcion "Principal" pero tampoco es fiable. Lo dejo hardcodeado a 1 y ya if (partido.IdFuncion != 1 || partido.FechaPartido > DateTime.Now) { entryLocal.IsEnabled = false; entryVisitante.IsEnabled = false; btnEnviar.IsEnabled = false; } if (!String.IsNullOrEmpty(partido.Resultado)) { string[] resultados = partido.Resultado.Split('-'); entryLocal.Text = resultados[0]; entryVisitante.Text = resultados[1]; entryLocal.IsEnabled = false; entryVisitante.IsEnabled = false; btnEnviar.IsEnabled = false; } } catch (Exception ex) { DisplayAlert("ERROR", "Error al cargar la pantalla: " + ex.Message, "ACEPTAR"); } }
private PartidoDTO CrearObjetoPartido() { try { PartidoDTO partido = new PartidoDTO(); partido.EquipoLocal = txtLocal.Text; partido.EquipoVisitante = txtVisitante.Text; partido.FechaPartido = pickFecha.Date + pickHora.Time; partido.Ubicacion = txtUbicacion.Text; partido.Observaciones = txtObservaciones.Text; CategoriaDTO categoria = (CategoriaDTO)pickerCategorias.SelectedItem; partido.IdCategoria = categoria.IdCategoria; return(partido); } catch (Exception ex) { throw ex; } }
private async void BtnConfirmar_Clicked(object sender, EventArgs e) { try { if (ValidarDatos()) { PartidoDTO partido = CrearObjetoPartido(); if (DatabaseHelper.CrearPartido(partido) != 1) { await DisplayAlert("ERROR", "El partido no se ha podido crear correctamente", "ACEPTAR"); } else { await DisplayAlert("OK", "El partido se ha creado correctamente", "ACEPTAR"); ReiniciarControles(); } } } catch (Exception ex) { await DisplayAlert("ERROR", "Error al crear el partido: " + ex.Message, "ACEPTAR"); } }