private Dictionary <string, object> ParametrosEliminarReserva(SolicitudAsistenciaTecnica solicitud) { return(new Dictionary <string, object> { { "@SolicitudId", solicitud.Id.AsInt() } }); }
public void LiberarNoEscogidos(SolicitudAsistenciaTecnica solicitud, List <Turno> turnos) { _repositorio.EliminarReserva(solicitud); turnos.Where(t => !t.TurnoId.Equals(solicitud.Turno.Id)) .ToList() .ForEach(t => _repositorio.Eliminar(t.Id)); }
public List <Turno> ObtenerPorSolicitud(SolicitudAsistenciaTecnica solicitud) { return(_accesoADatos.Leer("ObtenerTurnoPorSolicitud", ParametrosPorSolicitud(solicitud)) .AsEnumerable() .Select(ToTurno) .ToList()); }
public Turno GuardarConReserva(SolicitudAsistenciaTecnica solicitud, Turno turno) { var guardado = Guardar(turno); _accesoADatos.Escribir("GuardarTurnoConReserva", CrearParametrosGuardarConReserva(solicitud, guardado)); return(guardado); }
public List <Turno> OfrecerTurno(SolicitudAsistenciaTecnica solicitud) { var turnosDisponibles = _agendaServicio.TurnosDisponibles(); var mejoresTurnos = _colaTurnosServicio.BuscarMejoresTurnos(turnosDisponibles, solicitud); return(_agendaServicio.Reservar(solicitud, mejoresTurnos)); }
private Dictionary <string, object> CrearParametrosGuardarConReserva(SolicitudAsistenciaTecnica solicitud, Turno turno) { return(new Dictionary <string, object> { { "@TurnoId", turno.Id.AsInt() }, { "@SolicitudId", solicitud.Id.AsInt() } }); }
public void ConfirmarTurno(SolicitudAsistenciaTecnica solicitud) { var turnos = _turnoServicio.ObtenerTurnosReservador(solicitud); _solicitudAsistenciaRepositorio.Actualizar(solicitud); _turnoServicio.LiberarNoEscogidos(solicitud, turnos); _asistenciaTecnicaRepositorio.Guardar(solicitud.CrearAsistencia()); _estadisticasAsistenciaTecnicaServicio.ComputarEstadisticas(solicitud); }
public void ComputarEstadisticas(SolicitudAsistenciaTecnica solicitud) { if (solicitud.TipoProblema.Nombre != "Falla Hardware") { } var valoresActuales = _estadisticasAsistenciasTecnicas.ObtenerUltima(); var nuevosValores = valoresActuales.Calcular(solicitud); _estadisticasAsistenciasTecnicas.Actualizar(nuevosValores); }
public List <Turno> BuscarMejoresTurnos(List <Turno> turnosDisponibles, SolicitudAsistenciaTecnica solicitud) { var entradas = _cola.ObtenerEntradas(); var cola = new ColaTurnos(new ColaTurnoId(1), entradas); turnosDisponibles.Select(t => new EntradaCola(t, solicitud)) .ToList() .ForEach(e => cola.Agregar(e)); cola.Repriorizar(); var turnos = cola.ExtraerTurnos(solicitud); _cola.GuardarCola(cola); return(turnos); }
public void SolicitarTurno() { try { var usuario = Sesion.Instance.Usuario; var descripcion = _vista.Descripcion; var tipoProblemaSeleccionado = _vista.TipoProblemaSeleccionado.ToEntitty(); _solicitud = new SolicitudAsistenciaTecnica(usuario, descripcion, tipoProblemaSeleccionado); var turnos = _servicio.SolicitarTurno(_solicitud); _vista.Turnos = turnos.Select(TurnoModelo.From).ToList(); _vista.Seconds = 120; _vista.IniciarTimer(); _vista.ConfirmarHabilitado = true; } catch (Exception e) { _vista.MostrarExcepcion(e); } }
public List <Turno> ObtenerTurnosReservados(SolicitudAsistenciaTecnica solicitud) { return(_repositorio.ObtenerPorSolicitud(solicitud)); }
public List <Turno> Reservar(SolicitudAsistenciaTecnica solicitud, List <Turno> mejoresTurnos) { return(mejoresTurnos.Select(t => _repositorio.GuardarConReserva(solicitud, t)).ToList()); }
public void EliminarReserva(SolicitudAsistenciaTecnica solicitud) { _accesoADatos.Escribir("EliminarReserva", ParametrosEliminarReserva(solicitud)); }
public void LiberarNoEscogidos(SolicitudAsistenciaTecnica solicitud, List <Turno> turnos) { _agendaServicio.LiberarNoEscogidos(solicitud, turnos); }
public List <Turno> ObtenerTurnosReservador(SolicitudAsistenciaTecnica solicitud) { return(_agendaServicio.ObtenerTurnosReservados(solicitud)); }
public List <Turno> SolicitarTurno(SolicitudAsistenciaTecnica solicitud) { var guardada = _solicitudAsistenciaRepositorio.Guardar(solicitud); return(_turnoServicio.OfrecerTurno(guardada)); }