Parcourir la source

Merge branch 'feature-V2.0' of ssh://git.mooctest.com:1022/crowd-2019/crowd-test-service-backend into feature-V2.0

guo00guo il y a 5 ans
Parent
commit
6df120aac8

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

+ 2 - 1
site/src/main/java/com/mooctest/crowd/site/SiteApplication.java

@@ -5,9 +5,10 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cache.annotation.EnableCaching;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
+import org.springframework.scheduling.annotation.EnableScheduling;
 
+@EnableScheduling
 @SpringBootApplication(scanBasePackages = "com.mooctest.crowd")
-@EnableCaching
 public class SiteApplication {
 
 	public static void main(String[] args) {

+ 2 - 2
site/src/main/java/com/mooctest/crowd/site/controller/CrowTestSquareController.java

@@ -45,9 +45,9 @@ public class CrowTestSquareController extends BaseSearchController {
      * @return
      */
     @GetMapping("/list")
-    public ResponseVO getAll() {
+    public ResponseVO getAll(){
         CrowdTestSquareIndexDTO crowdTestSquareIndexDTO = new CrowdTestSquareIndexDTO();
-        List<CrowdTestProjectVO> list = crowdProjectService.findAll();
+        List<CrowdTestProjectVO> list = crowdProjectService.findIndexProject();
         List<CrowdTaskVO> crowdTestTasks = crowdTaskService.findAll();
         crowdTestSquareIndexDTO.setCrowdTestProjectVOs(list);//众测项目
         crowdTestSquareIndexDTO.setCrowdTestTaskVOS(crowdTestTasks);//众测任务

+ 3 - 1
site/src/main/java/com/mooctest/crowd/site/mediator/ViewMediator.java

@@ -21,6 +21,7 @@ import java.util.List;
  * @Date: 2019.7.16 20:25
  */
 public interface ViewMediator {
+     List<CrowdTestProjectVO>   crowdTestProjects();
 
     List<CrowdTaskVO> findIndexTask();
 
@@ -80,12 +81,13 @@ public interface ViewMediator {
     List<CrowdTaskVO> findTaskByNameLike(String name);
 
 
+List<CrowdTestProjectVO>   AllByPage();
 
     //热门项目
     List<CrowdTestProjectVO>  hotCrowdTestProjects();
 
 
-    List<CrowdTestProjectVO> crowdTestProjects();
+    List<CrowdTestProjectVO> indexCrowdTestProjects();
 
     List<CrowdTaskVO> crowdTaskVos();
 

+ 30 - 2
site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java

@@ -22,6 +22,7 @@ import com.mooctest.crowd.site.data.dto.*;
 import com.mooctest.crowd.site.data.enums.RoleType;
 import com.mooctest.crowd.site.data.vo.*;
 import com.mooctest.crowd.site.mediator.ViewMediator;
+import com.mooctest.crowd.site.service.ThemeStatusService;
 import lombok.extern.slf4j.Slf4j;
 import org.codehaus.jettison.json.JSONException;
 import org.jetbrains.annotations.NotNull;
@@ -120,6 +121,20 @@ public class WebMediatorImpl implements ViewMediator {
     @Autowired
     private UserToRoleDao userToRoleDao;
 
+    @Autowired
+    private ThemeStatusService themeStatusService;
+
+
+    @Override
+    public List<CrowdTestProjectVO> crowdTestProjects() {
+        List<CrowdTestProjectVO> authingList = new ArrayList<>();
+        authingList.addAll(projectDao.findAll().stream().map(crowdTestProjectPO -> {
+            CrowdTestProject crowdTestProject = new CrowdTestProject();
+            BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
+            return new CrowdTestProjectVO(crowdTestProject);
+        }).collect(Collectors.toList()));
+        return authingList;
+    }
 
     @Override
     public List<CrowdTaskVO> findIndexTask() {
@@ -535,6 +550,7 @@ public class WebMediatorImpl implements ViewMediator {
                     CrowdTestProject project = new CrowdTestProject();
                     BeanUtils.copyProperties(crowdTestProjectPO, project);
                     CrowdProjectVO projectVO = new CrowdProjectVO(project);
+                    themeStatusService.updateStatus(project);
                     if (project.getStatus() == CrowdTestProjectStatus.HAS_COMMITED)
                         projectVO.setNeedHandle(true);
                     // 应用类型值的转换
@@ -1056,6 +1072,17 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
+    public List<CrowdTestProjectVO> AllByPage() {
+        List<CrowdTestProjectVO> authingList = new ArrayList<>();
+        authingList.addAll(projectDao.findAll().stream().map(crowdTestProjectPO -> {
+            CrowdTestProject crowdTestProject = new CrowdTestProject();
+            BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
+            return new CrowdTestProjectVO(crowdTestProject);
+        }).collect(Collectors.toList()));
+        return authingList;
+    }
+
+    @Override
     public List<CrowdTestProjectVO> hotCrowdTestProjects() {
         List<CrowdTestProjectVO> authingList = new ArrayList<>();
         authingList.addAll(projectDao.findall().stream().map(crowdTestProjectPO -> {
@@ -1075,9 +1102,10 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
-    public List<CrowdTestProjectVO> crowdTestProjects() {
+    //众测广场首页6条项目
+    public List<CrowdTestProjectVO>  indexCrowdTestProjects() {
         List<CrowdTestProjectVO> authingList = new ArrayList<>();
-        authingList.addAll(projectDao.findall().stream().map(crowdTestProjectPO -> {
+        authingList.addAll(projectDao.findindexProject().stream().map(crowdTestProjectPO -> {
             CrowdTestProject crowdTestProject = new CrowdTestProject();
             BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
             // 应用类型值的转换

+ 1 - 1
site/src/main/java/com/mooctest/crowd/site/service/CrowdProjectService.java

@@ -18,7 +18,7 @@ import java.util.List;
  */
 public interface CrowdProjectService {
 
-
+    List<CrowdTestProjectVO>    findIndexProject();
     List<CrowdTestProjectVO>  findAllMoreHotProjects();
 
     List<CrowdTestProjectVO> findByNameLike(String name);

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

@@ -21,6 +21,8 @@ List<CrowdTaskVO> findIndexCrwodTasks();
 
     List<CrowdTaskVO> findMoreHotTasks();
 
+    List<CrowdTaskVO> findIndexTask();
+
      List<CrowdTaskVO> findAll();
 
      List<CrowdTaskVO> findByNameLike(String name);

+ 15 - 1
site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdProjectServiceImpl.java

@@ -29,6 +29,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
@@ -54,6 +55,8 @@ import java.util.stream.Collectors;
 @Service
 public class CrowdProjectServiceImpl implements CrowdProjectService {
     @Autowired
+    private  CrowdTestProjectDao projectDao;
+    @Autowired
     private RoleDao roleDao;
     @Autowired
 
@@ -87,6 +90,17 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
     private ThemeSchedulerService themeSchedulerService;
 
     @Override
+    public List<CrowdTestProjectVO> findIndexProject() {
+        List<CrowdTestProjectVO> authingList = new ArrayList<>();
+        authingList.addAll(projectDao.findindexProject().stream().map(crowdTestProjectPO -> {
+            CrowdTestProject crowdTestProject = new CrowdTestProject();
+            BeanUtils.copyProperties(crowdTestProjectPO, crowdTestProject);
+            return new CrowdTestProjectVO(crowdTestProject);
+        }).collect(Collectors.toList()));
+        return authingList;
+    }
+
+    @Override
     public List<CrowdTestProjectVO> findAllMoreHotProjects() {
         return viewMediator.hotCrowdTestProjects();
     }
@@ -94,7 +108,7 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
     @Override
     public List<CrowdTestProjectVO> findByNameLike(String name) {
         if (name == null || name.trim().equals("")){
-            return viewMediator.crowdTestProjects();
+            return viewMediator.AllByPage();
         }
         return viewMediator.findByNameLike(name);
 

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

@@ -15,14 +15,17 @@ import com.mooctest.crowd.site.data.dto.TaskSquareDTO;
 import com.mooctest.crowd.site.data.enums.ProjectType;
 import com.mooctest.crowd.site.data.enums.RoleType;
 import com.mooctest.crowd.site.data.vo.CrowdTaskVO;
+import com.mooctest.crowd.site.data.vo.CrowdTestProjectVO;
 import com.mooctest.crowd.site.mediator.ViewMediator;
 import com.mooctest.crowd.site.service.CrowdTaskService;
 import com.mooctest.crowd.site.util.GenerateFlowCodeUtil;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 
+import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
 import java.util.Optional;
@@ -70,6 +73,17 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
     }
 
     @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
     public List<CrowdTaskVO> findAll() {
         return   viewMediator.crowdTaskVos();
     }

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

@@ -96,7 +96,7 @@ public class ThemeSchedulerServiceImpl implements ThemeSchedulerService {
 
             private CrowdTestProject crowdTestProject;
 
-            //public MyRunnable() {}
+            public MyRunnable() {}
 
             public MyRunnable (CrowdTestProject crowdTestProject) {
                 this.crowdTestProject = crowdTestProject;