public ActionResult Create(CreateTrainingViewModel model)
        {
            if (this.ModelState.IsValid)
            {
                var dishesToAddInTraining = new List<Dish>();
                var authorId = this.User.Identity.GetUserId();
                var author = this.users.GetById(authorId);

                foreach (var dishId in model.SelectedDishes)
                {
                    var dish = this.dishes.GetById(dishId);
                    dishesToAddInTraining.Add(dish);
                }

                this.trainings.Add(
                    new TrainingSession()
                    {
                        Name = model.Name,
                        Dishes = dishesToAddInTraining,
                        Score = model.Score,
                        Author = author,
                        AuthorId = authorId
                    });

                return this.RedirectToAction("Index");
            }

            return this.PartialView("_CreateTraining");
        }
Пример #2
0
        public async Task <IActionResult> CreateTraining(CreateTrainingViewModel inputModel)
        {
            if (this.ModelState.IsValid)
            {
                await this.trainingsService.CreateTraining(inputModel);

                return(this.Redirect("/Trainings/AllTrainings"));
            }

            return(this.View(inputModel));
        }
Пример #3
0
        public async Task <IActionResult> AddTraining(CreateTrainingViewModel createTrainingViewModel)
        {
            if (ModelState.IsValid)
            {
                var userId         = User.FindFirstValue(ClaimTypes.NameIdentifier);
                var TrainingNumber = await _trainingService.AddTraining(createTrainingViewModel, userId);

                return(RedirectToAction("CreateTraining", new { TrainingNumber }));
            }

            return(View(createTrainingViewModel));
        }
Пример #4
0
        public async Task CreateTraining(CreateTrainingViewModel inputModel)
        {
            var training = new Training
            {
                Name         = inputModel.Name,
                Description  = inputModel.Description,
                TrainingTime = inputModel.TrainingTime,
            };

            await this.db.Trainings.AddAsync(training);

            await this.db.SaveChangesAsync();
        }
Пример #5
0
        public async Task <IActionResult> Create(CreateTrainingViewModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(model));
            }

            var user = await this.userManager.GetUserAsync(this.User);

            model.CompanyId = this.departmentService.GetCompanyIdByDepartmentId(user.DepartmentId);

            await this.trainingService.CreateAsync(model);

            return(this.RedirectToAction("Index"));
        }
Пример #6
0
        public async Task <int> AddTraining(CreateTrainingViewModel createTrainingViewModel, string userId)
        {
            var trainingId = Guid.NewGuid();

            var training = new Training
            {
                UserId        = userId,
                Id            = trainingId,
                TrainingStart = createTrainingViewModel.TrainingStart,
                TrainingEnd   = createTrainingViewModel.TrainingEnd,
                TrainingTime  = await _timeCalculator.GetTrainingTime(createTrainingViewModel)
            };

            var trainingFromDb = _applicationDbContext.Trainings.Add(training);
            await _applicationDbContext.SaveChangesAsync();

            return(trainingFromDb.Entity.TrainingNumber);
        }
        public ActionResult AddTraining([DataSourceRequest]DataSourceRequest request)
        {
            var dishesFromDatabase = this.dishes
                .All()
                .To<DishViewModel>()
                .ToList();

            var selectedDishes = dishesFromDatabase
                .Select(d => d.Id)
                .ToList();

            var model = new CreateTrainingViewModel()
            {
                Dishes = dishesFromDatabase,
                SelectedDishes = selectedDishes
            };
            return this.PartialView("_CreateTraining", model);
        }
Пример #8
0
        public async Task CreateAsync(CreateTrainingViewModel model)
        {
            var training = new Trainings
            {
                Tittle        = model.TrainingInfo.Tittle,
                Description   = model.TrainingInfo.Description,
                CreatedOn     = DateTime.UtcNow,
                IsDeleted     = false,
                Start         = model.TrainingInfo.Start,
                End           = model.TrainingInfo.End,
                TrainingHours = model.TrainingInfo.TrainingHours,
                CompanyId     = model.CompanyId
            };

            await this.trainingsRepository.AddAsync(training);

            await this.trainingsRepository.SaveChangesAsync();
        }
Пример #9
0
 public async Task <TimeSpan> GetTrainingTime(CreateTrainingViewModel createTrainingViewModel)
 {
     return(createTrainingViewModel.TrainingEnd - createTrainingViewModel.TrainingStart);
 }