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