Browse Source

优化众测广场相关接口。

xuxuan 5 years ago
parent
commit
d7d598ed37

+ 1 - 1
core/src/main/java/com/mooctest/crowd/domain/dao/CrowdTestProjectDao.java

@@ -33,7 +33,7 @@ public interface CrowdTestProjectDao extends CrudRepository<CrowdTestProjectPO,
     List<CrowdTestProjectPO> findMoreHotProjects();
     List<CrowdTestProjectPO> findMoreHotProjects();
 
 
 
 
-    @Query(value = "SELECT * FROM crowd_test_project p WHERE CTP_STATUS !=4 ORDER BY CTP_CREATE_TIME DESC ", nativeQuery = true)
+    @Query(value = "SELECT * FROM crowd_test_project p WHERE CTP_STATUS !=4 ORDER BY CTP_CREATE_TIME DESC L", nativeQuery = true)
     List<CrowdTestProjectPO> findAll();
     List<CrowdTestProjectPO> findAll();
 
 
     //这个指定了查询条数 适用于众测广场首页 这样性能会高一点。
     //这个指定了查询条数 适用于众测广场首页 这样性能会高一点。

+ 34 - 4
site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java

@@ -120,6 +120,18 @@ public class WebMediatorImpl implements ViewMediator {
     @Autowired
     @Autowired
     private UserToRoleDao userToRoleDao;
     private UserToRoleDao userToRoleDao;
 
 
+
+    @Override
+    public List<CrowdTaskVO> findIndexTask() {
+        List<CrowdTaskVO> authingList = new ArrayList<>();
+        authingList.addAll(taskDao.findindexTask().stream().map(crowdTestProjectPO -> {
+            CrowdTestTask crowdTestTask = new CrowdTestTask();
+            BeanUtils.copyProperties(crowdTestProjectPO, crowdTestTask);
+            return new CrowdTaskVO(crowdTestTask);
+        }).collect(Collectors.toList()));
+        return authingList;
+    }
+
     @Override
     @Override
     public void saveEnterpriseRole(User user, ApplyEnterpriseAuthCommand applyEnterpriseAuthCommand) {
     public void saveEnterpriseRole(User user, ApplyEnterpriseAuthCommand applyEnterpriseAuthCommand) {
         //如果是研发机构那么能发包
         //如果是研发机构那么能发包
@@ -211,7 +223,6 @@ public class WebMediatorImpl implements ViewMediator {
 
 
     @Override
     @Override
     public List<CrowdTaskVO> findMoreHotTasks() {
     public List<CrowdTaskVO> findMoreHotTasks() {
-        List<CrowdTestTaskPO> list = taskDao.findMoreHotTasks();//已经根据创建时间排序好了。
         List<CrowdTaskVO> hotMoreTestprojects = taskDao.findMoreHotTasks().stream().map(crowdTestTaskPO -> {
         List<CrowdTaskVO> hotMoreTestprojects = taskDao.findMoreHotTasks().stream().map(crowdTestTaskPO -> {
             CrowdTestTask task = new CrowdTestTask();
             CrowdTestTask task = new CrowdTestTask();
             BeanUtils.copyProperties(crowdTestTaskPO, task);
             BeanUtils.copyProperties(crowdTestTaskPO, task);
@@ -1045,9 +1056,28 @@ public class WebMediatorImpl implements ViewMediator {
     }
     }
 
 
     @Override
     @Override
+    public List<CrowdTestProjectVO> hotCrowdTestProjects() {
+        List<CrowdTestProjectVO> authingList = new ArrayList<>();
+        authingList.addAll(projectDao.findall().stream().map(crowdTestProjectPO -> {
+            CrowdTestProject crowdTestProject = new CrowdTestProject();
+            BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
+            // 应用类型值的转换
+            Optional<ApplicationTypePO> applicationTypePO = applicationTypeDao.findByCode(crowdTestProject.getApplicationType());
+            if (applicationTypePO.isPresent()) {
+                crowdTestProject.setApplicationType(applicationTypePO.get().getName());
+            } else {
+                throw new HttpBadRequestException("请选择应用类型");
+            }
+            return new CrowdTestProjectVO(crowdTestProject);
+
+        }).collect(Collectors.toList()));
+        return authingList;
+    }
+
+    @Override
     public List<CrowdTestProjectVO> crowdTestProjects() {
     public List<CrowdTestProjectVO> crowdTestProjects() {
         List<CrowdTestProjectVO> authingList = new ArrayList<>();
         List<CrowdTestProjectVO> authingList = new ArrayList<>();
-        authingList.addAll(projectDao.findAll().stream().map(crowdTestProjectPO -> {
+        authingList.addAll(projectDao.findall().stream().map(crowdTestProjectPO -> {
             CrowdTestProject crowdTestProject = new CrowdTestProject();
             CrowdTestProject crowdTestProject = new CrowdTestProject();
             BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
             BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
             // 应用类型值的转换
             // 应用类型值的转换
@@ -1083,9 +1113,9 @@ public class WebMediatorImpl implements ViewMediator {
     }
     }
 
 
     @Override
     @Override
-    public List<CrowdTaskVO> crowdTaskVos() {
+    public List<CrowdTaskVO> crowdTaskVos(){
         List<CrowdTaskVO> authingList = new ArrayList<>();
         List<CrowdTaskVO> authingList = new ArrayList<>();
-        authingList.addAll(taskDao.findAll().stream().map(crowdTestTaskPO -> {
+        authingList.addAll(taskDao.findindexTask().stream().map(crowdTestTaskPO -> {
             //根据code值查询出来该任务的type
             //根据code值查询出来该任务的type
             Optional<TestTypePO> serviceType = testTypeDao.findByCode(crowdTestTaskPO.getType());
             Optional<TestTypePO> serviceType = testTypeDao.findByCode(crowdTestTaskPO.getType());
             CrowdTestTask crowdTestTask = new CrowdTestTask();
             CrowdTestTask crowdTestTask = new CrowdTestTask();

+ 3 - 4
site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdProjectServiceImpl.java

@@ -93,11 +93,10 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
 
 
     @Override
     @Override
     public List<CrowdTestProjectVO> findByNameLike(String name) {
     public List<CrowdTestProjectVO> findByNameLike(String name) {
-        if (name == null || name.trim().equals("")) {
-            return viewMediator.crowdTestProjects().stream().sorted(Comparator.comparing(CrowdTestProjectVO::getCreateTime).reversed()).collect(Collectors.toList());
+        if (name == null || name.trim().equals("")){
+            return viewMediator.crowdTestProjects();
         }
         }
-        return viewMediator.findByNameLike(name).stream().sorted(Comparator.comparing(CrowdTestProjectVO::getCreateTime).reversed()).collect(Collectors.toList());
-
+        return viewMediator.findByNameLike(name);
 
 
     }
     }
 
 

+ 1 - 2
site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdTaskServiceImpl.java

@@ -56,8 +56,7 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
     @Autowired
     @Autowired
     private EvaluationAgencyDao agencyDao;
     private EvaluationAgencyDao agencyDao;
 
 
-    @Autowired
-    private ThemeSchedulerTaskService themeSchedulerTaskService;
+
 
 
 
 
     @Override
     @Override