private Disponibilidad DisponiDTOTodisponibilidadDAL(DisponibilidadDTO inobj) { Disponibilidad objTo = new Disponibilidad(); objTo.calindicador = inobj.calculoIndicador; objTo.descfallo = inobj.descFallo; //objTo.codsercapac = inobj.codSerCapacitacion; objTo.finfallo = inobj.finFallo; objTo.iniciofallo = inobj.inicioFallo; objTo.respfallo = inobj.responFallo; objTo.tiempofallo = inobj.tiempoFallo; objTo.tipofallo = inobj.tipoFallo; objTo.iniciofallo = null; if (inobj.inicioFallo != null && inobj.inicioFallo > SqlDateTime.MinValue.Value) { objTo.iniciofallo = inobj.inicioFallo; } objTo.finfallo = null; if (inobj.finFallo != null && inobj.finFallo > SqlDateTime.MinValue.Value) { objTo.iniciofallo = inobj.finFallo; } return(objTo); }
private async void BtnEnviar_Clicked(object sender, EventArgs e) { try { bool respuesta; //Le pedimos confirmación para enviar la disponibilidad respuesta = await DisplayAlert("Confirmación", "¿Seguro que quieres enviar la disponibilidad?", "CONTINUAR", "CANCELAR"); if (respuesta) { DisponibilidadDTO disponibilidad = RellenarDisponibilidad(); int filasInsertadas = DatabaseHelper.InsertarDisponibilidad(disponibilidad); if (filasInsertadas != 1) { await DisplayAlert("ERROR", "Error al enviar la disponibilidad", "ACEPTAR"); } else { await DisplayAlert("OK", "Disponibilidad enviada correctamente", "ACEPTAR"); SetValorControles(); DeshabilitarControles(); } } } catch (Exception ex) { Log.Log.LogMessageToFile("Error al enviar la disponibilidad: " + ex.Message + " EN " + ex.StackTrace); } }
public async Task <IActionResult> PostAsync([FromBody] DisponibilidadDTO disponibilidad) { var result = await _domain.ExecuteAsync(disponibilidad).ConfigureAwait(false); return(Ok(new DisponibilidadWrapper() { IdDisponibilidad = result })); }
public async Task <int> ExecuteAsync(DisponibilidadDTO inobj) { Disponibilidad objTo = DisponiDTOTodisponibilidadDAL(inobj); objTo.IdContrato = inobj.IdContrato; int interno = await _disponibilidadService.CrearDisponibilidad(objTo); return(interno); }
public static List <DisponibilidadDTO> BuscarDiponibilidad(DateTime fecha, int tipoCancha, int zona, decimal precioMax) { //PARA BUSCAR LA DISPONIBILIDAD: //---------------------------------------------------------------------------------------- //1- OBTENGO EL "DIA" (DE LA SEMANA) QUE CORRESPONDE A LA FECHA DE BUSQUEDA //2- OBTENGO LOS HORARIOS DE LAS CANCHAS QUE COINCIDEN CON EL FILTRO (DIA, TIPO, MONTO...) //3- OBTENGO TODAS LAS RESERVAS DE LA FECHA BUSCADA //4- RECORRO LOS HORARIOS, HORA POR HORA, PARA ARMAR EL LISTADO DE "DISPONIBLES" //5- AQUELLOS HORARIOS CON RESERVA, LOS MARCO COMO "OCUPADOS" string dia = GetDiaByFecha(fecha); List <CanchasHorariosDTO> horarios = DAO.CanchasHorariosDAO.Buscar(zona, precioMax, tipoCancha, dia); List <ReservasDTO> reservas = DAO.ReservasDAO.ReadAll(fecha); List <DisponibilidadDTO> disponibilidad = new List <DisponibilidadDTO>(); for (int i = 0; i < horarios.Count; i++) { //Recorro hora x hora todo el rango disponible para esta cancha / dia. for (int hora = horarios[i].HoraDesde; hora < horarios[i].HoraHasta; hora++) { DisponibilidadDTO disp = new DisponibilidadDTO(); disp.Dia = dia; disp.FechaHora = fecha.AddHours(hora); disp.Horario = hora; disp.IdCancha = horarios[i].IdCancha; //Chequeo si ya esta reservado: ReservasDTO reserva = reservas.Find(x => x.IdCancha == disp.IdCancha && x.FechaHora == disp.FechaHora); if (reserva == null) { //Si no encontre ninguna reserva para esta cancha, fecha y horario, //la agrego como disponible. disp.Ocupada = false; } else { //Sino, la marco como ocupada. disp.Ocupada = true; } disponibilidad.Add(disp); } } return(disponibilidad); }
public Disponibilidad() { try { InitializeComponent(); DisponibilidadPage.Title = "Disponibilidad semana " + DateTime.Today.GetDateSiguienteLunes().ToString("dd/MM/yy"); //Comprobamos si ya se ha enviado la disponibilidad esta semana, si devuelve objeto ya hay disponibilidad y bloqueamos la pantalla disponibilidad = DatabaseHelper.CargarDisponibilidad(UsuarioActivoDTO.IdArbitro, DateTime.Today.GetDateSiguienteLunes()); //BindingContext = new ConsultarPartidosViewModel(); if (disponibilidad != null) { disponibilidadEnviada = true; SetValorControles(); DeshabilitarControles(); } } catch (Exception ex) { DisplayAlert("ERROR", ex.Message, "ACEPTAR"); lblInfo.Text = "ERROR: " + ex.Message; } }
public DesignarPartidos(ArbitroDTO arbitro) { try { InitializeComponent(); ArbitroDesignando = arbitro; pageDesignarPartidos.Title = "Designación partidos de " + arbitro.Alias + ": "; lblAlias.Text = arbitro.Alias; //Cargamos la disponibilidad del arbitro (de esta semana) DisponibilidadDTO disponibilidad = DatabaseHelper.CargarDisponibilidad(arbitro.IdArbitro, DateTime.Today.GetDateAnteriorLunes()); if (disponibilidad != null) { SetValorControles(disponibilidad); } //Cargamos los partidos que quedan por designar listaPartidosAsignables = new ObservableCollection <PartidoDTO>(DatabaseHelper.GetPartidosDisponibles(ArbitroDesignando.IdArbitro)); if (listaPartidosAsignables != null && listaPartidosAsignables.Any()) { listaAsignables.ItemsSource = listaPartidosAsignables; } //Cargamos los partidos que ya tiene designados listaPartidosAsignados = new ObservableCollection <PartidoDTO>(DatabaseHelper.CargarPartidos(ArbitroDesignando.IdArbitro, DateTime.Today.GetDateAnteriorLunes(), DateTime.Today.GetDateSiguienteLunes(), false)); if (listaPartidosAsignados != null && listaPartidosAsignados.Any()) { listaAsignados.ItemsSource = listaPartidosAsignados; } } catch (Exception ex) { DisplayAlert("ERROR", ex.Message, "ACEPTAR"); lblInfo.Text = "ERROR " + ex.Message; } }
/// <summary> /// Mete los datos elegidos por el usuario en un objeto DisponibilidadDTO /// </summary> /// <returns></returns> private DisponibilidadDTO RellenarDisponibilidad() { DisponibilidadDTO disponibilidad = new DisponibilidadDTO(); StringWriter stringWriter = null; try { DisponibilidadXMLDTO disponibilidadXML = new DisponibilidadXMLDTO(); //Viernes = cbViernes.IsToggled; disponibilidadXML.Viernes = cbViernes.IsToggled; disponibilidadXML.Sabado1 = cbSabado1.IsToggled; disponibilidadXML.Sabado2 = cbSabado2.IsToggled; disponibilidadXML.Domingo1 = cbDomingo1.IsToggled; disponibilidadXML.Domingo2 = cbDomingo2.IsToggled; disponibilidadXML.Comentarios = txtComentarios.Text; disponibilidadXML.FechaDisponibilidad = DateTime.Today.GetDateSiguienteLunes(); disponibilidad.InfoDisponibilidad = disponibilidadXML; disponibilidad.FechaDisponibilidad = DateTime.Today.GetDateSiguienteLunes(); //Serializamos la clase disponibilidadXMLDto y lo pasamos a un string return(disponibilidad); } catch (Exception ex) { return(null); throw; } finally { if (stringWriter != null) { stringWriter.Close(); } } }
/// <summary> /// Traduce los valores de disponibilidad de base de datos a colores en la pantalla /// </summary> /// <param name="disponibilidad"></param> private void SetValorControles(DisponibilidadDTO disponibilidad) { try { if (disponibilidad.InfoDisponibilidad.Viernes) { lblViernes.BackgroundColor = Color.FromHex("#dafa7a"); } else { lblViernes.BackgroundColor = Color.FromHex("#ff6666"); } if (disponibilidad.InfoDisponibilidad.Sabado1) { lblSabado1.BackgroundColor = Color.FromHex("#dafa7a"); } else { lblSabado1.BackgroundColor = Color.FromHex("#ff6666"); } if (disponibilidad.InfoDisponibilidad.Sabado2) { lblSabado2.BackgroundColor = Color.FromHex("#dafa7a"); } else { lblSabado2.BackgroundColor = Color.FromHex("#ff6666"); } if (disponibilidad.InfoDisponibilidad.Domingo1) { lblDomingo1.BackgroundColor = Color.FromHex("#dafa7a"); } else { lblDomingo1.BackgroundColor = Color.FromHex("#ff6666"); } if (disponibilidad.InfoDisponibilidad.Domingo2) { lblDomingo2.BackgroundColor = Color.FromHex("#dafa7a"); } else { lblDomingo2.BackgroundColor = Color.FromHex("#ff6666"); } string comentarios = disponibilidad.InfoDisponibilidad.Comentarios; if (String.IsNullOrEmpty(comentarios)) { lblComentarios.Text = "Comentarios: "; } else { lblComentarios.Text = "Comentarios: " + comentarios; } } catch (Exception ex) { DisplayAlert("ERROR", "Error al cargar la disponibilidad " + ex.Message + System.Environment.NewLine + ex.StackTrace, "ACEPTAR"); } }