private static bool Esiste(prevent.get.Out infoPrevent, int idprevent) { string id = idprevent.ToString(); foreach (prevent.get.OutRigaPercorsoVisita item in infoPrevent.RigaPercorsoVisita) { if (item.IdMostra == id) { return(true); } } return(false); }
private void GetInfo() { if (!string.IsNullOrEmpty(this.buttonEditCodice.Text)) { XtraMessageBox.Show(string.Format("Non è possibile caricare la prenotazione {0}", this.buttonEditCodice.Text), "Errore", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } Cursor saveCursor = Cursor.Current; try { Cursor.Current = Cursors.WaitCursor; prevent.get.Out obj = RichiestaGet.MakeGet(); if (obj != null) { this.labelControlInfo1.Text = string.Format("Codice: {0}", obj.NumeroPrenotazione); this.labelControlInfo2.Text = string.Format("Denominazione: {0} (pax. {1})", obj.Denominazione, obj.PaxTotali); } else { if (RichiestaGet.UltimoErrore != null) { this.labelControlInfo1.Text = string.Format("Error Code {0}", RichiestaGet.UltimoErrore.ReturnCode); this.labelControlInfo2.Text = RichiestaGet.UltimoErrore.DescrizioneErrore; } else { this.labelControlInfo1.Text = string.Empty; this.labelControlInfo2.Text = string.Empty; } } } finally { Cursor.Current = saveCursor; } }
public static prevent.get.Out MakeGet() { UltimoErrore = null; PreventWebServices.WebReferencePrevent.WSPreventService wsp = new PreventWebServices.WebReferencePrevent.WSPreventService(); string risposta = string.Empty; try { Console.WriteLine("WS_URL: " + wsp.Url); risposta = wsp.book("WinTicket", WsConfig.Username, WsConfig.Password, "G", string.Empty); } catch (Exception ex) { UltimoErrore = new prevent.verifica.Out(); UltimoErrore.DescrizioneErrore = string.Format("Risposta non corretta dal servizio remoto: {0}: {1}", ex.Source, ex.Message); UltimoErrore.ReturnCode = "998"; risposta = string.Empty; } if (!string.IsNullOrEmpty(risposta)) { Console.WriteLine(risposta); risposta = risposta.Replace("+01:00", string.Empty); risposta = risposta.Replace("+02:00", string.Empty); try { if (!risposta.Contains("ReturnCode")) { MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(risposta)); XmlSerializer xml = new XmlSerializer(typeof(prevent.get.Out)); prevent.get.Out dati = (prevent.get.Out)xml.Deserialize(stream); dati.MostraTipo = "0"; var mostra = new int[] { 277, 278, 279 }; foreach (var num in mostra) { if (risposta.Contains(string.Format("<IdTipoBiglietto>{0}</IdTipoBiglietto>", num))) { dati.MostraTipo = "1"; } } return(dati); } else { // errore MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(risposta)); XmlSerializer xml = new XmlSerializer(typeof(prevent.verifica.Out)); UltimoErrore = (prevent.verifica.Out)xml.Deserialize(stream); } } catch (Exception ex) { UltimoErrore = new prevent.verifica.Out(); UltimoErrore.DescrizioneErrore = String.Format("Risposta non corretta dal servizio remoto: {0} ({1})", (risposta.Length < 200 ? risposta : string.Empty), ex.Message); UltimoErrore.ReturnCode = "999"; } } return(null); }
public static bool Prenota(prevent.prenotazione.Parametri parametri, prevent.get.Out vecchiaprenotazione) { UltimoErrore = null; PreventWebServices.WebReferencePrevent.WSPreventService wsp = new PreventWebServices.WebReferencePrevent.WSPreventService(); string richiesta = GetXmlRichiesta(parametri); if (vecchiaprenotazione != null) { richiesta = GetXmlRichiesta(CreaUpdate(parametri, vecchiaprenotazione)); } string risposta = string.Empty; try { if (vecchiaprenotazione != null) { risposta = wsp.book("WinTicket", WsConfig.Username, WsConfig.Password, "U", richiesta); } else { risposta = wsp.book("WinTicket", WsConfig.Username, WsConfig.Password, "P", richiesta); } } catch (Exception) { risposta = string.Empty; } Console.WriteLine(richiesta); Console.WriteLine(risposta); parametri.CodiceTransWinTicket = string.Empty; if (risposta.Contains(@"ReturnCode=""00""")) { if (vecchiaprenotazione != null) { parametri.CodiceTransWinTicket = vecchiaprenotazione.NumeroPrenotazione; } else { int len1 = @"<NumeroPrenotazione>".Length; int pos1 = risposta.IndexOf(@"<NumeroPrenotazione>"); int pos2 = risposta.IndexOf(@"</NumeroPrenotazione>"); parametri.CodiceTransWinTicket = risposta.Substring(pos1 + len1, pos2 - pos1 - len1); Console.WriteLine(String.Format("PRENOTAZIONE:[{0}]", parametri.CodiceTransWinTicket)); } return(true); } else { if (!string.IsNullOrEmpty(risposta)) { // errore MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(risposta)); XmlSerializer xml = new XmlSerializer(typeof(prevent.verifica.Out)); UltimoErrore = (prevent.verifica.Out)xml.Deserialize(stream); } return(false); } }
private static prevent.update.Parametri CreaUpdate(prevent.prenotazione.Parametri parametri, prevent.get.Out vecchiaprenotazione) { prevent.update.Parametri nuovo = new prevent.update.Parametri(); nuovo.CodiceTransWinTicket = parametri.CodiceTransWinTicket; nuovo.Denominazione = parametri.Denominazione; nuovo.NumeroPrenotazione = vecchiaprenotazione.NumeroPrenotazione; nuovo.PaxTotali = parametri.PaxTotali; nuovo.RigaBiglietti = new prevent.update.ParametriRigaBiglietti[parametri.RigaBiglietti.Length]; nuovo.RigaPercorsoVisita = new prevent.update.ParametriRigaPercorsoVisita[parametri.RigaPercorsoVisita.Length]; for (int i = 0; i < parametri.RigaBiglietti.Length; i++) { nuovo.RigaBiglietti[i] = new prevent.update.ParametriRigaBiglietti(); nuovo.RigaBiglietti[i].IdTipoBiglietto = parametri.RigaBiglietti[i].IdTipoBiglietto; nuovo.RigaBiglietti[i].Quantita = parametri.RigaBiglietti[i].Quantita; } for (int i = 0; i < parametri.RigaPercorsoVisita.Length; i++) { nuovo.RigaPercorsoVisita[i] = new prevent.update.ParametriRigaPercorsoVisita(); nuovo.RigaPercorsoVisita[i].DataVisita = parametri.RigaPercorsoVisita[i].DataVisita; nuovo.RigaPercorsoVisita[i].IdMostra = parametri.RigaPercorsoVisita[i].IdMostra; nuovo.RigaPercorsoVisita[i].OraVisita = parametri.RigaPercorsoVisita[i].OraVisita; nuovo.RigaPercorsoVisita[i].PaxVisita = parametri.RigaPercorsoVisita[i].PaxVisita; } nuovo.TipoGS = parametri.TipoGS; nuovo.Scuola = parametri.Scuola; return(nuovo); }