/// <summary> /// Vytvorý s VSTrasaBod skrátenú verziu /// </summary> /// <returns></returns> public MapTrasaBod[] GetMapTrasaBody() { VSTrasaBod[] trasy; try { trasy = _poseidon.GetTrasaBody(); } catch (System.Net.WebException ex) { throw ex; } var config = new MapperConfiguration(cfg => { cfg.CreateMap <VSTrasaBod, MapTrasaBod>(); }); IMapper mapper = config.CreateMapper(); List <MapTrasaBod> array = new List <MapTrasaBod>(); foreach (var trasa in trasy) { MapTrasaBod v = mapper.Map <MapTrasaBod>(trasa); array.Add(v); } return(array.ToArray()); }
/// <summary> /// Do dokumentu pridá vlak ktorý prechádza danou stanicou /// </summary> /// <param name="trasBodStanice"> vybraná trasa vlaku pre ktorý sa robý výpis</param> /// <param name="table"> tabulka do ktorej sa vloží info o vlaku</param> /// <param name="riadok"> na akú pozíciu riadku v tabulke sa zapíše info o vlaku</param> /// <param name="text"> zoznam staníc a časou cez ktoré prechádza daný vlak </param> /// <param name="poznamka"> poznámka priradená k danému vlaku</param> /// <param name="cas"></param> private void NastavenieTabulkyVlakov(MapTrasaBod trasBodStanice, Table table, int riadok, string text, string poznamka, string cas) { table.AddRow(false, 7); TableRow dataRow = table.Rows[riadok]; //čas Paragraph p1 = dataRow.Cells[0].AddParagraph(); p1.Format.HorizontalAlignment = HorizontalAlignment.Center; TextRange tR1 = p1.AppendText(cas); tR1.CharacterFormat.FontSize = 5; dataRow.Cells[0].Width = 5; //druh Paragraph p2 = dataRow.Cells[1].AddParagraph(); p2.Format.HorizontalAlignment = HorizontalAlignment.Center; TextRange tR2 = p2.AppendText(FilterDat.TrasaDruh.NajdiDruhVlaku(trasBodStanice.VlakID, _druh)); tR2.CharacterFormat.FontSize = 5; dataRow.Cells[1].Width = 12; //čislo Paragraph p3 = dataRow.Cells[2].AddParagraph(); p3.Format.HorizontalAlignment = HorizontalAlignment.Center; TextRange tR3 = p3.AppendText(FilterDat.Vlak.ZisiteCisloVlaku(trasBodStanice.VlakID, _vlaky) + ""); tR3.CharacterFormat.FontSize = 5; dataRow.Cells[2].Width = 10; //zo smeru Paragraph p4 = dataRow.Cells[3].AddParagraph(); p4.Format.HorizontalAlignment = HorizontalAlignment.Center; TextRange tR4 = p4.AppendText(text); tR4.CharacterFormat.FontSize = 5; dataRow.Cells[3].Width = 93; dataRow.Cells[3].CellFormat.VerticalAlignment = VerticalAlignment.Middle; //Poznamky Paragraph p5 = dataRow.Cells[4].AddParagraph(); p5.Format.HorizontalAlignment = HorizontalAlignment.Center; TextRange tR5 = p5.AppendText(poznamka); tR5.CharacterFormat.FontSize = 5; dataRow.Cells[4].Width = 25; dataRow.Cells[5].Width = 12; dataRow.Cells[6].Width = 12; }
public MapTrasaBod[] MapujTrasaBody(VSTrasaBod[] trasy) { var config = new MapperConfiguration(cfg => { cfg.CreateMap <VSTrasaBod, MapTrasaBod>(); }); IMapper mapper = config.CreateMapper(); List <MapTrasaBod> array = new List <MapTrasaBod>(); foreach (var trasa in trasy) { MapTrasaBod v = mapper.Map <MapTrasaBod>(trasa); array.Add(v); } return(array.ToArray()); }
/// <summary> /// Vytvorý text z názvami staníc a práchodom do danej stanice pre vlak ktorý má danú aktualnu trasu /// </summary> /// <param name="aktualnaTrasa"></param> /// <param name="body"></param> /// <param name="dopravneBody"></param> /// <returns></returns> public static string VytvorTextZoSmeru(MapTrasaBod aktualnaTrasa, MapTrasaBod[] body, MapDopravnyBod[] dopravneBody) { MapTrasaBod[] bodyStanicPredDist = body.Where(c => c.Poradi < aktualnaTrasa.Poradi && c.AktCisloVlaku == aktualnaTrasa.AktCisloVlaku) .GroupBy(c => c.BodID).Select(c => c.First()).OrderBy(c => c.Poradi).Select(c => c).ToArray(); string text = ""; for (int i = 0; i < bodyStanicPredDist.Length; i++) { if (i == bodyStanicPredDist.Length - 1) { text += string.Format("{0}({1:%h}.{1:%m})", NajdiNazovDopBodu(bodyStanicPredDist[i].BodID, dopravneBody), TimeSpan.FromSeconds(bodyStanicPredDist[i].CasPrijazdu)); } else { text += string.Format("{0}({1:%h}.{1:%m}) - ", NajdiNazovDopBodu(bodyStanicPredDist[i].BodID, dopravneBody), TimeSpan.FromSeconds(bodyStanicPredDist[i].CasPrijazdu)); } } return(text); }