Пример #1
0
        public ActionResult Delete(int id)
        {
            var pryzmaRecord = pryzmaRepository.Get(id);

            if (pryzmaRecord.Doswiadczenie.Started)
            {
                Notifier.AddError("Doświadczenie zostało wystartowane. Brak możliwości usunięcia pryzm.");
                return(RedirectToAction("Index", new { id = pryzmaRecord.Doswiadczenie.Id }));
            }

            foreach (var skladnikRecord in pryzmaRecord.Skladniki.ToList())
            {
                skladnikRepository.Remove(skladnikRecord);
                pryzmaRecord.Skladniki.Remove(skladnikRecord);
            }

            foreach (var pryzmaStartRecord in pryzmaRecord.Starts.ToList())
            {
                pryzmaStartRepository.Remove(pryzmaStartRecord);
                pryzmaRecord.Starts.Remove(pryzmaStartRecord);
            }

            pryzmaRepository.Remove(pryzmaRecord);

            return(RedirectToAction("Index", new { id = pryzmaRecord.Doswiadczenie.Id }));
        }
Пример #2
0
        public ActionResult Delete(int id)
        {
            var doswiadczenieRecord = doswiadczenieRepository.Get(id);

            foreach (var aeracja in doswiadczenieRecord.Aeracje.ToList())
            {
                foreach (var aeracjaAeracjaEntry in aeracja.AeracjaEntries)
                {
                    aeracjaEntryRepository.Remove(aeracjaAeracjaEntry);
                }
                aeracjaRepository.Remove(aeracja);
            }

            foreach (var doswiadczeniePomiar in doswiadczenieRecord.Pomiary)
            {
                foreach (var pryzmaPomiarRecord in doswiadczeniePomiar.Pomiary)
                {
                    pryzmaPomiarRepository.Remove(pryzmaPomiarRecord);
                }
                doswiadczeniePomiarRepository.Remove(doswiadczeniePomiar);
            }

            foreach (var pryzmaRecord in doswiadczenieRecord.Pryzmy.ToList())
            {
                var pryzmaStartRecord = pryzmaStartRepository.GetByPryzma(pryzmaRecord.Id);
                pryzmaStartRepository.Remove(pryzmaStartRecord);
                var pryzmaStopRecord = pryzmaStopRepository.GetByPryzma(pryzmaRecord.Id);
                pryzmaStopRepository.Remove(pryzmaStopRecord);

                foreach (var skladnikRecord in pryzmaRecord.Skladniki.ToList())
                {
                    skladnikRepository.Remove(skladnikRecord);
                    pryzmaRecord.Skladniki.Remove(skladnikRecord);
                }

                pryzmaRepository.Remove(pryzmaRecord);
                doswiadczenieRecord.Pryzmy.Remove(pryzmaRecord);
            }

            doswiadczenieRepository.Remove(doswiadczenieRecord);

            return(RedirectToAction("Index"));
        }
Пример #3
0
        public ActionResult Index(FormCollection collection, int id)
        {
            var pryzmaRecord = pryzmaRepository.Get(id);

            if (pryzmaRecord.Doswiadczenie.Started)
            {
                Notifier.AddError("Doświadczenie zostało wystartowane. Brak możliwości modyfikacji składników pryzmy.");
                return(RedirectToAction("Index", new { id }));
            }

            var viewModel = new SkladnikiViewModel(pryzmaRecord);

            TryUpdateModel(viewModel);

            ExtraValidation(pryzmaRecord, viewModel);

            if (ModelState.IsValid)
            {
                var skladnikRecords = skladnikRepository.QueryByPryzma(id).ToList();
                foreach (var skladnikRecord in skladnikRecords)
                {
                    skladnikRepository.Remove(skladnikRecord);
                }

                if (viewModel.Skladniki != null)
                {
                    foreach (var skladnikViewModel in viewModel.Skladniki)
                    {
                        skladnikViewModel.Record.Pryzma = pryzmaRecord;
                        skladnikRepository.Add(skladnikViewModel.Record);
                    }
                }

                return(RedirectToAction("Index", "Pryzma", new { id = pryzmaRecord.Doswiadczenie.Id }));
            }

            viewModel.Pryzma = pryzmaRecord;

            return(View(viewModel));
        }