Ejemplo n.º 1
0
        public LineVM UpdateLine(LineVM lineToAdd)
        {
            var lineAsDTO         = _mapper.Map <LineVM, Line>(lineToAdd);
            var LineInsertedAsDTO = _lineRepository.UpdateLine(lineAsDTO);
            var lineAsVM          = _mapper.Map <Line, LineVM>(LineInsertedAsDTO);

            return(lineAsVM);
        }
        public LineVM Put(LineVM updateLine)
        {
            var result = _lineService.UpdateLine(updateLine);

            return(result);
        }
        public LineVM Post(LineVM newLine)
        {
            var result = _lineService.AddLine(newLine);

            return(result);
        }
Ejemplo n.º 4
0
 public IActionResult UpdateLine([FromBody] LineVM lineViewModel)
 {
     return(GetResult(() => _lineService.UpdateLine(lineViewModel.MapToLineModel()), r => r));
 }
Ejemplo n.º 5
0
        public UserMainPageViewModel(string login = "")
        {
            if (login != "")
            {
                // поиск пользователя в БД
                _user = TrainSQL_Commands.FindUser(login);

                // получение данных пользователя
                UserPhoto = Helper.BytesToBitmapImage(_user.Photo);
                UserLogin = _user.Login;
                UserEmail = _user.UserEmail;
                UserRole  = TrainSQL_Commands.GetUserRole(_user);

                // прогресс пользователя
                List <Progress> progress = TrainSQL_Commands.GetUserProgress(UserLogin);

                // проверка, прошёл ли пользователь хотя бы 1 тест
                if (progress != null && progress.Count() > 1)
                {
                    Items = new ObservableCollection <BaseCoordinate>();

                    // построение графика прогресса пользователя
                    for (int i = 0; i < progress.Count - 1; i++)
                    {
                        // создание новой линии
                        LineVM line = new LineVM()
                        {
                            X1 = i * 70,
                            Y1 = 210 - progress[i].RightAnswersQuantity * 32,
                            X2 = (i + 1) * 70,
                            Y2 = 210 - progress[i + 1].RightAnswersQuantity * 32
                        };

                        // выбор цвета линии на графике
                        if (line.Y1 > line.Y2)
                        {
                            line.StrokeColor = Brushes.Lime; // зелёный - результаты улучшились
                        }
                        else if (line.Y1 < line.Y2)
                        {
                            line.StrokeColor = Brushes.Red; // красный - результаты ухудшились
                        }
                        else
                        {
                            line.StrokeColor = Brushes.Gold; // жёлтый - - результаты не изменились
                        }
                        // добавление линии в коллекцию
                        Items.Add(line);

                        // добавление даты прохождения теста
                        Items.Add(new TextBlockVM()
                        {
                            Left    = 70 * i + 40,
                            Top     = 210,
                            TextOut = progress[i + 1].TestDate.ToString()
                        });
                    }

                    CanWidth = 75 * progress.Count();
                }
            }
        }