private DTOnextBus notificacionProximidad2(EParada Eparada, int viaje, TimeSpan hora) { int Parada = Eparada.IdParada; ESalida salida = iSalida.getSalidas(iViaje.getViaje(viaje).IdSalida); string matric = iVehiculo.getVehiculos(salida.IdVehiculo).Matricula; DTOnextBus nextBus = new DTOnextBus(); if (isFinalParada(Parada, viaje)) { nextBus.matricula = "N/A"; nextBus.parada = "N/A"; nextBus.hora = "N/A"; return(nextBus); } int idNextP = nextParadaNot(Parada, viaje); int tiempo = iTramo.getTramos(salida.IdLinea, idNextP).TiempoEstimado; TimeSpan minutes = TimeSpan.FromMinutes(tiempo); string horastr = hora.Add(minutes).ToString(); nextBus.parada = iParada.getParada(idNextP).Nombre; nextBus.matricula = matric; nextBus.hora = horastr; return(nextBus); }
//public string Baseurl = "https://localhost:44330/conductor/"; public DTOnextBus llegada(DTOLegada llegada, string tokenJWT) { using (var client = new HttpClient()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokenJWT); string URLespecial = ConfigurationManager.AppSettings["baseURL"] + "/general/llegada"; var response = client.PostAsJsonAsync(URLespecial, llegada).Result; DTOnextBus returnValue = response.Content.ReadAsAsync <DTOnextBus>().Result; return(returnValue); } }
public IHttpActionResult llegada([FromBody] DTOLegada llegada) { try { if (llegada == null) { return(Content(HttpStatusCode.BadRequest, "No.")); } DTOnextBus res = cGeneral.CrearLlegada(llegada.idViaje, TimeSpan.Parse(llegada.hora), Convert.ToDateTime(llegada.fecha)); return(Ok(res)); } catch (Exception) { return(NotFound()); } }
public ActionResult ingresarHF(DTOLegada llegada) { DTOnextBus siguientes = pxc.llegada(llegada, Session["tokenJWT"].ToString()); string sig = ""; if (siguientes != null) { if (siguientes.matricula != "N/A") { sig = "El ómnibus con matrícula (" + siguientes.matricula + "), Pasara por la parada (" + siguientes.parada + "), a las " + siguientes.hora + " hrs."; var hubContext = GlobalHost.ConnectionManager.GetHubContext <Notificacion>(); hubContext.Clients.All.notificarUsr(sig); } } return(RedirectToAction("lstViajes")); }
public DTOnextBus CrearLlegada(int idViaje, TimeSpan hora, DateTime fecha) { List <ETramo> tramos = iLinea.getLinea(iSalida.getSalidas(iViaje.getViaje(idViaje).IdSalida).IdLinea).Tramo.ToList(); List <EParada> paradas = new List <EParada>(); //todas las paradas del viaje foreach (var tramo in tramos) { paradas.Add(iParada.getParada(tramo.IdParada)); } List <ELlegada> llegadas = new List <ELlegada>(); //todas las llegadas del viaje foreach (var llegada in iLllegada.getAllLlegadas()) { if (llegada.idViaje == idViaje) { llegadas.Add(iLllegada.getLlegada(llegada.idParada, llegada.idViaje)); } } int idUltParada = llegadas.Last().idParada; //ultima llegada por la que paso EParada proxP = iParada.getParada(idUltParada); int ord = orden(idUltParada, tramos); if (!isUltima(idUltParada, tramos)) { proxP = nextParada(tramos, ord); if (isFinalParada(proxP.IdParada, idViaje)) { iViaje.finalizarViaje(idViaje); iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus ee = new DTOnextBus(); ee.matricula = "N/A"; ee.hora = "N/A"; ee.parada = "N/A"; return(ee); } iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus siguientesPjrs = notificacionProximidad2(proxP, idViaje, hora); return(siguientesPjrs); } else { if (isFinalParada(proxP.IdParada, idViaje)) { iViaje.finalizarViaje(idViaje); iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus sigui = new DTOnextBus(); sigui.matricula = "N/A"; sigui.hora = "N/A"; sigui.parada = "N/A"; return(sigui); } iLllegada.addLlegada(proxP.IdParada, idViaje, hora, fecha); DTOnextBus siguientesPjrs = new DTOnextBus(); siguientesPjrs.matricula = "N/A"; siguientesPjrs.hora = "N/A"; siguientesPjrs.parada = "N/A"; return(siguientesPjrs); } }