コード例 #1
0
        public ActionResult ModalAction(DerivativeParameters parameters)
        {
            ValidateDerivativeParameters(parameters, DerivativeParametersValidator.DerivativeIdentifierWithAction);
            ValidateDerivativeParameters(parameters, Enum.GetName(parameters.Action.GetType(), parameters.Action));

            return(RedirectToAction(Enum.GetName(parameters.Action.GetType(), parameters.Action), parameters.GetActionSpecificParameters()));
        }
コード例 #2
0
        public async Task <ActionResult> ListDerivatives(DerivativeParameters parameters)
        {
            ValidateDerivativeParameters(parameters, DerivativeParametersValidator.NoValidation);

            var filter = new DerivativeFilter()
            {
                FilterMessage = parameters.FilterMessage,
                CarLine       = parameters.CarLine,
                ModelYear     = parameters.ModelYear,
                Gateway       = parameters.Gateway,
                Action        = DerivativeAction.Derivatives
            };

            filter.InitialiseFromJson(parameters);

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

            var jQueryResult = new JQueryDataTableResultModel(results);

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

            return(Json(jQueryResult));
        }
コード例 #3
0
 public static DerivativeFilter FromParameters(DerivativeParameters parameters)
 {
     return(new DerivativeFilter()
     {
         DerivativeId = parameters.DerivativeId,
         Action = parameters.Action
     });
 }
コード例 #4
0
        public async Task <ActionResult> ModalContent(DerivativeParameters parameters)
        {
            ValidateDerivativeParameters(parameters, DerivativeParametersValidator.Action);

            var filter         = DerivativeMappingFilter.FromParameters(parameters);
            var derivativeView = await GetModelFromParameters(parameters);

            return(PartialView(GetContentPartialViewName(parameters.Action), derivativeView));
        }
コード例 #5
0
 public static FdpDerivative FromParameters(DerivativeParameters parameters)
 {
     return(new FdpDerivative()
     {
         FdpDerivativeId = parameters.DerivativeId,
         ProgrammeId = parameters.ProgrammeId,
         Gateway = parameters.Gateway
     });
 }
コード例 #6
0
        public async Task <ActionResult> DerivativePage(DerivativeParameters parameters)
        {
            var filter = new DerivativeFilter()
            {
                PageIndex = PageIndex,
                PageSize  = PageSize
            };

            return(View(await DerivativeViewModel.GetModel(DataContext, filter)));
        }
コード例 #7
0
        private void ValidateDerivativeParameters(DerivativeParameters parameters, string ruleSetName)
        {
            var validator = new DerivativeParametersValidator();
            var result    = validator.Validate(parameters, ruleSet: ruleSetName);

            if (!result.IsValid)
            {
                throw new ValidationException(result.Errors);
            }
        }
コード例 #8
0
        public async Task <ActionResult> ContextMenu(DerivativeParameters parameters)
        {
            ValidateDerivativeParameters(parameters, DerivativeParametersValidator.DerivativeIdentifier);

            var filter = DerivativeFilter.FromParameters(parameters);

            filter.Action = DerivativeAction.Derivative;

            var derivativeView = await DerivativeViewModel.GetModel(DataContext, filter);

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

            if (derivativeView.Derivative is EmptyFdpDerivative)
            {
                return(JsonGetFailure(string.Format("Derivative does not exist", parameters.DerivativeId)));
            }

            derivativeView.Derivative = await DataContext.Vehicle.DeleteFdpDerivative(FdpDerivative.FromParameters(parameters));

            if (derivativeView.Derivative is EmptyFdpDerivative)
            {
                return(JsonGetFailure(string.Format("Derivative '{0}' could not be deleted", derivativeView.Derivative.DerivativeCode)));
            }

            return(JsonGetSuccess());
        }
コード例 #10
0
 private async Task <DerivativeViewModel> GetModelFromParameters(DerivativeParameters parameters)
 {
     return(await DerivativeViewModel.GetModel(DataContext, DerivativeMappingFilter.FromParameters(parameters)));
 }