Пример #1
0
        public PartialViewResult DeleteProjectType(ProjectTypePrimaryKey projectTypePrimaryKey)
        {
            var projectType = projectTypePrimaryKey.EntityObject;
            var viewModel   = new ConfirmDialogFormViewModel(projectType.ProjectTypeID);

            return(ViewDeleteProjectType(projectType, viewModel));
        }
Пример #2
0
        public PartialViewResult Edit(ProjectTypePrimaryKey projectTypePrimaryKey)
        {
            var projectType = projectTypePrimaryKey.EntityObject;
            var viewModel   = new EditViewModel(projectType);

            return(ViewEdit(viewModel, projectType.TaxonomyBranch.DisplayName));
        }
Пример #3
0
        public GridJsonNetJObjectResult <Project> ProjectsGridJsonData(ProjectTypePrimaryKey projectTypePrimaryKey)
        {
            var gridSpec                 = new BasicProjectInfoGridSpec(CurrentPerson, true);
            var projectProjectTypes      = projectTypePrimaryKey.EntityObject.GetAssociatedProjects(CurrentPerson);
            var gridJsonNetJObjectResult = new GridJsonNetJObjectResult <Project>(projectProjectTypes, gridSpec);

            return(gridJsonNetJObjectResult);
        }
Пример #4
0
        public ActionResult Edit(ProjectTypePrimaryKey projectTypePrimaryKey, EditViewModel viewModel)
        {
            var projectType = projectTypePrimaryKey.EntityObject;

            if (!ModelState.IsValid)
            {
                return(ViewEdit(viewModel, projectType.TaxonomyBranch.DisplayName));
            }

            viewModel.UpdateModel(projectType, CurrentPerson);
            return(new ModalDialogFormJsonResult());
        }
Пример #5
0
        public ActionResult DeleteProjectType(ProjectTypePrimaryKey projectTypePrimaryKey,
                                              ConfirmDialogFormViewModel viewModel)
        {
            var projectType = projectTypePrimaryKey.EntityObject;

            if (!ModelState.IsValid)
            {
                return(ViewDeleteProjectType(projectType, viewModel));
            }

            projectType.DeleteFull(HttpRequestStorage.DatabaseEntities);
            return(new ModalDialogFormJsonResult());
        }
Пример #6
0
        public ViewResult Detail(ProjectTypePrimaryKey projectTypePrimaryKey)
        {
            var projectType = projectTypePrimaryKey.EntityObject;
            var currentPersonCanViewProposals = CurrentPerson.CanViewProposals;

            var projectTypeProjects = projectType.Projects.ToList().GetActiveProjectsAndProposalsVisibleToUser(CurrentPerson).Where(x => x.ProjectStage.ShouldShowOnMap()).ToList();

            var projectMapCustomization = new ProjectMapCustomization(ProjectLocationFilterType.ProjectType,
                                                                      new List <int> {
                projectType.ProjectTypeID
            }, ProjectColorByType.ProjectStage);
            var projectLocationsLayerGeoJson =
                new LayerGeoJson($"{FieldDefinition.ProjectLocation.GetFieldDefinitionLabel()}",
                                 Project.MappedPointsToGeoJsonFeatureCollection(projectTypeProjects, true, false), "red", 1,
                                 LayerInitialVisibility.Show);
            var projectLocationsMapInitJson = new ProjectLocationsMapInitJson(projectLocationsLayerGeoJson,
                                                                              projectMapCustomization, "ProjectTypeProjectMap");

            var projectLocationsMapViewData = new ProjectLocationsMapViewData(projectLocationsMapInitJson.MapDivID,
                                                                              ProjectColorByType.ProjectStage.DisplayName,
                                                                              MultiTenantHelpers.GetTopLevelTaxonomyTiers(),
                                                                              CurrentPerson.CanViewProposals);

            var associatePerformanceMeasureTaxonomyLevel =
                MultiTenantHelpers.GetAssociatePerformanceMeasureTaxonomyLevel();
            var canHaveAssociatedPerformanceMeasures = associatePerformanceMeasureTaxonomyLevel == TaxonomyLevel.Leaf;
            var taxonomyTierPerformanceMeasures      = projectType.GetTaxonomyTierPerformanceMeasures();
            var relatedPerformanceMeasuresViewData   = new RelatedPerformanceMeasuresViewData(
                associatePerformanceMeasureTaxonomyLevel, true, taxonomyTierPerformanceMeasures,
                canHaveAssociatedPerformanceMeasures);
            List <PerformanceMeasureChartViewData> performanceMeasureChartViewDatas = null;

            if (canHaveAssociatedPerformanceMeasures)
            {
                performanceMeasureChartViewDatas = taxonomyTierPerformanceMeasures.Select(x =>
                                                                                          new PerformanceMeasureChartViewData(x.Key, CurrentPerson, false, new List <Project>())).ToList();
            }

            var taxonomyLevel = MultiTenantHelpers.GetTaxonomyLevel();
            var viewData      = new DetailViewData(CurrentPerson, projectType, projectLocationsMapInitJson,
                                                   projectLocationsMapViewData, canHaveAssociatedPerformanceMeasures, relatedPerformanceMeasuresViewData,
                                                   performanceMeasureChartViewDatas, taxonomyLevel);

            return(RazorView <Summary, DetailViewData>(viewData));
        }