Ejemplo n.º 1
0
 private void PrepareViewBag(bool isCreateMode, AchsenSegmentModel model)
 {
     ViewBag.IsNew    = isCreateMode;
     ViewBag.IsLocked = false;
     if (!isCreateMode)
     {
         var segment = achsensegmentService.GetCurrentEntities().FirstOrDefault(s => s.Id == model.Id);
         if (segment != null)
         {
             ViewBag.IsLocked = segment.AchsenReferenzen.Any(r =>
                                                             r.ReferenzGruppe != null &&
                                                             r.ReferenzGruppe.StrassenabschnittGIS != null &&
                                                             r.ReferenzGruppe.StrassenabschnittGIS.IsLocked);
         }
     }
 }
        private ErfassungsabschlussModel CreateErfassungsabschlussModel()
        {
            var availableErfassungsabschlussen = historizationService.GetAvailableErfassungsabschlussen().OrderBy(ea => ea.AbschlussDate);
            var erfassungsabschlussModel       = availableErfassungsabschlussen.FirstOrDefault();
            var dropDownItemList = availableErfassungsabschlussen
                                   .ToDropDownItemList(ea => ea.AbschlussDate.Year, ea => ea.AbschlussDate, erfassungsabschlussModel);

            ViewBag.ErfassungsabschlussModellen = dropDownItemList;

            ErfassungsPeriod currentErfassungsperiod = historizationService.GetCurrentErfassungsperiod();

            bool isThereMissingZustandsabschnitte;

            switch (currentErfassungsperiod.NetzErfassungsmodus)
            {
            case NetzErfassungsmodus.Summarisch:
                isThereMissingZustandsabschnitte = false;
                break;

            case NetzErfassungsmodus.Tabellarisch:
                isThereMissingZustandsabschnitte = strassenabschnittService.IsThereMissingZustandsabschnitte();
                break;

            case NetzErfassungsmodus.Gis:
                isThereMissingZustandsabschnitte = strassenabschnittGisService.IsThereMissingZustandsabschnitte();
                break;

            default:
                throw new ArgumentOutOfRangeException("NetzErfassungsmodus");
            }

            ViewBag.IsThereMissingZustandsabschnitte = isThereMissingZustandsabschnitte;
            ViewBag.IsMandantenDetailsCompleted      = mandantDetailsService.GetCurrentMandantDetails().IsCompleted;
            ViewBag.AreThereLockedStrassenabschnitte = strassenabschnittGisService.AreThereLockedStrassenabschnitte();
            ViewBag.NetzErfassungsmodus        = currentErfassungsperiod.NetzErfassungsmodus;
            ViewBag.LastClosedErfassungsPeriod = erfassungsPeriodService.GetNewestClosedErfassungsPeriod();
            ViewBag.IsLastClosedYear           = erfassungsPeriodService.GetClosedErfassungsPeriodModels().Count == 1;

            if (currentErfassungsperiod.NetzErfassungsmodus == NetzErfassungsmodus.Gis)
            {
                ViewBag.ApproxWaitTime = GisHistorizationTimeEstimate.GetApproxHistorizationTime(achsenSegmentService.GetCurrentEntities().Count());
            }

            return(erfassungsabschlussModel);
        }