Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using System.Xml.Serialization;
- using System.IO;
- using nu.mrorange;
- using nu.mrorange.config;
- using nu.mrorange.search;
- using nu.mrorange.crs;
- using System.Drawing;
- using System.Threading;
- namespace MrOSearchApp2
- {
- public partial class Form1 : Form
- {
- private string hostName = "", databaseName = "", userName = "sa", passWord = "homermad!";
- int partnerId = -1;
- Thread mainSearchThread;
- public Form1()
- {
- InitializeComponent();
- btnSearch.Enabled = false;
- datePickerDeparture.Value = DateTime.Now.AddDays(7);
- datePickerArrival.Value = DateTime.Now.AddDays(14);
- txtTo.Text = "STO";
- txtFrom.Text = "PAR";
- Server[] servers = GetServers();
- int serverCount = 0;
- foreach (Server server in servers)
- {
- passWord = server.passWord;
- //string serverName = server;//.Split('.')[0];
- //serverName = serverName.Substring(0, 1).ToUpper() + serverName.Remove(0, 1);
- string[] databases;
- try
- {
- databases = Database.GetDatabases(server.IpAddress, server.user, server.passWord);
- }
- catch (Exception ex)
- {
- MessageBox.Show(this, ex.Message);
- return;
- }
- List<TreeNode> nodes = new List<TreeNode>();
- foreach (string database in databases)
- {
- if (
- !database.Contains("avail") &&
- !database.Contains("common") &&
- database != "information_schema" &&
- database != "test" &&
- database != "innodb_status" &&
- database != "mysql")
- nodes.Add(new TreeNode(database));
- }
- if (nodes.Count == 0)
- nodes.Add(new TreeNode("No databases!"));
- TreeNode node = new TreeNode(server.Name, nodes.ToArray());
- node.Name = server.IpAddress;
- TreeView1.Nodes.Add(node);
- serverCount++;
- }
- }
- private static Server[] GetServers()
- {
- XmlSerializer serializer = new XmlSerializer(typeof(List<Server>));
- StreamReader sr = new StreamReader("Servers.xml");
- List<Server> servers = (List<Server>)serializer.Deserialize(sr);
- return servers.ToArray();
- }
- private void TreeView1_DoubleClick(object sender, EventArgs e)
- {
- ComboBoxCustomer.Items.Clear();
- databaseName = TreeView1.SelectedNode.Text;
- hostName = TreeView1.SelectedNode.Parent.Name;
- FillPartnerDropdown();
- }
- private void FillPartnerDropdown()
- {
- //Fill the Partner dropdown
- ComboBoxCustomer.Items.Clear();
- string[] partners = Database.GetPartners(
- TreeView1.SelectedNode.Parent.Name,
- "sa",
- "homermad!",
- TreeView1.SelectedNode.Text);
- ComboBoxCustomer.Items.Add("0 - BASESITE");
- foreach (string partner in partners)
- {
- ComboBoxCustomer.Items.Add(partner);
- }
- ComboBoxCustomer.SelectedIndex = 0;
- }
- private void btnSearch_Click(object sender, EventArgs e)
- {
- mainSearchThread = new Thread(new ThreadStart(DoSearch));
- mainSearchThread.Start();
- }
- private void DoSearch()
- {
- string connectionString = "Server=" + hostName + ";Database=" + databaseName + ";User ID=" + userName + "; Password=" + passWord + ";";
- string[] ageOfChildrenString = txtAgeOfChildren.Text.Split(',');
- decimal child;
- decimal[] ageChildren;
- if (ageOfChildrenString.All(number => Decimal.TryParse(number, out child))) ;
- {
- ageChildren = Array.ConvertAll<string, decimal>(ageOfChildrenString, Convert.ToDecimal);
- }
- ConfigurationManager.DatabaseConnectionString = connectionString;
- PartnerConfig partnerConfig = new PartnerConfig(partnerId);
- AirSearchParameter airParam = new AirSearchParameter();
- airParam.FromCity = txtFrom.Text;
- airParam.ToCity = txtTo.Text;
- airParam.DepartureDate = DateTime.Parse(datePickerDeparture.Text);
- airParam.ReturnDate = DateTime.Parse(datePickerArrival.Text);
- airParam.Currency = txtCurrency.Text;
- airParam.Adults = Convert.ToInt32(NumericAdult.Value);
- airParam.NonAdultAges = ageChildren;
- //airParam.NonAdultAges = txtNrOfChildren.Text.Split(',');
- airParam.OneWay = chkOneWay.Checked;
- airParam.PreferredCarriers = txtPrefCarrier.Text.Split(',');
- airParam.ExcludedCarriers = txtExclCarrier.Text.Split(',');
- airParam.RestrictToCarriers = txtRestrCarriers.Text.Split(',');
- airParam.PartnerConfig = partnerConfig;
- try
- {
- List<Itineraries> itins = BookingEngine.GetAirFaresInterface(airParam);
- foreach (Itinerary itinerary in itins[0])
- {
- ListViewItem item = new ListViewItem(itinerary.Id.ToString()); //ItineraryID
- item.SubItems.Add(new ListViewItem.ListViewSubItem(item, itinerary.CRS.ToString()));
- item.SubItems.Add(new ListViewItem.ListViewSubItem(item, itinerary.MainCarrier));
- item.SubItems.Add(new ListViewItem.ListViewSubItem(item, itinerary.Pricing.BaseFarePerAdult.ToString()));
- item.SubItems.Add(new ListViewItem.ListViewSubItem(item, itinerary.Pricing.TaxPerAdult.ToString()));
- item.SubItems.Add(new ListViewItem.ListViewSubItem(item, (itinerary.Pricing.BaseFarePerAdult + itinerary.Pricing.TaxPerAdult).ToString()));
- item.SubItems.Add(new ListViewItem.ListViewSubItem(item, (itinerary.Pricing.BaseFarePerAdult + itinerary.Pricing.TaxPerAdult + itinerary.Pricing.AddonPricePerAdult).ToString()));
- //item.SubItems.Add(new ListViewItem.ListViewSubItem(item, ev.Subject));
- //item.SubItems.Add(new ListViewItem.ListViewSubItem(item, ev.Message));
- //item.SubItems.Add(new ListViewItem.ListViewSubItem(item, ev.IpAddress));
- //item.SubItems.Add(new ListViewItem.ListViewSubItem(item, ev.Url));
- //item.SubItems.Add(new ListViewItem.ListViewSubItem(item, ev.ExceptionId.ToString()));
- //item.SubItems.Add(new ListViewItem.ListViewSubItem(item, ev.BrowserId.ToString()));
- //listViewItinerary.Items.Add(item);
- UpdateListView(item);
- //firstItin = itinerary.Id; //id
- }
- }
- catch (Exception ex)
- {
- //DisplayNameAttribute error Message.
- MessageBox.Show(ex.Message);
- //Console.Write(ex.StackTrace);
- }
- //listViewItinerary.Items.Clear(); //test
- }
- void UpdateListView(ListView item)
- {
- if (InvokeRequired)
- {
- this.BeginInvoke(new StringParameterDelegate(UpdateListView),w new object[] { item };
- return;
- }
- listViewItinerary.Items.Add(item).ToString();
- }
- private void TreeView1_AfterSelect(object sender, TreeViewEventArgs e)
- {
- btnSearch.Enabled = true;
- }
- private void ComboBoxCustomer_SelectedIndexChanged(object sender, EventArgs e)
- {
- partnerId = int.Parse(ComboBoxCustomer.Text.Substring(0, 3).Replace("-", "").Trim());
- }
- private void datePickerArrival_ValueChanged(object sender, EventArgs e)
- {
- }
- private void listViewItinerary_SelectedIndexChanged(object sender, EventArgs e)
- {
- listViewRowInfo.Items.Clear();
- PartnerConfig partnerConfig = new PartnerConfig(partnerId);
- {
- foreach (ListViewItem item in listViewItinerary.Items)
- {
- if (item.Selected == true)
- {
- int itineraryid = int.Parse(item.SubItems[0].Text);
- Itinerary itinerary = nu.mrorange.BookingEngine.GetItinerary(itineraryid, partnerConfig);
- foreach (Segment seg in itinerary.Segments)
- {
- ListViewItem item2 = new ListViewItem(seg.Id.ToString()); //ItineraryID
- item2.SubItems.Add(new ListViewItem.ListViewSubItem(item2, seg.DateTime1.ToString("hh:mm")));
- item2.SubItems.Add(new ListViewItem.ListViewSubItem(item2, seg.DateTime2.ToString("hh:mm")));
- item2.SubItems.Add(new ListViewItem.ListViewSubItem(item2, seg.City2.ToString()));
- item2.SubItems.Add(new ListViewItem.ListViewSubItem(item2, seg.City1.ToString()));
- item2.SubItems.Add(new ListViewItem.ListViewSubItem(item2, seg.Carrier + "-" + seg.FlightNumber.ToString()));
- listViewRowInfo.Items.Add(item2);
- }
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement