コード例 #1
0
        public async Task <ActionResult> ListSpecialFeatureMappings(SpecialFeatureMappingParameters parameters)
        {
            ValidateFeatureMappingParameters(parameters, SpecialFeatureMappingParametersValidator.NoValidation);

            var filter = new SpecialFeatureMappingFilter()
            {
                FilterMessage = parameters.FilterMessage,
                CarLine       = parameters.CarLine,
                ModelYear     = parameters.ModelYear,
                Gateway       = parameters.Gateway,
                Action        = SpecialFeatureMappingAction.Mappings
            };

            filter.InitialiseFromJson(parameters);

            var results = await SpecialFeatureMappingViewModel.GetModel(DataContext, filter);

            var jQueryResult = new JQueryDataTableResultModel(results);

            foreach (var result in results.SpecialFeatureMappings.CurrentPage)
            {
                jQueryResult.aaData.Add(result.ToJQueryDataTableResult());
            }

            return(Json(jQueryResult));
        }
コード例 #2
0
 public static SpecialFeatureMappingFilter FromFeatureMappingParameters(SpecialFeatureMappingParameters parameters)
 {
     return(new SpecialFeatureMappingFilter()
     {
         SpecialFeatureMappingId = parameters.SpecialFeatureMappingId,
         Action = parameters.Action
     });
 }
コード例 #3
0
        public async Task <ActionResult> ModalContent(SpecialFeatureMappingParameters parameters)
        {
            ValidateFeatureMappingParameters(parameters, SpecialFeatureMappingParametersValidator.Action);

            var filter = SpecialFeatureMappingFilter.FromFeatureMappingParameters(parameters);
            var derivativeMappingView = await SpecialFeatureMappingViewModel.GetModel(DataContext, filter);

            return(PartialView(GetContentPartialViewName(parameters.Action), derivativeMappingView));
        }
コード例 #4
0
 public static FdpSpecialFeatureMapping FromParameters(SpecialFeatureMappingParameters parameters)
 {
     return(new FdpSpecialFeatureMapping()
     {
         FdpSpecialFeatureMappingId = parameters.SpecialFeatureMappingId,
         ProgrammeId = parameters.ProgrammeId,
         Gateway = parameters.Gateway
     });
 }
コード例 #5
0
        public async Task <ActionResult> SpecialFeatureMappingPage(SpecialFeatureMappingParameters parameters)
        {
            var filter = new SpecialFeatureMappingFilter()
            {
                PageIndex = PageIndex,
                PageSize  = PageSize
            };

            return(View(await SpecialFeatureMappingViewModel.GetModel(DataContext, filter)));
        }
コード例 #6
0
        private void ValidateFeatureMappingParameters(SpecialFeatureMappingParameters parameters, string ruleSetName)
        {
            var validator = new SpecialFeatureMappingParametersValidator();
            var result    = validator.Validate(parameters, ruleSet: ruleSetName);

            if (!result.IsValid)
            {
                throw new ValidationException(result.Errors);
            }
        }
コード例 #7
0
        public ActionResult ModalAction(SpecialFeatureMappingParameters parameters)
        {
            ValidateFeatureMappingParameters(parameters, SpecialFeatureMappingParametersValidator.SpecialFeatureIdentifierWithAction);
            ValidateFeatureMappingParameters(parameters, Enum.GetName(parameters.Action.GetType(), parameters.Action));

            if (parameters.Action == SpecialFeatureMappingAction.CopyAll || parameters.Action == SpecialFeatureMappingAction.Copy)
            {
                TempData["CopyToGateways"] = parameters.CopyToGateways;
            }

            return(RedirectToAction(Enum.GetName(parameters.Action.GetType(), parameters.Action), parameters.GetActionSpecificParameters()));
        }
コード例 #8
0
        public async Task <ActionResult> ContextMenu(SpecialFeatureMappingParameters parameters)
        {
            ValidateFeatureMappingParameters(parameters, SpecialFeatureMappingParametersValidator.SpecialFeatureMappingIdentifier);

            var filter = SpecialFeatureMappingFilter.FromFeatureMappingParameters(parameters);

            filter.Action = SpecialFeatureMappingAction.Mapping;

            var derivativeMappingView = await SpecialFeatureMappingViewModel.GetModel(DataContext, filter);

            return(PartialView("_ContextMenu", derivativeMappingView));
        }
コード例 #9
0
        public async Task <ActionResult> CopyAll(SpecialFeatureMappingParameters parameters)
        {
            var derivativeMappingView = await GetModelFromParameters(parameters);

            if (derivativeMappingView.SpecialFeatureMapping is EmptyFdpSpecialFeatureMapping)
            {
                return(JsonGetFailure("FeatureMapping does not exist"));
            }

            var results = await DataContext.Vehicle.CopyFdpSpecialFeatureMappingsToDocument(parameters.DocumentId.GetValueOrDefault(), parameters.TargetDocumentId.GetValueOrDefault());

            if (results == null || !results.Any())
            {
                return(JsonGetFailure(string.Format("FeatureMappings could not be copied", derivativeMappingView.SpecialFeatureMapping.ImportFeatureCode)));
            }

            return(JsonGetSuccess());
        }
コード例 #10
0
        public async Task <ActionResult> Delete(SpecialFeatureMappingParameters parameters)
        {
            var specialFeatureMappingView = await GetModelFromParameters(parameters);

            if (specialFeatureMappingView.SpecialFeatureMapping is EmptyFdpSpecialFeatureMapping)
            {
                return(JsonGetFailure("FeatureMapping does not exist"));
            }

            specialFeatureMappingView.SpecialFeatureMapping = await DataContext.Vehicle.DeleteFdpSpecialFeatureMapping(FdpSpecialFeatureMapping.FromParameters(parameters));

            if (specialFeatureMappingView.SpecialFeatureMapping is EmptyFdpSpecialFeatureMapping)
            {
                return(JsonGetFailure(string.Format("FeatureMapping '{0}' could not be deleted", specialFeatureMappingView.SpecialFeatureMapping.ImportFeatureCode)));
            }

            return(JsonGetSuccess());
        }
コード例 #11
0
        public async Task <ActionResult> Copy(SpecialFeatureMappingParameters parameters)
        {
            parameters.CopyToGateways = (IEnumerable <string>)TempData["CopyToGateways"];
            var derivativeMappingView = await GetModelFromParameters(parameters);

            if (derivativeMappingView.SpecialFeatureMapping is EmptyFdpSpecialFeatureMapping)
            {
                return(JsonGetFailure("FeatureMapping does not exist"));
            }

            derivativeMappingView.SpecialFeatureMapping = await DataContext.Vehicle.CopyFdpSpecialFeatureMappingToDocument(FdpSpecialFeatureMapping.FromParameters(parameters), parameters.DocumentId.GetValueOrDefault());

            if (derivativeMappingView.SpecialFeatureMapping is EmptyFdpSpecialFeatureMapping)
            {
                return(JsonGetFailure(string.Format("FeatureMapping '{0}' could not be copied", derivativeMappingView.SpecialFeatureMapping.ImportFeatureCode)));
            }

            return(JsonGetSuccess());
        }
コード例 #12
0
 private async Task <SpecialFeatureMappingViewModel> GetModelFromParameters(SpecialFeatureMappingParameters parameters)
 {
     return(await SpecialFeatureMappingViewModel.GetModel(DataContext, SpecialFeatureMappingFilter.FromFeatureMappingParameters(parameters)));
 }