Example #1
0
        public void Plane(DateTime monat)
        {
            var schichten       = _schichtRepository.GetAll();
            var aktuelleSchicht = schichten.Where(x => x.Veranstaltung.BeginntAm.Month == monat.Month);

            _zeitBuchungen.BeginChanges();
            foreach (var schicht in aktuelleSchicht)
            {
                var person = _personalFinder.FindeFür(schicht.Aufgabe.Beginn, schicht.Aufgabe.Ende, schicht.Aufgabe.Rolle);
                if (person == null)
                {
                    continue;
                }

                schicht.Person = person;
                var zeitbuchung = new ZeitBuchung
                {
                    Person      = person,
                    Rolle       = schicht.Aufgabe.Rolle,
                    Wann        = schicht.Aufgabe.Beginn,
                    Minuten     = (uint)(schicht.Aufgabe.Ende - schicht.Aufgabe.Beginn).TotalMinutes,
                    MinutenSatz = person.MinutenSatz
                };
                _zeitBuchungen.Add(zeitbuchung);
            }
            _schichtRepository.Save();
            _zeitBuchungen.Save();
        }
Example #2
0
 public ZeitBuchungsViewModel(ZeitBuchung x)
 {
     Wann         = x.Wann;
     Zeit         = GetZeit(x.Minuten);
     MinutenSatz  = x.MinutenSatz == 0m ? "" : x.MinutenSatz.ToString();
     RollenName   = x.Rolle.Name;
     PersonenName = x.Person.Name;
     if (!string.IsNullOrWhiteSpace(x.Person.Vorname))
     {
         PersonenName += ", " + x.Person.Vorname;
     }
     Verbucht = x.Verbucht;
 }