Ejemplo n.º 1
0
        public IHttpActionResult CreateNewModel(RebalanceCreationModel model)
        {
            if (model != null && ModelState.IsValid)
            {
                List <Domain.Portfolio.Rebalance.TemplateDetailsItemParameter> parameters = new List <Domain.Portfolio.Rebalance.TemplateDetailsItemParameter>();
                foreach (var parameter in model.parameters)
                {
                    parameters.Add(new Domain.Portfolio.Rebalance.TemplateDetailsItemParameter
                    {
                        EquityId         = parameter.parameterId,
                        ItemName         = parameter.parameterName,
                        CurrentWeighting = (double)parameter.weighting,
                        ModelId          = model.modelId,
                        identityMetaKey  = parameter.identityMetaKey
                    });
                }
                ;

                Domain.Portfolio.Rebalance.RebalanceModel newModel = new Domain.Portfolio.Rebalance.RebalanceModel
                {
                    ModelId       = model.modelId,
                    AdviserId     = User.Identity.GetUserId(),
                    ClientGroupId = model.clientGroupId,
                    ModelName     = model.name,
                    ProfileId     = (int)Enum.Parse(typeof(RebalanceModelProfile), model.profileId),
                    TemplateDetailsItemParameters = parameters
                };

                if (model.modelId != null)
                {
                    edisRepo.UpdateRebalanceModel(newModel);
                }
                else
                {
                    edisRepo.CreateRebalanceModel(newModel);
                }

                return(Ok());
                //rebRepo.CreateNewModel(model, User.Identity.GetUserId());
            }
            return(BadRequest());
        }