예제 #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();
                }
            }
        }
예제 #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;
            }
        }