|
|
@@ -13,9 +13,7 @@ import org.springframework.data.domain.PageRequest;
|
|
|
import org.springframework.data.domain.Pageable;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Optional;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
@@ -76,4 +74,19 @@ public class InteractiveService {
|
|
|
interactiveVO.setCollection(interactiveCollect.getCollection());
|
|
|
return interactiveVO;
|
|
|
}
|
|
|
+
|
|
|
+ public List<InteractiveVO> findInteractiveQuestionIn(String userId, List<String> questionIdList) {
|
|
|
+ final List<InteractiveCollect> interactiveCollectList = collectRepository.findAllByUserIdAndQuestionIdIn(userId, questionIdList);
|
|
|
+ final List<InteractiveRate> interactiveRateList = rateRepository.findAllByUserIdAndQuestionIdIn(userId, questionIdList);
|
|
|
+ Map<String,InteractiveVO> qid2InteractiveVOS =new HashMap<>();
|
|
|
+ for(String qid:questionIdList){
|
|
|
+ InteractiveVO interactiveVO=new InteractiveVO();
|
|
|
+ interactiveVO.setUserId(userId);
|
|
|
+ interactiveVO.setQuestionId(qid);
|
|
|
+ qid2InteractiveVOS.put(qid,interactiveVO );
|
|
|
+ }
|
|
|
+ interactiveCollectList.forEach(i->{qid2InteractiveVOS.get(i.getQuestionId()).setCollection(i.getCollection());});
|
|
|
+ interactiveRateList.forEach(i->{qid2InteractiveVOS.get(i.getQuestionId()).setRate(i.getRate());});
|
|
|
+ return new ArrayList<>(qid2InteractiveVOS.values());
|
|
|
+ }
|
|
|
}
|