public async Task AddNewTraining(NewTrainingDTO newTrainingDto)
        {
            var training = new DAL.App.DTO.Training()
            {
                Description     = newTrainingDto.Description,
                Duration        = newTrainingDto.Duration,
                TrainingPlaceId = newTrainingDto.TrainingPlaceId,
                Start           = DateTime.Parse(newTrainingDto.Start),
                StartTime       = TimeSpan.Parse(newTrainingDto.StartTime),
                TrainingStatus  = CreatedTrainingStatus,
                CreatorId       = newTrainingDto.CreatedBy.Id
            };

            var trainingwithId = ServiceRepository.AddNew(training);
            await ServiceUnitOfWork.SaveChangesAsync();

            var users = newTrainingDto.PeopleInvited;

            foreach (var user in users)
            {
                var usrInTraining = new DAL.App.DTO.UserInTraining()
                {
                    AppUserId         = user.Id,
                    TrainingId        = trainingwithId.Id,
                    AttendingTraining = false
                };
                ServiceUnitOfWork.UsersInTrainingRepository.AddNewUserInTraining(usrInTraining);
            }
            await ServiceUnitOfWork.SaveChangesAsync();

            await NotificationService.SendOutNewTrainingNotifications(users, newTrainingDto.NotificationContent,
                                                                      trainingwithId);
        }
Ejemplo n.º 2
0
 public async Task <IActionResult> PostTraining([FromBody] NewTrainingDTO newTrainingDTO)
 {
     return(Ok());
 }
        public async Task <OkObjectResult> CreateTraining([FromBody] NewTrainingDTO dto)
        {
            await _bll.TrainingService.AddNewTraining(dto);

            return(Ok("Training Created"));
        }