Forráskód Böngészése

使用统一接口获取众测案例

guo00guo 4 éve
szülő
commit
18d50f5e45

+ 0 - 8
site/src/main/java/com/mooctest/crowd/site/controller/CrowdTaskController.java

@@ -6,7 +6,6 @@ import com.mooctest.crowd.site.annotation.LoginRequired;
 import com.mooctest.crowd.site.command.CrowdTestTaskCommand;
 import com.mooctest.crowd.site.data.dto.TaskDetailsDTO;
 import com.mooctest.crowd.site.data.dto.TaskSquareDTO;
-import com.mooctest.crowd.site.data.vo.CrowdTaskVO;
 import com.mooctest.crowd.site.service.CrowdTaskService;
 import io.swagger.annotations.Api;
 import lombok.extern.slf4j.Slf4j;
@@ -16,7 +15,6 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpSession;
-import java.util.List;
 
 /**
  * @author: Diors.Po
@@ -61,12 +59,6 @@ public class CrowdTaskController{
         return taskService.getAllTasks();
     }
 
-
-    @RequestMapping(value = "/task/case", method = RequestMethod.GET)
-    public List<CrowdTaskVO> getTaskCase(){
-        return taskService.getAllTaskCases();
-    }
-
     @LoginRequired
     @RequestMapping(value = "/project/{projectCode}/task/{taskCode}", method = RequestMethod.PUT)
     public TaskDetailsDTO updateTask(@PathVariable("projectCode") String projectCode,

+ 2 - 0
site/src/main/java/com/mooctest/crowd/site/data/dto/TechnicalArticlesDTO.java

@@ -1,5 +1,6 @@
 package com.mooctest.crowd.site.data.dto;
 
+import com.mooctest.crowd.site.data.vo.CrowdTaskVO;
 import com.mooctest.crowd.site.data.vo.PublicationsVO;
 import com.mooctest.crowd.site.data.vo.TechnicalArticlesVO;
 import com.mooctest.crowd.site.data.vo.ToolVO;
@@ -11,5 +12,6 @@ public class TechnicalArticlesDTO {
     Page<TechnicalArticlesVO>  technicalArticlesPage;
     Page<PublicationsVO>  publicationsPage;
     Page<ToolVO> toolVOPage;
+    Page<CrowdTaskVO> taskVOS;
     int count;
 }

+ 0 - 2
site/src/main/java/com/mooctest/crowd/site/service/CrowdTaskService.java

@@ -41,6 +41,4 @@ public interface CrowdTaskService {
     void  jumpPublicTesting(String projectCode, String taskCode, Long userId);
 
     TaskDetailsDTO addToken(String projectCode, String taskCode, Long userId, String token);
-
-    List<CrowdTaskVO> getAllTaskCases();
 }

+ 0 - 7
site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdTaskServiceImpl.java

@@ -150,13 +150,6 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
     }
 
     @Override
-    public List<CrowdTaskVO> getAllTaskCases() {
-        List<EndPoint> endPointShowList = crowdTestTaskRepo.getEndPointShowList();
-        List<CrowdTaskVO> crowdTaskVOS = endPointShowList.stream().map(endPoint -> viewMediator.renderTaskDetailsByTourist(endPoint.getProjectCode(), endPoint.getTaskCode())).collect(Collectors.toList());
-        return crowdTaskVOS;
-    }
-
-    @Override
     public TaskDetailsDTO acceptTask(String projectCode, String taskCode, Long userId) {
         CrowdTestProject project = projectRepo.getByProjectCode(projectCode);
         // 项目发起者

+ 23 - 4
site/src/main/java/com/mooctest/crowd/site/service/impl/TechnicalArticlesServiceImpl.java

@@ -1,27 +1,30 @@
 package com.mooctest.crowd.site.service.impl;
 
 
+import com.mooctest.crowd.domain.domainobject.EndPoint;
+import com.mooctest.crowd.domain.repository.CrowdTestTaskRepo;
 import com.mooctest.crowd.domain.repository.PublicationsRepo;
 import com.mooctest.crowd.domain.repository.TechnicalArticlesRepo;
 import com.mooctest.crowd.domain.repository.ToolRepo;
 import com.mooctest.crowd.site.data.dto.TechnicalArticlesDTO;
+import com.mooctest.crowd.site.data.vo.CrowdTaskVO;
 import com.mooctest.crowd.site.data.vo.PublicationsVO;
 import com.mooctest.crowd.site.data.vo.TechnicalArticlesVO;
 import com.mooctest.crowd.site.data.vo.ToolVO;
 import com.mooctest.crowd.site.mediator.ViewMediator;
 import com.mooctest.crowd.site.service.TechnicalArticlesService;
+import com.mooctest.crowd.site.util.DataUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 @Service
 public class TechnicalArticlesServiceImpl implements TechnicalArticlesService{
-
-
-
-
     @Autowired
     private ViewMediator viewMediator;
 
@@ -29,6 +32,9 @@ public class TechnicalArticlesServiceImpl implements TechnicalArticlesService{
     private TechnicalArticlesRepo technicalArticlesRepo;
 
     @Autowired
+    private CrowdTestTaskRepo crowdTestTaskRepo;
+
+    @Autowired
     private PublicationsRepo publicationsRepo;
 
     @Autowired
@@ -45,6 +51,19 @@ public class TechnicalArticlesServiceImpl implements TechnicalArticlesService{
                 technicalArticlesDTO.setPublicationsPage(publicationsRepo.getPublications(pageable, keyword).map(publications -> new PublicationsVO(publications)));
             }else if(value.equals("2")){
                 technicalArticlesDTO.setToolVOPage(toolRepo.getAllTool(pageable, keyword).map(tool -> new ToolVO(tool)));
+            }else if(value.equals("3")){
+                List<EndPoint> endPointShowList = crowdTestTaskRepo.getEndPointShowList();
+                List<CrowdTaskVO> crowdTaskVOS = new ArrayList<>();
+                if(keyword != null && keyword != ""){
+                    crowdTaskVOS = endPointShowList.stream()
+                            .map(endPoint -> viewMediator.renderTaskDetailsByTourist(endPoint.getProjectCode(), endPoint.getTaskCode()))
+                            .filter(crowdTaskVO -> crowdTaskVO.getTitle().contains(keyword)).collect(Collectors.toList());
+                }else{
+                    crowdTaskVOS = endPointShowList.stream()
+                            .map(endPoint -> viewMediator.renderTaskDetailsByTourist(endPoint.getProjectCode(), endPoint.getTaskCode()))
+                            .collect(Collectors.toList());
+                }
+                technicalArticlesDTO.setTaskVOS(DataUtils.listToPage(crowdTaskVOS, pageable));
             }
         }
         return technicalArticlesDTO;