/// <summary> /// Pocet stĺpov na ktoré je treba generovať generuje sa od 1-2 doplnky /// na stĺpe a ako count sa berie Min(pocet stĺpov, paCount) /// </summary> /// <param name="paCount"></param> public override void Generate(int paCount) { var db = new Databaza(); var reader = db.SpecialSelect("select cislo, to_char(DATUM_INSTALACIE, 'DD.MM.YYYY') as datum from s_stlp where DATUM_INSTALACIE is not null"); var count = 0; const char znacka = 'Z'; const char reklama = 'R'; const char obmedzenie = 'O'; foreach (var row in reader) { var idStlpu = int.Parse(row["CISLO"].ToString()); var datumInstalacieStlpa = DateTime.Parse(row["DATUM"].ToString()); var prvyDatumInstalacieDoplnku = RandomDay(datumInstalacieStlpa, DateTime.Now); var druhyDatumInstalacieDoplnku = RandomDay(prvyDatumInstalacieDoplnku, DateTime.Now); var result = _random.Next() % 2; if (result == 0) { db.VlozDoplnokStlpu(idStlpu, reklama, GenerujReklamu(), prvyDatumInstalacieDoplnku); if (_random.Next() % 2 == 0) { db.VlozDoplnokStlpu(idStlpu, znacka, GenerujZnacku(), druhyDatumInstalacieDoplnku); } } else if (result == 1) { db.VlozDoplnokStlpu(idStlpu, znacka, GenerujZnacku(), prvyDatumInstalacieDoplnku); if (_random.Next() % 2 == 0) { db.VlozDoplnokStlpu(idStlpu, reklama, GenerujReklamu(), druhyDatumInstalacieDoplnku); } } else { db.VlozDoplnokStlpu(idStlpu, obmedzenie, GenerujRychlostneObmedzenie(), prvyDatumInstalacieDoplnku); } if (++count == paCount) { break; } } }
public override bool Insert() { if (string.IsNullOrEmpty(DatumDemontaze)) { return(UseDbMethod(Databaza.VlozDoplnokStlpu(Cislo, TypDoplnku, Popis, DatumInstalacie))); } return(UseDbMethod(Databaza.VlozDoplnokStlpu(Cislo, TypDoplnku, Popis, DatumInstalacie, DateTime.Parse(DatumDemontaze)))); }