public DiscreteCollectionMethodViewData(Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType)
 {
     ViewDataForAngular          = new DiscreteCollectionMethodViewDataForAngular(treatmentBMPAssessmentObservationType.GetDiscreteObservationTypeSchema());
     MeasurementUnitLabelAndUnit =
         $"{treatmentBMPAssessmentObservationType.GetDiscreteObservationTypeSchema().MeasurementUnitLabel} ({treatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitType().LegendDisplayName})";
     AssessmentDescription = treatmentBMPAssessmentObservationType.GetDiscreteObservationTypeSchema().AssessmentDescription;
 }
Exemple #2
0
        public EditViewData(Person currentPerson, List <MeasurementUnitType> measurementUnitTypes,
                            List <ObservationTypeSpecification> observationTypeSpecifications,
                            List <ObservationThresholdType> observationThresholdTypes,
                            List <ObservationTargetType> observationTargetTypes,
                            List <ObservationTypeCollectionMethod> observationTypeCollectionMethods, string submitUrl,
                            Models.NeptunePage instructionsNeptunePage, Models.NeptunePage observationInstructionsNeptunePage,
                            Models.NeptunePage labelAndUnitsInstructionsNeptunePage, Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType) : base(currentPerson, NeptuneArea.OCStormwaterTools)
        {
            EntityName = "Observation Type";
            EntityUrl  = SitkaRoute <TreatmentBMPAssessmentObservationTypeController> .BuildUrlFromExpression(x => x.Index());

            PageTitle = $"{(treatmentBMPAssessmentObservationType != null ? "Edit" : "New")} Observation Type";

            if (treatmentBMPAssessmentObservationType != null)
            {
                SubEntityName = treatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeName;
                SubEntityUrl  = treatmentBMPAssessmentObservationType.GetDetailUrl();
            }

            ViewDataForAngular       = new ViewDataForAngular(observationTypeSpecifications, observationTypeCollectionMethods, observationThresholdTypes, observationTargetTypes, measurementUnitTypes);
            ObservationTypeCancelUrl = treatmentBMPAssessmentObservationType == null
                ? SitkaRoute <TreatmentBMPAssessmentObservationTypeController> .BuildUrlFromExpression(x => x.Index())
                : SitkaRoute <TreatmentBMPAssessmentObservationTypeController> .BuildUrlFromExpression(x =>
                                                                                                       x.Detail(treatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeID));

            SubmitUrl = submitUrl;

            PassFailObservationThresholdTypeID = ObservationThresholdType.None.ObservationThresholdTypeID;
            PassFailObservationTargetTypeID    = ObservationTargetType.PassFail.ObservationTargetTypeID;

            ViewInstructionsNeptunePage               = new ViewPageContentViewData(instructionsNeptunePage, currentPerson);
            ViewObservationInstructionsNeptunePage    = new ViewPageContentViewData(observationInstructionsNeptunePage, currentPerson);
            ViewLabelsAndUnitsInstructionsNeptunePage = new ViewPageContentViewData(labelAndUnitsInstructionsNeptunePage, currentPerson);
        }
Exemple #3
0
 public PassFailCollectionMethodViewData(Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType)
 {
     ViewDataForAngular    = new PassFailCollectionMethodViewDataForAngular(treatmentBMPAssessmentObservationType.GetPassFailSchema());
     PassingScoreLabel     = treatmentBMPAssessmentObservationType.GetPassFailSchema().PassingScoreLabel;
     FailingScoreLabel     = treatmentBMPAssessmentObservationType.GetPassFailSchema().FailingScoreLabel;
     AssessmentDescription = treatmentBMPAssessmentObservationType.GetPassFailSchema().AssessmentDescription;
 }
Exemple #4
0
        public DetailViewData(Person currentPerson,
                              Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType) : base(currentPerson, NeptuneArea.OCStormwaterTools)
        {
            TreatmentBMPAssessmentObservationType = treatmentBMPAssessmentObservationType;
            EntityName = "Observation Type";
            EntityUrl  = SitkaRoute <TreatmentBMPAssessmentObservationTypeController> .BuildUrlFromExpression(c => c.Index());

            PageTitle = TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeName;

            UserHasObservationTypeManagePermissions = new NeptuneAdminFeature().HasPermissionByPerson(currentPerson);

            ViewSchemaDetailUrl = TreatmentBMPAssessmentObservationType.ObservationTypeSpecification.ObservationTypeCollectionMethod.ViewSchemaDetailUrl(TreatmentBMPAssessmentObservationType);

            TreatmentBMPTypeGridSpec = new TreatmentBMPTypeGridSpec(currentPerson)
            {
                ObjectNameSingular  = $"{FieldDefinitionType.TreatmentBMPType.GetFieldDefinitionLabel()}",
                ObjectNamePlural    = $"{FieldDefinitionType.TreatmentBMPType.GetFieldDefinitionLabelPluralized()}",
                SaveFiltersInCookie = true
            };

            TreatmentBMPTypeGridName    = "treatmentBMPTypeGridForObservationType";
            TreatmentBMPTypeGridDataUrl = SitkaRoute <TreatmentBMPAssessmentObservationTypeController> .BuildUrlFromExpression(tc => tc.TreatmentBMPTypeGridJsonData(TreatmentBMPAssessmentObservationType));

            ViewModelForPreview = new EditViewModel(treatmentBMPAssessmentObservationType);
            PreviewUrl          = SitkaRoute <TreatmentBMPAssessmentObservationTypeController> .BuildUrlFromExpression(x => x.PreviewObservationType());
        }
Exemple #5
0
        public EditBenchmarkAndThresholdViewModel(Models.TreatmentBMP treatmentBMP, Models.TreatmentBMPAssessmentObservationType TreatmentBMPAssessmentObservationType)
        {
            TreatmentBMPID = treatmentBMP.TreatmentBMPID;
            TreatmentBMPAssessmentObservationTypeID = TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeID;
            var benchmarkAndThreshold = treatmentBMP.TreatmentBMPBenchmarkAndThresholds.FirstOrDefault(x => x.TreatmentBMPAssessmentObservationTypeID == TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeID);

            BenchmarkValue = benchmarkAndThreshold?.BenchmarkValue;
            ThresholdValue = benchmarkAndThreshold?.ThresholdValue;
        }
Exemple #6
0
        public EditViewModel(Models.TreatmentBMPAssessmentObservationType TreatmentBMPAssessmentObservationType)
        {
            TreatmentBMPAssessmentObservationTypeID   = TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeID;
            TreatmentBMPAssessmentObservationTypeName = TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeName;

            ObservationThresholdTypeID        = TreatmentBMPAssessmentObservationType.ObservationTypeSpecification?.ObservationThresholdTypeID;
            ObservationTargetTypeID           = TreatmentBMPAssessmentObservationType.ObservationTypeSpecification?.ObservationTargetTypeID;
            ObservationTypeCollectionMethodID = TreatmentBMPAssessmentObservationType.ObservationTypeSpecification?.ObservationTypeCollectionMethodID;

            TreatmentBMPAssessmentObservationTypeSchema = TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeSchema;
        }
Exemple #7
0
        public void UpdateModel(Models.TreatmentBMPAssessmentObservationType TreatmentBMPAssessmentObservationType, Person currentPerson)
        {
            TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeName = TreatmentBMPAssessmentObservationTypeName;

            var observationTypeSpecification = ObservationTypeSpecification.All.FirstOrDefault(x =>
                                                                                               x.ObservationTargetTypeID == ObservationTargetTypeID &&
                                                                                               x.ObservationThresholdTypeID == ObservationThresholdTypeID &&
                                                                                               x.ObservationTypeCollectionMethodID == ObservationTypeCollectionMethodID);

            Check.Require(observationTypeSpecification != null, "No valid combination of Target Type, Threshold Type and Collection Method found");

            TreatmentBMPAssessmentObservationType.ObservationTypeSpecificationID = observationTypeSpecification.ObservationTypeSpecificationID;
            TreatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeSchema = TreatmentBMPAssessmentObservationTypeSchema;
        }
            public ObservationTypeSchema(Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType, List <CollectionMethodSectionViewModel> initialAssessmentObservations)
            {
                InitialAssessmentObservations             = initialAssessmentObservations;
                TreatmentBMPAssessmentObservationTypeID   = treatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeID;
                TreatmentBMPAssessmentObservationTypeName = treatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeName;
                ObservationTypeCollectionMethod           = treatmentBMPAssessmentObservationType.ObservationTypeSpecification.ObservationTypeCollectionMethod.ToEnum;

                switch (ObservationTypeCollectionMethod)
                {
                case ObservationTypeCollectionMethodEnum.DiscreteValue:
                    var discreteObservationTypeSchema = treatmentBMPAssessmentObservationType.GetDiscreteObservationTypeSchema();
                    PropertiesToObserve = discreteObservationTypeSchema.PropertiesToObserve
                                          .Select((x, index) => new SelectItemSimple(index, x)).ToList();
                    AssessmentDescription       = discreteObservationTypeSchema.AssessmentDescription;
                    MinimumNumberOfObservations = discreteObservationTypeSchema.MinimumNumberOfObservations;
                    MaximumNumberOfObservations = discreteObservationTypeSchema.MaximumNumberOfObservations ?? int.MaxValue;
                    MinimumValueOfObservations  = discreteObservationTypeSchema.MinimumValueOfObservations;
                    MaximumValueOfObservations  = discreteObservationTypeSchema.MaximumValueOfObservations ?? double.MaxValue;
                    MeasurementUnitLabelAndUnit = $"{discreteObservationTypeSchema.MeasurementUnitLabel} ({treatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitType().LegendDisplayName})";
                    break;

                case ObservationTypeCollectionMethodEnum.PassFail:
                    var passFailObservationTypeSchema = treatmentBMPAssessmentObservationType.GetPassFailSchema();
                    PropertiesToObserve = passFailObservationTypeSchema.PropertiesToObserve
                                          .Select((x, index) => new SelectItemSimple(index, x)).ToList();
                    AssessmentDescription = passFailObservationTypeSchema.AssessmentDescription;
                    PassingScoreLabel     = passFailObservationTypeSchema.PassingScoreLabel;
                    FailingScoreLabel     = passFailObservationTypeSchema.FailingScoreLabel;
                    break;

                case ObservationTypeCollectionMethodEnum.Percentage:
                    var percentageObservationTypeSchema = treatmentBMPAssessmentObservationType.GetPercentageSchema();
                    PropertiesToObserve = percentageObservationTypeSchema.PropertiesToObserve
                                          .Select((x, index) => new SelectItemSimple(index, x)).ToList();
                    AssessmentDescription       = percentageObservationTypeSchema.AssessmentDescription;
                    MeasurementUnitLabelAndUnit = $"{treatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitLabel()} ({treatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitType().LegendDisplayName})";
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }
        public EditBenchmarkAndThresholdViewData(Person currentPerson, Models.TreatmentBMP treatmentBMP,
                                                 Models.TreatmentBMPAssessmentObservationType TreatmentBMPAssessmentObservationType)
            : base(currentPerson, treatmentBMP, TreatmentBMPAssessmentObservationType)
        {
            BenchmarkMeasurementUnitTypeDisplayName = TreatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitType().MeasurementUnitTypeDisplayName;
            ThresholdMeasurementUnitTypeDisplayName = TreatmentBMPAssessmentObservationType.ThresholdMeasurementUnitType().MeasurementUnitTypeDisplayName;

            BenchmarkMeasurementUnitLabel = TreatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitLabel();
            ThresholdMeasurementUnitLabel = TreatmentBMPAssessmentObservationType.ThresholdMeasurementUnitLabel();

            BenchmarkDescription = TreatmentBMPAssessmentObservationType.BenchmarkDescription();
            ThresholdDescription = TreatmentBMPAssessmentObservationType.ThresholdDescription();

            var TreatmentBMPTypeAssessmentObservationType = treatmentBMP.TreatmentBMPType.GetTreatmentBMPTypeObservationType(TreatmentBMPAssessmentObservationType);

            DefaultBenchmarkPlaceholder = TreatmentBMPTypeAssessmentObservationType.DefaultBenchmarkValue.HasValue ? "default is " + TreatmentBMPTypeAssessmentObservationType.DefaultBenchmarkValue.Value : string.Empty;
            DefaultBenchmarkText        = TreatmentBMPTypeAssessmentObservationType.DefaultBenchmarkValue.HasValue ? $"The default value is {TreatmentBMPTypeAssessmentObservationType.DefaultBenchmarkValue} {TreatmentBMPAssessmentObservationType.BenchmarkMeasurementUnitType().MeasurementUnitTypeDisplayName}." : string.Empty;

            DefaultThresholdPlaceholder = TreatmentBMPTypeAssessmentObservationType.DefaultThresholdValue.HasValue ? "default is " + TreatmentBMPTypeAssessmentObservationType.DefaultThresholdValue.Value : string.Empty;
            TargetIsSweetSpot           = TreatmentBMPAssessmentObservationType.GetTargetIsSweetSpot();
            var optionalPlusMinus = TreatmentBMPAssessmentObservationType.GetTargetIsSweetSpot() ? "+/-" : "";

            DefaultThresholdText = TreatmentBMPTypeAssessmentObservationType.DefaultThresholdValue.HasValue ? $"The default value is {optionalPlusMinus} {TreatmentBMPTypeAssessmentObservationType.DefaultThresholdValue} {TreatmentBMPAssessmentObservationType.ThresholdMeasurementUnitType().MeasurementUnitTypeDisplayName}." : string.Empty;
        }
 public CollectionMethodSectionViewModel(TreatmentBMPObservation treatmentBMPObservation, Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType)
 {
     TreatmentBMPAssessmentObservationTypeID = treatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeID;
     ObservationData = treatmentBMPObservation?.ObservationData;
 }
 protected BenchmarkAndThresholdViewData(Person currentPerson, Models.TreatmentBMP treatmentBMP, Models.TreatmentBMPAssessmentObservationType treatmentBMPAssessmentObservationType)
     : this(currentPerson, treatmentBMP, treatmentBMPAssessmentObservationType.TreatmentBMPAssessmentObservationTypeName)
 {
 }