public MezzoPrenotato Get(MezzoPrenotatoCommand command) { //TODO PARTE CHIAMATA DB //TODO DA MODIFICARE CON LA CONNESSIONE AL DB PER IL REPERIMENTO DEI DATI DEFINITIVI //DATI FAKE - ORA LI LEGGO DA FILE List <ComposizioneMezzi> mezzi = new List <ComposizioneMezzi>(); ComposizioneMezzi mezzo = new ComposizioneMezzi(); MezzoPrenotato mezzoPrenotato = new MezzoPrenotato(); string filepath = "Fake/MezziComposizione.json"; string json; using (StreamReader r = new StreamReader(filepath)) { json = r.ReadToEnd(); } mezzi = JsonConvert.DeserializeObject <List <ComposizioneMezzi> >(json); mezzo = mezzi.Where(x => x.Mezzo.Codice.Equals(command.MezzoPrenotato.mezzoComposizione.Mezzo.Codice)).FirstOrDefault(); mezzi.Remove(mezzo); mezzo.IstanteScadenzaSelezione = DateTime.Now.AddSeconds(15); mezzi.Add(mezzo); mezzi.Sort(delegate(ComposizioneMezzi x, ComposizioneMezzi y) { return(Convert.ToInt32(x.TempoPercorrenza).CompareTo(Convert.ToInt32(y.TempoPercorrenza))); }); string fileText = System.IO.File.ReadAllText(@"Fake/MezziComposizione.json"); string jsonNew = JsonConvert.SerializeObject(mezzi); System.IO.File.WriteAllText(@"Fake/MezziComposizione.json", jsonNew); mezzoPrenotato.mezzoComposizione = mezzo; mezzoPrenotato.mezzoComposizione.Id = command.MezzoPrenotato.mezzoComposizione.Id; mezzoPrenotato.codiceSede = command.CodiceSede; return(mezzoPrenotato); }
public async Task <IActionResult> Post(MezzoPrenotato mezzoPrenotato) { var codiceSede = Request.Headers["codicesede"]; var command = new MezzoPrenotatoCommand() { MezzoPrenotato = mezzoPrenotato, CodiceSede = codiceSede }; try { handler.Handle(command); return(Ok()); } catch { return(BadRequest()); } }
public async Task SendNotification(MezzoPrenotatoCommand command) { await _notificationHubContext.Clients.Group(command.MezzoPrenotato.codiceSede).SendAsync("NotifyAddPrenotazioneMezzo", command); }