/// <summary> /// Vytvorenie inštancie generátora /// </summary> /// <param name="dopravnyBod"></param> /// <param name="cesta"></param> /// <param name="projekt"></param> public Generator(MapDopravnyBod dopravnyBod, string cesta, VSProject projekt) { //nacítanie potrebných údajov zo súboru string cestaProj = Path.GetDirectoryName(cesta); _dopravneBody = DataZoSuboru.Nacitanie.ZoSuboru <MapDopravnyBod[]>(Path.Combine(cestaProj, "MapDopravneBody.json")); _trasaObPoznamka = DataZoSuboru.Nacitanie.ZoSuboru <MapTrasaObecPozn[]>(Path.Combine(cesta, "MapTrasaObPoznamky.json")); _obecnaPoznamka = DataZoSuboru.Nacitanie.ZoSuboru <VSObecnaPoznamka[]>(Path.Combine(cestaProj, "ObecnaPoznamka.json")); _druh = DataZoSuboru.Nacitanie.ZoSuboru <MapTrasaDruh[]>(Path.Combine(cesta, "MapDopravneDruhy.json")); var trasaBody = DataZoSuboru.Nacitanie.ZoSuboru <MapTrasaBod[]>(Path.Combine(cesta, "MapTrasaBody.json")); var mapDu = DataZoSuboru.Nacitanie.ZoSuboru <MapDopravnyUsek[]>(Path.Combine(cestaProj, "MapDopravneUseky.json")); var vlaky = DataZoSuboru.Nacitanie.ZoSuboru <MapVlak[]>(Path.Combine(cesta, "MapVlaky.json")); if (_dopravneBody == null || _druh == null || trasaBody == null || mapDu == null || vlaky == null) { throw new ApplicationException(); } //Upravenie potrebných údajov var trasaBodyVybStanice = FilterDat.TrasaBod.NajdiPodlaDopravnehoBodu(dopravnyBod.ID, trasaBody); _vlaky = FilterDat.Vlak.NajdiVlakyVTrasaBody(trasaBodyVybStanice, vlaky); var trasiVlakov = FilterDat.TrasaBod.NajdiTrasyPoldaVlaku(_vlaky, trasaBody); _trasaBodyVlakov = FilterDat.TrasaBod.NajdiDopravnéUzly(mapDu, trasiVlakov); TrasaBodyVybStanice = trasaBodyVybStanice.GroupBy(c => c.VlakID).Select(c => c.First()).ToArray(); _dopravnyBod = dopravnyBod; _projekt = projekt; _document = new Document(); }
/// <summary> /// zistí názdov dopravného bodu podla jeho id /// </summary> /// <param name="idBodu"></param> /// <param name="dopravneBody"></param> /// <returns></returns> private static string NajdiNazovDopBodu(int idBodu, MapDopravnyBod[] dopravneBody) { //var b = dopravneBody[0]. MapDopravnyBod db = dopravneBody.FirstOrDefault(c => c.ID == idBodu); return(db?.Nazov); }
/// <summary> /// Vytvorý s VSDopravnyBod skrátenú verziu /// </summary> /// <returns></returns> public MapDopravnyBod[] GetMapDopravneBody() { var body = _poseidon.GetDopravneBody(); var config = new MapperConfiguration(cfg => { cfg.CreateMap <VSDopravnyBod, MapDopravnyBod>(); }); IMapper mapper = config.CreateMapper(); List <MapDopravnyBod> array = new List <MapDopravnyBod>(); foreach (var bod in body) { MapDopravnyBod v = mapper.Map <MapDopravnyBod>(bod); array.Add(v); } return(array.ToArray()); }
/// <summary> /// Metóda zavolé uvítacie okno v ktorom sa nastavujú potrebné data /// </summary> /// <param name="uvitanie">true pri štarte ak je okno vypnuté vypne sa aj program | false ak sa menia len nastavenia</param> /// <returns></returns> private void NastavData(bool uvitanie) { using (var uvitacieOkno = new UvitacieOkno(_projekt, _faza)) { uvitacieOkno.ShowDialog(this); if (uvitacieOkno.DialogResult == DialogResult.OK) { _vybranyDopBod = uvitacieOkno.VybranyDopravnyBod; _faza = uvitacieOkno.VybranaFaza; _projekt = uvitacieOkno.VybranyProjekt; CestaProj = @"Data\" + _projekt.Nazov; CestaProjFaz = @"Data\" + _projekt.Nazov + "\\" + _faza; } else { if (uvitanie) { Close(); } } } }