public async Task <WorkoutPlanIdentityDTO> Handle(CreateWorkoutPlanCommand command, CancellationToken cancellationToken)
        {
            var identity = new WorkoutPlanIdentityDTO {
                ExternalId = _guidProvider.GetGuid()
            };
            await _workoutPlanRepository.AddWorkoutPlanAsync(command.Username, new WorkoutPlanPersistanceDTO
            {
                ExternalId  = identity.ExternalId,
                Name        = command.Name,
                Created     = _dateTimeHelper.GetCurrentDateTime(),
                Description = command.Description,
                IsPublic    = command.IsPublic,
                Exercises   = command.Exercises.Select(x => new ExerciseExecutionPersistanceDTO
                {
                    ExerciseId       = x.ExerciseId,
                    ExerciseName     = x.ExerciseName,
                    Break            = x.Break,
                    Description      = x.Description,
                    MaxAdditionalKgs = x.MaxAdditionalKgs,
                    MinAdditionalKgs = x.MinAdditionalKgs,
                    MinReps          = x.MinReps,
                    MaxReps          = x.MaxReps,
                    Order            = x.Order,
                    Series           = x.Series
                })
            });

            return(identity);
        }