| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- package com.es.demo.recommend;
- import com.es.demo.back.ChoiceQuestion;
- import com.es.demo.back.TQRepository;
- import com.es.demo.recommend.dto.GetRecommend;
- import com.es.demo.recommend.dto.GetRecommendAnswer;
- import com.es.demo.recommend.vo.AnswerTQ;
- import com.es.demo.recommend.vo.NoAnswerTQ;
- import com.es.demo.recommend.vo.Res;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.data.domain.Page;
- import org.springframework.data.domain.PageRequest;
- import org.springframework.data.domain.Sort;
- import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
- import org.springframework.web.bind.annotation.*;
- import java.util.Collections;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- * @ClassName recomRestfulController
- * @PackageName com.es.demo
- * @Author sheen
- * @Date 2020/1/2
- * @Version 1.0
- * @Description //TODO
- **/
- @RestController
- @RequestMapping("/api/question")
- public class RecomRestfulController {
- private final TQRepository tqRepository;
- @Autowired
- public RecomRestfulController(@Qualifier("TQRepositoryImp") TQRepository tqRepository) {
- this.tqRepository = tqRepository;
- }
- @PostMapping("/recommend")
- public Res<List<NoAnswerTQ>> getRecommend(
- @RequestBody GetRecommend body) {
- final Page<ChoiceQuestion> all = tqRepository.findAll(PageRequest.of(0, body.questionNum.intValue()));
- return new Res<List<NoAnswerTQ>>(
- all.getContent().stream()
- .map(NoAnswerTQ::new)
- .collect(Collectors.toList()));
- }
- @PostMapping("/answer")
- public Res<List<AnswerTQ>> getRecommendWithAnswer(
- @RequestBody GetRecommendAnswer body) {
- final Page<ChoiceQuestion> all = tqRepository.findByIdIn(body.getQuestionId(),PageRequest.of(0, body.questionId.size()));
- return new Res<List<AnswerTQ>>(
- all.getContent().stream()
- .map(AnswerTQ::new)
- .collect(Collectors.toList()));
- }
- }
|