public PartialViewResult EditBasics(OnlandVisualTrashAssessmentAreaPrimaryKey onlandVisualTrashAssessmentAreaPrimaryKey)
        {
            var onlandVisualTrashAssessmentArea = onlandVisualTrashAssessmentAreaPrimaryKey.EntityObject;
            var viewModel = new EditBasicsViewModel(onlandVisualTrashAssessmentArea);

            return(ViewEditBasics(onlandVisualTrashAssessmentArea, viewModel));
        }
        private PartialViewResult ViewEditBasics(EditBasicsViewModel viewModel)
        {
            var adminFeature = new FirmaAdminFeature();
            var viewData     = new EditBasicsViewData(CurrentFirmaSession);

            return(RazorPartialView <EditBasics, EditBasicsViewData, EditBasicsViewModel>(viewData, viewModel));
        }
Example #3
0
        public PartialViewResult EditBasics()
        {
            var tenant          = HttpRequestStorage.Tenant;
            var tenantAttribute = MultiTenantHelpers.GetTenantAttributeFromCache();
            var viewModel       = new EditBasicsViewModel(tenant, tenantAttribute);

            return(ViewEditBasics(viewModel));
        }
        public ActionResult EditBasics(EditBasicsViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(ViewEditBasics(viewModel));
            }

            var tenantAttribute = HttpRequestStorage.DatabaseEntities.AllTenantAttributes.Single(a => a.TenantID == viewModel.TenantID);

            viewModel.UpdateModel(tenantAttribute, CurrentFirmaSession);
            MultiTenantHelpers.ClearTenantAttributeCacheForAllTenants();
            return(new ModalDialogFormJsonResult(new SitkaRoute <ProjectFactSheetController>(c => c.Manage()).BuildUrlFromExpression()));
        }
Example #5
0
        private PartialViewResult ViewEditBasics(EditBasicsViewModel viewModel)
        {
            var adminFeature             = new FirmaAdminFeature();
            var tenantPeople             = HttpRequestStorage.DatabaseEntities.People.ToList().Where(x => adminFeature.HasPermissionByPerson(x)).ToSelectListWithEmptyFirstRow(x => x.PersonID.ToString(CultureInfo.InvariantCulture), x => x.GetFullNameFirstLast());
            var taxonomyLevels           = TaxonomyLevel.All.ToSelectListWithEmptyFirstRow(x => x.TaxonomyLevelID.ToString(CultureInfo.InvariantCulture), x => x.TaxonomyLevelDisplayName);
            var budgetTypeID             = viewModel.BudgetTypeID;
            var budgetTypes              = BudgetType.All.ToDictionary(x => x.BudgetTypeID, x => x.BudgetTypeDisplayName);
            var disabledBudgetTypeValues = new List <int>()
            {
                BudgetType.NoBudget.BudgetTypeID, BudgetType.AnnualBudget.BudgetTypeID
            };
            var costTypes = HttpRequestStorage.DatabaseEntities.CostTypes.Select(x => x.CostTypeName).ToList();
            // if any projects exist that are not ProjectType.Normal we do not want them to be able to turn off Enable Project Type checkbox
            bool canEditEnableProjectTypeCheckbox = !HttpRequestStorage.DatabaseEntities.Projects.Any(x => x.ProjectCategoryID != (int)ProjectCategoryEnum.Normal);
            var  viewData = new EditBasicsViewData(CurrentFirmaSession, tenantPeople, taxonomyLevels, budgetTypeID, budgetTypes, disabledBudgetTypeValues, costTypes, canEditEnableProjectTypeCheckbox);

            return(RazorPartialView <EditBasics, EditBasicsViewData, EditBasicsViewModel>(viewData, viewModel));
        }
Example #6
0
        public ActionResult EditBasics(EditBasicsViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(ViewEditBasics(viewModel));
            }

            var tenantAttribute = HttpRequestStorage.DatabaseEntities.AllTenantAttributes.Single(a => a.TenantID == viewModel.TenantID);
            var oldTenantAttributeTaxonomyLevel = tenantAttribute.TaxonomyLevel;
            var oldTenantAttributeAssociatePerformanceMeasureTaxonomyLevelID = tenantAttribute.AssociatePerfomanceMeasureTaxonomyLevelID;

            viewModel.UpdateModel(tenantAttribute, CurrentFirmaSession);
            if (viewModel.BudgetTypeID == BudgetType.AnnualBudgetByCostType.BudgetTypeID)
            {
                var existingCostTypes = HttpRequestStorage.DatabaseEntities.CostTypes.ToList();
                var allCostTypes      = HttpRequestStorage.DatabaseEntities.AllCostTypes.Local;

                viewModel.UpdateCostTypes(existingCostTypes, allCostTypes);
            }
            var clearOutTaxonomyLeafPerformanceMeasures = oldTenantAttributeTaxonomyLevel.TaxonomyLevelID != tenantAttribute.TaxonomyLevelID || oldTenantAttributeAssociatePerformanceMeasureTaxonomyLevelID != tenantAttribute.AssociatePerfomanceMeasureTaxonomyLevelID;

            if (clearOutTaxonomyLeafPerformanceMeasures)
            {
                var taxonomyLeafPerformanceMeasures = HttpRequestStorage.DatabaseEntities.TaxonomyLeafPerformanceMeasures.ToList();
                foreach (var taxonomyLeafPerformanceMeasure in taxonomyLeafPerformanceMeasures)
                {
                    taxonomyLeafPerformanceMeasure.DeleteFull(HttpRequestStorage.DatabaseEntities);
                }
            }

            // if we are shrinking the number of tiers, we need to collapse child records to hidden parent record(s) named "Default"
            if (oldTenantAttributeTaxonomyLevel.TaxonomyLevelID > tenantAttribute.TaxonomyLevelID)
            {
                var          newTaxonomyLevel         = TaxonomyLevel.ToType(tenantAttribute.TaxonomyLevelID);
                const string defaultTrunkOrBranchName = "Default";
                if (newTaxonomyLevel == TaxonomyLevel.Branch)
                {
                    // create a new "Default" trunk to move all branches to
                    // ensure that name does not already exist
                    var newTaxonomyTrunkDefault = HttpRequestStorage.DatabaseEntities.TaxonomyTrunks.SingleOrDefault(x =>
                                                                                                                     x.TaxonomyTrunkName == defaultTrunkOrBranchName) ?? new TaxonomyTrunk(defaultTrunkOrBranchName);

                    var taxonomyBranches = HttpRequestStorage.DatabaseEntities.TaxonomyBranches.ToList();
                    foreach (var taxonomyBranch in taxonomyBranches)
                    {
                        taxonomyBranch.TaxonomyTrunk = newTaxonomyTrunkDefault;
                    }
                    HttpRequestStorage.DatabaseEntities.SaveChanges();
                    var taxonomyTrunks = HttpRequestStorage.DatabaseEntities.TaxonomyTrunks.Where(x => x.TaxonomyTrunkID != newTaxonomyTrunkDefault.TaxonomyTrunkID).ToList();
                    foreach (var taxonomyTrunk in taxonomyTrunks)
                    {
                        taxonomyTrunk.DeleteFull(HttpRequestStorage.DatabaseEntities);
                    }
                }
                else if (newTaxonomyLevel == TaxonomyLevel.Leaf)
                {
                    var newTaxonomyTrunkDefault = HttpRequestStorage.DatabaseEntities.TaxonomyTrunks.SingleOrDefault(x =>
                                                                                                                     x.TaxonomyTrunkName == defaultTrunkOrBranchName) ?? new TaxonomyTrunk(defaultTrunkOrBranchName);
                    var newTaxonomyBranchDefault = HttpRequestStorage.DatabaseEntities.TaxonomyBranches.SingleOrDefault(x =>
                                                                                                                        x.TaxonomyBranchName == defaultTrunkOrBranchName) ?? new TaxonomyBranch(newTaxonomyTrunkDefault, defaultTrunkOrBranchName);
                    var taxonomyLeaves = HttpRequestStorage.DatabaseEntities.TaxonomyLeafs.ToList();
                    foreach (var taxonomyLeaf in taxonomyLeaves)
                    {
                        taxonomyLeaf.TaxonomyBranch = newTaxonomyBranchDefault;
                    }
                    HttpRequestStorage.DatabaseEntities.SaveChanges();
                    var taxonomyBranches = HttpRequestStorage.DatabaseEntities.TaxonomyBranches.Where(x => x.TaxonomyBranchID != newTaxonomyBranchDefault.TaxonomyBranchID).ToList();
                    foreach (var taxonomyBranch in taxonomyBranches)
                    {
                        taxonomyBranch.DeleteFull(HttpRequestStorage.DatabaseEntities);
                    }

                    var taxonomyTrunks = HttpRequestStorage.DatabaseEntities.TaxonomyTrunks.Where(x => x.TaxonomyTrunkID != newTaxonomyTrunkDefault.TaxonomyTrunkID).ToList();
                    foreach (var taxonomyTrunk in taxonomyTrunks)
                    {
                        taxonomyTrunk.DeleteFull(HttpRequestStorage.DatabaseEntities);
                    }
                }
            }

            MultiTenantHelpers.ClearTenantAttributeCacheForAllTenants();

            return(new ModalDialogFormJsonResult(new SitkaRoute <TenantController>(c => c.Detail()).BuildUrlFromExpression()));
        }
        public ActionResult EditBasics(OnlandVisualTrashAssessmentAreaPrimaryKey onlandVisualTrashAssessmentAreaPrimaryKey, EditBasicsViewModel viewModel)
        {
            var onlandVisualTrashAssessmentArea = onlandVisualTrashAssessmentAreaPrimaryKey.EntityObject;

            if (!ModelState.IsValid)
            {
                return(ViewEditBasics(onlandVisualTrashAssessmentArea, viewModel));
            }

            viewModel.UpdateModel(onlandVisualTrashAssessmentArea);
            SetMessageForDisplay("Successfully updated OVTA Area details");

            return(new ModalDialogFormJsonResult(onlandVisualTrashAssessmentArea.GetDetailUrl()));
        }
        private PartialViewResult ViewEditBasics(OnlandVisualTrashAssessmentArea onlandVisualTrashAssessmentArea, EditBasicsViewModel viewModel)
        {
            var viewData = new EditBasicsViewData(CurrentPerson, onlandVisualTrashAssessmentArea);

            return(RazorPartialView <EditBasics, EditBasicsViewData, EditBasicsViewModel>(viewData, viewModel));
        }