private static void TagOfficeJob([NotNull] TimeLimitEntry timeLimitEntry, [NotNull] HouseholdTrait newTrait) { var livingTags = newTrait.Tags.Where(x => x.Tag.Name.Contains("Living Pattern / Office Job")).ToList(); if (livingTags.Count != 1) { throw new LPGException("More than one living pattern"); } newTrait.DeleteHHTTag(livingTags[0]); if (timeLimitEntry.Tag == null) { throw new LPGException("Tag was null"); } newTrait.AddTag(timeLimitEntry.Tag); }
private static void TagAlarms([NotNull] Simulator sim, [NotNull] TimeLimitEntry timeLimitEntry, [NotNull] HouseholdTrait newTrait) { var livingTags = newTrait.Tags.Where(x => x.Tag.Name.Contains("Living Pattern")).ToList(); foreach (HHTTag livingTag in livingTags) { newTrait.DeleteHHTTag(livingTag); } TimeSpan endTime = timeLimitEntry.BeginTime; List <TraitTag> tags = new List <TraitTag> { GetTraitTagByName(sim, "Living Pattern / Part Time Job"), GetTraitTagByName(sim, "Living Pattern / Retiree"), GetTraitTagByName(sim, "Living Pattern / Stay at Home / Regular"), GetTraitTagByName(sim, "Living Pattern / Two Shift Work"), GetTraitTagByName(sim, "Living Pattern / University / Student Independent"), GetTraitTagByName(sim, "Living Pattern / University / Student Living at Home") }; if (endTime.Hours <= 7) { tags.Add(GetTraitTagByName(sim, "Living Pattern / Office Job / Early (5-7am)")); tags.Add(GetTraitTagByName(sim, "Living Pattern / Office Job / Medium (7-9am)")); tags.Add(GetTraitTagByName(sim, "Living Pattern / Office Job / Late (9-11am)")); } else if (endTime.Hours <= 8) { tags.Add(GetTraitTagByName(sim, "Living Pattern / Office Job / Medium (7-9am)")); tags.Add(GetTraitTagByName(sim, "Living Pattern / Office Job / Late (9-11am)")); } else { tags.Add(GetTraitTagByName(sim, "Living Pattern / Office Job / Late (9-11am)")); } foreach (TraitTag tag in tags) { if (tag == null) { throw new LPGException("Tag not found"); } newTrait.AddTag(tag); } }