Ejemplo n.º 1
0
        private void SaveAnsattTilstedes()
        {
            if (AnsattTilstedes.Count == 0)
            {
                var newAnsattTilstede = new AnsattTilstede {
                    IsChanged = true, Ansatt = this, UkeType = UkeType.GetById((int)UkeTypeEnum.LikUke)
                };
                AnsattTilstedes.Add(newAnsattTilstede);
            }

            if (AnsattTilstedes.Any(ansattTilstede => ansattTilstede.IsChanged))
            {
                foreach (var ansattTilstede in AnsattTilstedes)
                {
                    if (ansattTilstede.IsChanged)
                    {
                        ansattTilstede.Save();
                    }
                }
            }

            var ansattTilstedesOld = AnsattTilstede.GetAll().Where(ansattTilstede => ansattTilstede.Ansatt.Id == Id);

            foreach (var ansattTilstede in ansattTilstedesOld)
            {
                if (AnsattTilstedes.Any(t => t.Id == ansattTilstede.Id) == false)
                {
                    ansattTilstede.Delete();
                }
            }
        }
Ejemplo n.º 2
0
        public void Update(string navn, decimal stillingsStørrelse, string tlfNr, int avdelingId, int stillingsTypeId, IList <int> jobberIKlasserIds, IList <int> jobberISfosIds, ICollection <AnsattTilstede> ansattTilstedes)
        {
            Update(navn, stillingsStørrelse, tlfNr, avdelingId, stillingsTypeId, jobberIKlasserIds, jobberISfosIds);

            foreach (var ansattTilstede in ansattTilstedes)
            {
                var existingAnsattTilstede = AnsattTilstedes.First(e => e.Id == ansattTilstede.Id);

                existingAnsattTilstede.Update(
                    ansattTilstede.MandagStart,
                    ansattTilstede.MandagSlutt,
                    ansattTilstede.MandagFri,
                    ansattTilstede.TirsdagStart,
                    ansattTilstede.TirsdagSlutt,
                    ansattTilstede.TirsdagFri,
                    ansattTilstede.OnsdagStart,
                    ansattTilstede.OnsdagSlutt,
                    ansattTilstede.OnsdagFri,
                    ansattTilstede.TorsdagStart,
                    ansattTilstede.TorsdagSlutt,
                    ansattTilstede.TorsdagFri,
                    ansattTilstede.FredagStart,
                    ansattTilstede.FredagSlutt,
                    ansattTilstede.FredagFri,
                    ansattTilstede.Skole,
                    ansattTilstede.Ansatt.Id,
                    ansattTilstede.UkeType.Id
                    );
            }

            if (AnsattTilstedes.Any(ansattTilstede => ansattTilstede.IsChanged))
            {
                IsChanged = true;
            }
        }
Ejemplo n.º 3
0
        public void DeleteAnsattTilstede(int id)
        {
            if (AnsattTilstedes.Count > 0)
            {
                var existingAnsattTilstede = AnsattTilstedes.Where(ansattTilstede => ansattTilstede.Id == id).First();
                AnsattTilstedes.Remove(existingAnsattTilstede);

                IsChanged = true;
            }
        }
Ejemplo n.º 4
0
        public void AddAnsattTilstede()
        {
            AnsattTilstede newAnsattTilstede;

            var existingAnsattTilstede = AnsattTilstedes.Count > 0 ? AnsattTilstedes.First() : null;

            if (existingAnsattTilstede != null)
            {
                newAnsattTilstede = new AnsattTilstede
                {
                    Id           = AnsattTilstedeDummyId--,
                    IsChanged    = true,
                    Ansatt       = this,
                    UkeType      = UkeType.GetById((int)UkeTypeEnum.UlikUke),
                    MandagStart  = existingAnsattTilstede.MandagStart,
                    MandagSlutt  = existingAnsattTilstede.MandagSlutt,
                    MandagFri    = existingAnsattTilstede.MandagFri,
                    TirsdagStart = existingAnsattTilstede.TirsdagStart,
                    TirsdagSlutt = existingAnsattTilstede.TirsdagSlutt,
                    TirsdagFri   = existingAnsattTilstede.TirsdagFri,
                    OnsdagStart  = existingAnsattTilstede.OnsdagStart,
                    OnsdagSlutt  = existingAnsattTilstede.OnsdagSlutt,
                    OnsdagFri    = existingAnsattTilstede.OnsdagFri,
                    TorsdagStart = existingAnsattTilstede.TorsdagStart,
                    TorsdagSlutt = existingAnsattTilstede.TorsdagSlutt,
                    TorsdagFri   = existingAnsattTilstede.TorsdagFri,
                    FredagStart  = existingAnsattTilstede.FredagStart,
                    FredagSlutt  = existingAnsattTilstede.FredagSlutt,
                    FredagFri    = existingAnsattTilstede.FredagFri
                };
            }
            else
            {
                newAnsattTilstede = new AnsattTilstede {
                    Id = AnsattTilstedeDummyId--, IsChanged = true, Ansatt = this, UkeType = UkeType.GetById((int)UkeTypeEnum.LikUke)
                };
            }

            AnsattTilstedes.Add(newAnsattTilstede);

            IsChanged = true;
        }
Ejemplo n.º 5
0
        public double DiffTimer()
        {
            var timerPrUke = TimerPrUke();

            return(AnsattTilstedes.Count > 0 ? (AnsattTilstedes.Average(a => a.TotalHours()) - Convert.ToDouble(timerPrUke)) : Convert.ToDouble(-timerPrUke));
        }