/// <summary> /// Questo metodo utilizza la classe <see cref="GeneratoreRichieste" /> per generare una /// serie di interventi fake. /// </summary> /// <param name="args">Inutilizzato</param> private static void Main(string[] args) { ConfigureLog(); var getUnitaOperativaRadice = new GetUnitaOperativaRadice_Con_Dir_Com_Dist(); var espandiPinNodoSuOrganigramma = new EspandiPinNodoSuOrganigramma(getUnitaOperativaRadice); var getMezziInServizioPerUnitaOperativa_Fake = new GetMezziInServizioPerUnitaOperativa_Fake(espandiPinNodoSuOrganigramma); var generatoreCoordinateIntervento = new GeneratoreCoordinateInterventoPerUO(); var generatoreFakeRichieste = new GeneratoreRichieste( "TO.1000", getMezziInServizioPerUnitaOperativa_Fake, DateTime.UtcNow.AddDays(-5), DateTime.UtcNow, 50, 45 * 60, 15 * 60, 50 * 60, 25 * 60, new[] { 0.70f, 0.23f, 0.05f, 0.02f }, generatoreCoordinateIntervento ); var richieste = generatoreFakeRichieste.Genera().ToArray(); Log.Debug(JsonConvert.SerializeObject(richieste)); }
/// <summary> /// Questo metodo utilizza la classe <see cref="GeneratoreRichieste" /> per generare una /// serie di interventi fake. /// </summary> /// <param name="args">Inutilizzato</param> private static void Main(string[] args) { ConfigureLog(); var DBContext = new DbContext("mongodb://localhost:27017", "sovvf"); var Salvataggio = new SaveRichiesta(DBContext); var getUnitaOperativaRadice = new GetUnitaOperativaRadice_Con_Dir_Com_Dist(); var espandiPinNodoSuOrganigramma = new EspandiPinNodoSuOrganigramma(getUnitaOperativaRadice); var getMezziInServizioPerUnitaOperativa_Fake = new GetMezziInServizioPerUnitaOperativa_Fake(espandiPinNodoSuOrganigramma); var generatoreCoordinateIntervento = new GeneratoreCoordinateInterventoPerUO(); var generatoreFakeRichieste = new GeneratoreRichieste( "RM.1000", getMezziInServizioPerUnitaOperativa_Fake, DateTime.UtcNow.AddDays(-5), DateTime.UtcNow, 50, 45 * 60, 15 * 60, 50 * 60, 25 * 60, new[] { 0.70f, 0.23f, 0.05f, 0.02f }, generatoreCoordinateIntervento ); var richieste = generatoreFakeRichieste.Genera().ToArray(); int indice = 00000; int anno = DateTime.Now.Year; foreach (var richiesta in richieste) { if (richiesta.Partenze.Count > 0) { int ultimeDueCifreAnno = anno % 100; int maxNumero = indice; string returnFormatString = string.Format("{0}{1}{2:D5}", richiesta.CodSOCompetente.Split('.')[0], ultimeDueCifreAnno, maxNumero); string codiceMezzo = ""; string codiceFonte = ""; if (richiesta.Eventi.ToList().Find(x => x is UscitaPartenza) != null) { codiceMezzo = ((UscitaPartenza)richiesta.Eventi.ToList().Find(x => x is UscitaPartenza)).CodiceMezzo; } if (richiesta.Eventi.ToList().Find(x => x is InizioPresaInCarico) != null) { codiceFonte = ((InizioPresaInCarico)richiesta.Eventi.ToList().Find(x => x is InizioPresaInCarico)).CodiceFonte; } if (!string.IsNullOrWhiteSpace(codiceFonte)) { richiesta.UtPresaInCarico = new List <string> { codiceFonte } } ; foreach (var evento in richiesta.Eventi) { if (evento is ComposizionePartenze) { ((ComposizionePartenze)evento).Partenza = generatoreFakeRichieste.GeneraListaPartenze(richiesta.CodSOCompetente.Split('.')[0], codiceMezzo).First(); ((ComposizionePartenze)evento).Componenti = new List <ComponentePartenza>().ToHashSet(); } } richiesta.CodRichiesta = returnFormatString; } Salvataggio.Save(richiesta); indice++; } //Log.Debug(JsonConvert.SerializeObject(richieste)); }