protected void cargarHoras(DateTime fecha) { int diaSemana = (int)fecha.DayOfWeek; Token token = (Token)Session["token"]; _horarioReservaService = new HorarioReservaService(token.access_token); List <HorarioReserva> listaHorarioReserva = _horarioReservaService.Obtener(); HorarioReserva horarioReserva = listaHorarioReserva.FirstOrDefault(x => x.DiaSemana == diaSemana); if (horarioReserva == null) { ScriptManager.RegisterStartupScript(Page, Page.GetType(), "modalReserva", "Swal.fire('No hay horarios disponibles para reservar en la fecha seleccionada', '', 'error');", true); return; } int horaInicioHora = int.Parse(horarioReserva.HoraInicioTime.Substring(0, 2)); int horaFinHora = int.Parse(horarioReserva.HoraFinTime.Substring(0, 2)); List <string> horas = new List <string>(); DateTime hoy = DateTime.Now; for (int i = horaInicioHora; i <= horaFinHora; i++) { string x = i < 10 ? "0" + i.ToString() : i.ToString(); if (fecha.Date == hoy.Date) { if (int.Parse(x) <= int.Parse(hoy.ToString("HH"))) { continue; } } horas.Add(x); } ddlHora.DataSource = horas; ddlHora.DataBind(); if (horas.Count == 0 && fecha.Date == hoy.Date) //Cargar el día siguiente por defecto { DateTime diaSiguiente = fecha.AddDays(1); txtFecha.Text = diaSiguiente.ToString("yyyy-MM-dd"); txtFecha.Attributes["min"] = diaSiguiente.ToString("yyyy-MM-dd"); cargarHoras(diaSiguiente); } int horaInicioMinuto = int.Parse(horarioReserva.HoraInicioTime.Substring(3, 2)); int horaFinMinuto = int.Parse(horarioReserva.HoraFinTime.Substring(3, 2)); List <string> minutos = new List <string>(); for (int i = 0; i < 60; i++) { string x = i < 10 ? "0" + i.ToString() : i.ToString(); minutos.Add(x); } ddlMinuto.DataSource = minutos; ddlMinuto.DataBind(); }
protected void btnEditarHorarioReserva_Click(object sender, RepeaterCommandEventArgs e) { try { int idHorario; if (int.TryParse((string)e.CommandArgument, out idHorario)) { TextBox txtDiaSemana = (TextBox)e.Item.FindControl("txtDiaSemana"); TextBox txtHoraInicio = (TextBox)e.Item.FindControl("txtHoraInicioHorario"); TextBox txtHoraFin = (TextBox)e.Item.FindControl("txtHoraFinHorario"); if (txtHoraInicio.Text.Trim() == string.Empty || txtHoraFin.Text.Trim() == string.Empty) { ScriptManager.RegisterStartupScript(Page, Page.GetType(), "editarHorario", "Swal.fire('Debe seleccionar la hora de inicio y la de fin', '', 'error');", true); return; } DateTime horaInicio = DateTime.Now; DateTime horaFin = DateTime.Now; int horaInicioHora = int.Parse(txtHoraInicio.Text.Substring(0, 2)); int horaInicioMinuto = int.Parse(txtHoraInicio.Text.Substring(3, 2)); TimeSpan tsHoraInicio = new TimeSpan(horaInicioHora, horaInicioMinuto, 0); horaInicio = horaInicio.Date + tsHoraInicio; int horaFinHora = int.Parse(txtHoraFin.Text.Substring(0, 2)); int horaFinMinuto = int.Parse(txtHoraFin.Text.Substring(3, 2)); TimeSpan tsHoraFin = new TimeSpan(horaFinHora, horaFinMinuto, 0); horaFin = horaFin.Date + tsHoraFin; HorarioReserva horario = new HorarioReserva(); horario.Id = idHorario; horario.DiaSemana = int.Parse(txtDiaSemana.Text); horario.HoraInicio = horaInicio; horario.HoraFin = horaFin; Token token = (Token)Session["token"]; _horarioReservaService = new HorarioReservaService(token.access_token); bool editar = _horarioReservaService.Modificar(horario, idHorario); if (editar) { ScriptManager.RegisterStartupScript(Page, Page.GetType(), "editarHorario", "Swal.fire('Horario guardado correctamente', '', 'success');", true); } } limpiarTabs(); tabHorarioReservas.Attributes.Add("class", "nav-link active"); divHorarioReservas.Attributes.Add("class", "tab-pane fade active show"); } catch (Exception ex) { string mensaje = ex != null && ex.Message != null ? ex.Message : "Ocurrió un error inesperado. Intente nuevamente"; ScriptManager.RegisterStartupScript(Page, Page.GetType(), "error", "Swal.fire('Error', '" + mensaje + "', 'error');", true); return; } }
protected void Page_Load(object sender, EventArgs e) { try { if (!IsPostBack) { ValidarSesion(); Token token = (Token)Session["token"]; _clienteService = new ClienteService(token.access_token); _reservaService = new ReservaService(token.access_token); _mesaService = new MesaService(token.access_token); _estadoReservaService = new EstadoReservaService(token.access_token); _estadoMesaService = new EstadoMesaService(token.access_token); _horarioReservaService = new HorarioReservaService(token.access_token); List <Reserva> reservas = _reservaService.Obtener(); if (reservas != null && reservas.Count > 0) { var reservasOrdenadas = reservas.OrderByDescending(x => x.FechaReserva).ToList(); actualizarRepeater(listaReservas, reservasOrdenadas, listaReservasVacia); } List <Cliente> clientes = _clienteService.Obtener(); if (clientes != null && clientes.Count > 0) { var clientesOrdenados = clientes.OrderBy(x => x.Id).ToList(); actualizarRepeater(listaClientes, clientesOrdenados, listaClientesVacia); actualizarDdlClientes(clientes); } List <Mesa> mesas = _mesaService.Obtener(); if (mesas != null && mesas.Count > 0) { var mesasOrdenadas = mesas.OrderBy(x => x.Id).ToList(); actualizarRepeater(listaMesas, mesasOrdenadas, listaMesasVacia); actualizarDdlMesas(mesas); } List <EstadoReserva> estadosReserva = _estadoReservaService.Obtener(); if (estadosReserva != null && estadosReserva.Count > 0) { ddlEstadoReserva.DataSource = estadosReserva; ddlEstadoReserva.DataTextField = "Nombre"; ddlEstadoReserva.DataValueField = "Id"; ddlEstadoReserva.DataBind(); ddlEstadoReserva.Items.Insert(0, new ListItem("Seleccionar", "")); ddlEstadoReserva.SelectedIndex = 0; } List <EstadoMesa> estadoMesa = _estadoMesaService.Obtener(); if (estadoMesa != null && estadoMesa.Count > 0) { ddlEstadoMesa.DataSource = estadoMesa; ddlEstadoMesa.DataTextField = "Nombre"; ddlEstadoMesa.DataValueField = "Id"; ddlEstadoMesa.DataBind(); ddlEstadoMesa.Items.Insert(0, new ListItem("Seleccionar", "")); ddlEstadoMesa.SelectedIndex = 0; } List <HorarioReserva> horarioReserva = _horarioReservaService.Obtener(); if (horarioReserva != null && horarioReserva.Count > 0) { var horarioDomingo = horarioReserva.FirstOrDefault(x => x.DiaSemana == 0); horarioReserva.RemoveAt(horarioReserva.FindIndex(x => x.DiaSemana == 0)); horarioReserva.Add(horarioDomingo); listaHorariosReserva.DataSource = horarioReserva; listaHorariosReserva.DataBind(); } } } catch (Exception ex) { string mensaje = ex != null && ex.Message != null ? ex.Message : "Ocurrió un error inesperado. Intente nuevamente"; ScriptManager.RegisterStartupScript(Page, Page.GetType(), "error", "Swal.fire('Error', '" + mensaje + "', 'error');", true); return; } }