private static void DodajEmisijeBezIcega( TvProgram program, List <VremenskiPlan> listaEmisijeBezIcega) { TvKucaSingleton tvKuca = TvKucaSingleton.GetTvKucaInstance(); foreach (VremenskiPlan plan in listaEmisijeBezIcega) { Emisija trazena = tvKuca.ListaEmisija.Find(x => x.GetId() == plan.GetEmisijaId()); if (trazena == null) { IspisHelper.EmisijaNePostoji(plan.GetEmisijaId()); break; } bool uspioDodati = false; for (int i = 0; i < program.GetTjedan().Count; i++) { if (program.GetTjedan()[i].GetChildList().Count == 0) { DodajEmisijuNaPocetakPrograma(program, trazena, plan, (i + 1)); uspioDodati = true; break; } else if (program.GetTjedan()[i].GetChildList().Count == 1) { if (UspioDodatPrijePrve(program, trazena, plan, (i + 1))) { uspioDodati = true; break; } else if (UspioDodatNakonZadnje(program, trazena, plan, (i + 1))) { uspioDodati = true; break; } } else { if (UspioDodatPrijePrve(program, trazena, plan, (i + 1))) { uspioDodati = true; break; } else if (UspioDodatiIzmeduDvije(program, trazena, plan, (i + 1))) { uspioDodati = true; break; } else if (UspioDodatNakonZadnje(program, trazena, plan, (i + 1))) { uspioDodati = true; break; } } } if (!uspioDodati) { IspisHelper.EmisijaNemoguceDodati(plan.GetEmisijaId(), program.GetNaziv()); } } }
public void PrikaziPodatke() { string osobeUloge = IspisHelper.DohvatiOsobeUloge(ListaOsobaUloga); string nazivVrste = IspisHelper.DohvatiNazivVrsteEmisije(Vrsta); IspisHelper.Brojac = 0; IRedakTablice redakTablice = new KratkiTekstDecorator( new KratkiTekstDecorator( new KratkiTekstDecorator( new CjelobrojniDecorator( new CjelobrojniDecorator( new CjelobrojniDecorator( new TekstualniDecorator( new TekstualniDecorator( new TekstualniDecorator( new ConcreteRedak()))))))))); string format = redakTablice.NapraviRedak(); string ispis = String.Format(format, "\n" + new String('.', 176), VrijemePrikazivanja.AddMinutes(Trajanje).ToShortTimeString(), VrijemePrikazivanja.ToShortTimeString(), Trajanje, Id, RedniBroj + ".", osobeUloge, nazivVrste, Naziv); Console.WriteLine(ispis); }
/// <summary> /// Metoda služi za filtriranje ispravnih zapisa vremenskih planova pojedinog TV programa /// </summary> /// <param name="nizRedaka">Input niz</param> /// <param name="splitter">Splitter char</param> /// <returns>Vraća listu ispravnog vremenskog plana</returns> public static List <VremenskiPlan> DohvatiVremenskiPlan(string[] nizRedaka, char splitter) { List <VremenskiPlan> vremenskiPlanLista = new List <VremenskiPlan>(); string[] atributiZaglavlja = nizRedaka[0].Split(splitter); for (int i = 1; i < nizRedaka.Length; i++) { int brojGresaka = 0; string[] privremeniObjekt = nizRedaka[i].Split(splitter); if (privremeniObjekt.Length < 2) { brojGresaka++; } else if (!IspravanId(privremeniObjekt[0])) { brojGresaka++; } if (brojGresaka != 0) { IspisHelper.IspisGreskeRedak(i, nizRedaka[i]); } else { vremenskiPlanLista.Add(IzradiVremenskiPlan(privremeniObjekt)); } } return(vremenskiPlanLista); }
/// <summary> /// Metoda koja služi za filtriranje ispravnih zapisa o osobama iz niza redaka osoba /// </summary> /// <param name="nizRedaka">Input niz</param> /// <param name="splitter">Splitter char</param> /// <returns>Vraća listu ispravnih zapisa uloga</returns> public static List <Uloga> DohvatiIspravneUloge(string[] nizRedaka, char splitter) { List <Uloga> izlaznaLista = new List <Uloga>(); string[] atributiZaglavlja = nizRedaka[0].Split(splitter); for (int i = 1; i < nizRedaka.Length; i++) { int brojGresaka = 0; string[] privremeniObjekt = nizRedaka[i].Split(splitter); if (!ProvjeriBrojAtributa(privremeniObjekt, atributiZaglavlja.Length)) { brojGresaka++; } else if (!IspravanId(privremeniObjekt[0])) { brojGresaka++; } else if (!IspravanTekstualniPodatak(privremeniObjekt[1])) { brojGresaka++; } if (brojGresaka != 0) { IspisHelper.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiUlogu(privremeniObjekt)); } } return(izlaznaLista); }
private static void DodajEmisijeJedanIliViseDana( TvProgram program, List <VremenskiPlan> listaEmisijeViseDana) { TvKucaSingleton tvKuca = TvKucaSingleton.GetTvKucaInstance(); foreach (VremenskiPlan plan in listaEmisijeViseDana) { foreach (int brojDana in plan.GetListaDanaEmitiranja()) { bool uspioDodati = false; Emisija trazena = tvKuca.ListaEmisija.Find(x => x.GetId() == plan.GetEmisijaId()); if (trazena == null) { IspisHelper.EmisijaNePostoji(plan.GetEmisijaId()); break; } if (program.GetTjedan()[brojDana - 1].GetChildList().Count == 0) { DodajEmisijuNaPocetakPrograma(program, trazena, plan, brojDana); uspioDodati = true; } else if (program.GetTjedan()[brojDana - 1].GetChildList().Count == 1) { if (UspioDodatPrijePrve(program, trazena, plan, brojDana)) { uspioDodati = true; } else if (UspioDodatNakonZadnje(program, trazena, plan, brojDana)) { uspioDodati = true; } } else { if (UspioDodatPrijePrve(program, trazena, plan, brojDana)) { uspioDodati = true; } else if (UspioDodatiIzmeduDvije(program, trazena, plan, brojDana)) { uspioDodati = true; } else if (UspioDodatNakonZadnje(program, trazena, plan, brojDana)) { uspioDodati = true; } } if (!uspioDodati) { IspisHelper.EmisijaNemoguceDodati( plan.GetEmisijaId(), brojDana, program.GetNaziv()); } } } }
static void Main(string[] args) { DatotekeHelper.ProvjeraUlaznihParametara(args); DatotekeHelper.UcitajPodatkeDatotekeTvKuce(args); DatotekeHelper.UcitajPodatkeDatotekeOsoba(args); DatotekeHelper.UcitajPodatkeDatotekeUloga(args); DatotekeHelper.UcitajPodatkeDatotekeVrsteEmisija(args); DatotekeHelper.UcitajPodatkeDatotekeEmisija(args); DatotekeHelper.UcitajPodatkeDatotekaTvPrograma(); TjedniPlanHelper.PopunjavanjeTjednogRasporeda(); IspisHelper.PrikazGlavnogIzbornika(); Console.ReadLine(); }
public static List <VrstaEmisije> DohvatiIspravneVrsteEmisija( string[] nizRedaka, char splitter) { List <VrstaEmisije> vrsteEmisijeLista = new List <VrstaEmisije>(); string[] atributiZaglavlja = nizRedaka[0].Split(splitter); for (int i = 1; i < nizRedaka.Length; i++) { int brojGresaka = 0; string[] privremeniObjekt = nizRedaka[i].Split(splitter); if (!ProvjeriBrojAtributa(privremeniObjekt, atributiZaglavlja.Length)) { brojGresaka++; } else if (!IspravanId(privremeniObjekt[0])) { brojGresaka++; } else if (!IspravanTekstualniPodatak(privremeniObjekt[1])) { brojGresaka++; } else if (!IspravanPodatakMozeImatReklame(privremeniObjekt[2])) { brojGresaka++; } else if (!IspravnoMaxTrajanjeReklama(privremeniObjekt[3])) { brojGresaka++; } if (brojGresaka != 0) { IspisHelper.IspisGreskeRedak(i, nizRedaka[i]); } else { vrsteEmisijeLista.Add(IzradiVrstuEmisije(privremeniObjekt)); } } return(vrsteEmisijeLista); }