コード例 #1
0
        public async Task <IActionResult> Get(string id)
        {
            EnglishTaskModel englishTask = await _englishTaskService.GetByIdEnglishTaskAsync(id);

            if (englishTask == null)
            {
                return(NotFound());
            }

            var englishTaskModel = _mapper.Map <EnglishTaskModel, EnglishTaskViewModel>(englishTask);

            return(Ok(englishTaskModel));
        }
コード例 #2
0
        public async Task GetByIdEnglishTaskAsync_IncorrectId_ReturnsNull()
        {
            // Arrange
            _dbRepository
            .FindAsync(Arg.Any <Expression <Func <EnglishTask, bool> > >())
            .Returns(Task.FromResult(default(EnglishTask)));
            var englishTaskService = new EnglishTaskService(_dbRepository, _mapper, _userFilterService);

            // Act
            EnglishTaskModel englishTaskModel = await englishTaskService.GetByIdEnglishTaskAsync("Id");

            // Arrange
            englishTaskModel.Should().BeNull();
        }
コード例 #3
0
        public async Task <ActionResult> FindRandomTaskByFilter([FromQuery] BaseFilterParameters parameters)
        {
            var filterModel = _mapper.Map <BaseFilterModel>(parameters);
            EnglishTaskModel englishTakModel = await _randomEnglishTaskService.FindRandomEnglishTaskAsync(filterModel);

            if (englishTakModel == null)
            {
                return(NotFound());
            }

            var englishTaskModel = _mapper.Map <EnglishTaskViewModel>(englishTakModel);

            return(Ok(englishTaskModel));
        }
        public async Task <EnglishTaskModel> CreateRandomTaskAsync(CreateRandomTaskModel createModel)
        {
            var randomItems = await GetRandomTaskItemsAsync(
                createModel.EnglishLevel,
                createModel.GrammarPart,
                createModel.TaskType,
                createModel.Count);

            var taskContent = randomItems
                              .Select(x => x.Content)
                              .ToBsonArray();

            var englishTask = new EnglishTaskModel()
            {
                GrammarPart  = createModel.GrammarPart,
                TaskType     = createModel.TaskType,
                EnglishLevel = createModel.EnglishLevel,
                Count        = randomItems.Count,
                Content      = taskContent.ToJson(),
            };

            return(englishTask);
        }