Example #1
0
        private void SaveElevTilstedes()
        {
            if (ElevTilstedes.Count == 0)
            {
                AddElevTilstede();
            }

            if (ElevTilstedes.Any(elevTilstede => elevTilstede.IsChanged))
            {
                foreach (var elevTilstede in ElevTilstedes)
                {
                    if (elevTilstede.IsChanged)
                    {
                        elevTilstede.Save();
                    }
                }
            }

            var elevTilstedesOld = ElevTilstede.GetAll().Where(elevTilstede => elevTilstede.Elev.Id == Id);

            foreach (var elevTilstede in elevTilstedesOld)
            {
                if (ElevTilstedes.Any(t => t.Id == elevTilstede.Id) == false)
                {
                    elevTilstede.Delete();
                }
            }
        }
Example #2
0
        public bool Update(
            string navn,
            decimal sfoProsent,
            int klasseId,
            int sfoId,
            int trinnId,
            int hovedPedagogId,
            int bemanningsNormSkoleId,
            int bemanningsNormSfoId,
            string tlfNr,
            ICollection <ElevTilstede> elevTilstedes
            )
        //ICollection<ElevTilstede> elevTilstedes
        //IList<int> elevTilstedeIds
        {
            if ((TlfNr ?? string.Empty) != (tlfNr ?? string.Empty))
            {
                TlfNr     = tlfNr;
                IsChanged = true;
            }

            foreach (var elevTilstede in elevTilstedes)
            {
                var existingElevTilstede = ElevTilstedes.First(e => e.Id == elevTilstede.Id);

                existingElevTilstede.Update(
                    elevTilstede.MandagStart,
                    elevTilstede.MandagSlutt,
                    elevTilstede.TirsdagStart,
                    elevTilstede.TirsdagSlutt,
                    elevTilstede.OnsdagStart,
                    elevTilstede.OnsdagSlutt,
                    elevTilstede.TorsdagStart,
                    elevTilstede.TorsdagSlutt,
                    elevTilstede.FredagStart,
                    elevTilstede.FredagSlutt,
                    elevTilstede.Elev.Id,
                    elevTilstede.UkeType.Id
                    );
            }

            if (ElevTilstedes.Any(elevTilstede => elevTilstede.IsChanged))
            {
                IsChanged = true;
            }

            Update(navn, sfoProsent, klasseId, sfoId, trinnId, hovedPedagogId, bemanningsNormSkoleId, bemanningsNormSfoId);

            //var elevTilstedeIdsOld = ElevTilstedes.OrderBy(elevTilstede => elevTilstede.Id).Select(elevTilstede => elevTilstede.Id).ToList();

            //if (elevTilstedeIdsOld.Count != elevTilstedeIds.Count
            //    || elevTilstedeIdsOld.SequenceEqual(elevTilstedeIds.OrderBy(i => i)) == false)
            //{
            //    ElevTilstedes.Clear();
            //    foreach (var elevTilstede in elevTilstedeIds)
            //    {
            //        ElevTilstedes.Add(ElevTilstede.GetById(elevTilstede));
            //    }
            //    IsChanged = true;
            //}

            return(IsChanged);
        }