public async Task <IActionResult> Create(CreateDashboardViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            DashboardDto dashboardDto = _mapper.Map <CreateDashboardViewModel, DashboardDto>(model);

            if (model.IconFile != null)
            {
                dashboardDto.IconId = await _iconManager.CreateAndGetIconId(model.IconFile);
            }

            dashboardDto.AppUserId = _userManager.GetUserId(User);

            var res = _dashboardManager.Create(dashboardDto).Result;

            if (res != null)
            {
                DashboardViewModel dashmodel = _mapper.Map <DashboardDto, DashboardViewModel>(res);
                if (!dashmodel.IsPublic)
                {
                    dashmodel.DashCreatorUserName = User.Claims.ElementAt(1).Value;
                }
                return(ViewComponent("DashboardElement", dashmodel));
            }
            else
            {
                //ModelState.AddModelError(res.Property, res.Message);
                return(View(model));
            }
        }
示例#2
0
        public IActionResult CreateDashboard(CreateDashboardViewModel model)
        {
            try
            {
                var userId = _userManager.GetUserId(User);

                var selectedDashboardSensors = new List <DashboardSensorViewModel>();
                var allUserSensorsDictionary = this._userSensorService.GetAllUserSensorsByUserDictionary(userId);

                foreach (var userSensor in model.SensorSelection)
                {
                    if (userSensor.IsSelected)
                    {
                        var uS = allUserSensorsDictionary[userSensor.Id];
                        var dashboardSensor =
                            new DashboardSensorViewModel
                        {
                            Description     = uS.Description,
                            Id              = uS.Id,
                            MaxValue        = uS.MaxValue,
                            MinValue        = uS.MinValue,
                            Name            = uS.Name,
                            Value           = uS.Value,
                            UpdateInterval  = uS.UpdateInterval,
                            UserMaxValue    = uS.UserMaxValue,
                            UserMinValue    = uS.UserMinValue,
                            LastUpdate      = uS.LastUpdatedOn,
                            DefaultPosition = uS.UserMaxValue
                        };
                        dashboardSensor.GraphicalId = userSensor.GraphicalRepresentationId;

                        selectedDashboardSensors.Add(dashboardSensor);
                    }
                }

                var dashboardModel = new DashboardViewModel(selectedDashboardSensors);

                TempData.Put("dashboard", dashboardModel);

                return(RedirectToAction("Dashboard", "Sensor"));
            }
            catch
            {
                return(View("PageNotFound"));
            }
        }
示例#3
0
        public IActionResult CreateDashboard()
        {
            try
            {
                var userId = _userManager.GetUserId(User);

                CreateDashboardViewModel model = new CreateDashboardViewModel(this._userSensorService.GetAllUserSensorsByUser(userId)
                                                                              .Select(s => new CreateDashboardSensorSelectionViewModel {
                    Id = s.Id, Name = s.Name, Description = s.Description, Type = s.Type
                }).ToList());

                return(View(model));
            }
            catch
            {
                return(View("PageNotFound"));
            }
        }