|
@@ -3,6 +3,8 @@ package com.ynfy.buss.exam.repository.controller;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.ynfy.buss.exam.question.dto.QuestionDTO;
|
|
|
+import com.ynfy.buss.exam.question.service.IQuestionService;
|
|
|
import com.ynfy.buss.exam.repository.entity.Repository;
|
|
|
import com.ynfy.buss.exam.repository.service.IRepositoryService;
|
|
|
import io.swagger.annotations.Api;
|
|
@@ -14,11 +16,14 @@ import org.jeecg.common.aspect.annotation.AutoLog;
|
|
|
import org.jeecg.common.system.base.controller.JeecgController;
|
|
|
import org.jeecg.common.system.query.QueryGenerator;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @Description: repository
|
|
@@ -34,6 +39,9 @@ public class RepositoryController extends JeecgController<Repository, IRepositor
|
|
|
@Autowired
|
|
|
private IRepositoryService repositoryService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IQuestionService questionService;
|
|
|
+
|
|
|
/**
|
|
|
* 列表查询
|
|
|
*
|
|
@@ -57,7 +65,7 @@ public class RepositoryController extends JeecgController<Repository, IRepositor
|
|
|
*/
|
|
|
@ApiOperation(value = "题库-分页列表查询", notes = "题库-分页列表查询")
|
|
|
@GetMapping(value = "/list")
|
|
|
- @RequiresPermissions("repository:list")
|
|
|
+ //@RequiresPermissions("repository:list")
|
|
|
public Result<IPage<Repository>> queryPageList(Repository repository,
|
|
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
|
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
|
@@ -65,6 +73,16 @@ public class RepositoryController extends JeecgController<Repository, IRepositor
|
|
|
QueryWrapper<Repository> queryWrapper = QueryGenerator.initQueryWrapper(repository, req.getParameterMap());
|
|
|
Page<Repository> page = new Page<Repository>(pageNo, pageSize);
|
|
|
IPage<Repository> pageList = repositoryService.page(page, queryWrapper);
|
|
|
+ if (!CollectionUtils.isEmpty(pageList.getRecords())) {
|
|
|
+ List<String> idList = pageList.getRecords().stream().map(Repository::getId).collect(Collectors.toList());
|
|
|
+ List<QuestionDTO> questionDTOList = questionService.countQuestionByRepository(idList);
|
|
|
+ pageList.getRecords().forEach(repo -> {
|
|
|
+ QuestionDTO questionDTO = questionDTOList.stream().filter(q -> q.getRepositoryId().equals(repo.getId())).findFirst().orElse(null);
|
|
|
+ if (!Objects.isNull(questionDTO)) {
|
|
|
+ repo.setNum(questionDTO.getNum());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
return Result.OK(pageList);
|
|
|
}
|
|
|
|