public async Task <IActionResult> UpdateIntervento([FromBody] SintesiRichiesta chiamata) { var codiceSede = Request.Headers["codicesede"]; var idUtente = Request.Headers["IdUtente"]; var command = new UpDateInterventoCommand() { Chiamata = chiamata, CodiceSede = codiceSede, CodUtente = idUtente }; try { this._Updatehandler.Handle(command); return(Ok()); } catch (Exception ex) { if (ex.Message.Contains(Costanti.UtenteNonAutorizzato)) { return(StatusCode(403, Costanti.UtenteNonAutorizzato)); } return(BadRequest()); } }
public async Task SendNotification(UpDateInterventoCommand intervento) { var SintesiRichiesta = _getSintesiById.GetSintesi(intervento.Chiamata.Codice); intervento.Chiamata = SintesiRichiesta; var SediDaNotificare = _getGerarchiaToSend.Get(intervento.Chiamata.CodSOCompetente, SintesiRichiesta.CodSOAllertate.ToArray()); foreach (var sede in SediDaNotificare) { var boxRichiesteQuery = new BoxRichiesteQuery() { CodiciSede = new string[] { sede } }; var boxInterventi = _boxRichiesteHandler.Handle(boxRichiesteQuery).BoxRichieste; var sintesiRichiesteAssistenzaMarkerQuery = new SintesiRichiesteAssistenzaMarkerQuery() { CodiciSedi = new string[] { sede } }; var listaSintesiMarker = (List <SintesiRichiestaMarker>) this._sintesiRichiesteAssistenzaMarkerHandler.Handle(sintesiRichiesteAssistenzaMarkerQuery).SintesiRichiestaMarker; await _notificationHubContext.Clients.Group(sede).SendAsync("ModifyAndNotifySuccess", intervento); await _notificationHubContext.Clients.Group(sede).SendAsync("NotifyGetBoxInterventi", boxInterventi); await _notificationHubContext.Clients.Group(sede).SendAsync("NotifyGetRichiestaUpDateMarker", listaSintesiMarker.LastOrDefault(marker => marker.Codice == intervento.Chiamata.Codice)).ConfigureAwait(false); } }
public async Task <IActionResult> UpdateIntervento([FromBody] SintesiRichiesta chiamata) { var command = new UpDateInterventoCommand() { Chiamata = chiamata }; try { this._Updatehandler.Handle(command); return(Ok()); } catch { return(BadRequest()); } }
public async Task SendNotification(UpDateInterventoCommand intervento) { var sintesiRichiesteAssistenzaQuery = new SintesiRichiesteAssistenzaQuery(); var listaSintesi = (List <SintesiRichiesta>) this._sintesiRichiesteAssistenzaHandler.Handle(sintesiRichiesteAssistenzaQuery).SintesiRichiesta; var boxRichiesteQuery = new BoxRichiesteQuery(); var boxInterventi = _boxRichiesteHandler.Handle(boxRichiesteQuery).BoxRichieste; var sintesiRichiesteAssistenzaMarkerQuery = new SintesiRichiesteAssistenzaMarkerQuery(); var listaSintesiMarker = (List <SintesiRichiestaMarker>) this._sintesiRichiesteAssistenzaMarkerHandler.Handle(sintesiRichiesteAssistenzaMarkerQuery).SintesiRichiestaMarker; intervento.Chiamata = listaSintesi.LastOrDefault(richiesta => richiesta.Codice == intervento.Chiamata.Codice); await _notificationHubContext.Clients.Group(intervento.Chiamata.Operatore.Sede.Codice).SendAsync("ModifyAndNotifySuccess", intervento); await _notificationHubContext.Clients.Group(intervento.Chiamata.Operatore.Sede.Codice).SendAsync("NotifyGetBoxInterventi", boxInterventi); await _notificationHubContext.Clients.Group(intervento.Chiamata.Operatore.Sede.Codice).SendAsync("NotifyGetRichiestaUpDateMarker", listaSintesiMarker.LastOrDefault(marker => marker.Codice == intervento.Chiamata.Codice)).ConfigureAwait(false); }