浏览代码

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

 Conflicts:
	site/src/main/java/com/mooctest/crowd/site/controller/CommonController.java
xuxuan 5 年之前
父节点
当前提交
787ffae43e

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

@@ -3,6 +3,7 @@ package com.mooctest.crowd.domain.dao;
 import com.mooctest.crowd.domain.model.CrowdTestProjectPO;
 import com.mooctest.crowd.domain.model.RankInfos;
 import com.mooctest.crowd.domain.model.RankInfo;
+import com.mooctest.crowd.domain.model.TechnicalArticlesPO;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.domain.Specification;
@@ -75,4 +76,5 @@ public interface CrowdTestProjectDao extends CrudRepository<CrowdTestProjectPO,
 
     @Override
     <S extends CrowdTestProjectPO> S save(S s);
+
 }

+ 22 - 0
core/src/main/java/com/mooctest/crowd/domain/repository/CommonRepo.java

@@ -62,6 +62,9 @@ public class CommonRepo {
     @Autowired
     private  ResourceTypeDao resourceTypeDao;
 
+    @Autowired
+    private CrowdTestProjectDao crowdTestProjectDao;
+
     public List<TestType> getAllTestType(){
         return testTypeDao.findAll().stream().map(testTypePO -> Converter.convert(TestType.class, testTypePO)).collect(Collectors.toList());
     }
@@ -195,4 +198,23 @@ public class CommonRepo {
             }
         };
     }
+
+    public Page<CrowdTestProject> getProjectList(Pageable pageable, String code){
+        Specifications<CrowdTestProjectPO> where =  Specifications.where(getCode(code));
+        return crowdTestProjectDao.findAll(where, pageable).map(crowdTestProjectPO -> Converter.convert(CrowdTestProject.class, crowdTestProjectPO));
+    }
+    private Specification<CrowdTestProjectPO> getCode(String code) {
+        return new Specification<CrowdTestProjectPO>() {
+            @Override
+            public Predicate toPredicate(Root<CrowdTestProjectPO> a, CriteriaQuery<?> q, CriteriaBuilder cb) {
+                Predicate predicate = cb.conjunction();
+                if(code != null) {
+                    predicate.getExpressions().add(
+                            cb.equal(a.get("platform"), code)
+                    );
+                }
+                return predicate;
+            }
+        };
+    }
 }

文件差异内容过多而无法显示
+ 0 - 0
site/src/main/java/com/mooctest/crowd/site/controller/CommonController.java


+ 2 - 0
site/src/main/java/com/mooctest/crowd/site/data/vo/CrowdProjectVO.java

@@ -45,6 +45,7 @@ public class CrowdProjectVO implements Serializable {
     private Long regionManagerId;
     private StatusVO statusVO;
     private Boolean needHandle = false; //该项目需要处理
+    private Timestamp createTime;
 
     public CrowdProjectVO(CrowdTestProject project){
         this.id = project.getCode();
@@ -71,6 +72,7 @@ public class CrowdProjectVO implements Serializable {
         this.joinCount = project.getJoinCount();
         this.regionManagerId = project.getRegionalManagerId();
         this.renderStatus();
+        this.createTime=project.getCreateTime();
     }
 
     private void renderStatus(){

+ 0 - 2
site/src/main/java/com/mooctest/crowd/site/mediator/ViewMediator.java

@@ -99,6 +99,4 @@ public interface ViewMediator {
     BankCardDTO deleteBankCard(long id,long userId);
 
     TechnicalArticlesDTO  updateRanking(long id);
-
-    IndexInfoDTO getHotTesting();
 }

+ 0 - 14
site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java

@@ -965,20 +965,6 @@ public class WebMediatorImpl implements ViewMediator {
         return technicalArticlesDTO;
     }
 
-    @Override
-    public IndexInfoDTO getHotTesting() {
-        IndexInfoDTO indexInfoDTO = new IndexInfoDTO();
-        Pageable pageable = PageRequest.of(0, 10);
-        List<ApplicationTypeVO> applicationTypeRank = projectDao.findTotalCountOfApplicationType(pageable).stream().map(rankInfos -> {
-            ApplicationType applicationType = commonRepo.getApplicationTypeByAppCode(rankInfos.getCode());
-            ApplicationTypeVO applicationTypeVO = new ApplicationTypeVO(applicationType);
-            applicationTypeVO.setCount(rankInfos.getCount());
-            return applicationTypeVO;
-        }).filter(Objects::nonNull).collect(Collectors.toList());
-        indexInfoDTO.setApplicationTypeRank(applicationTypeRank);
-        return  indexInfoDTO;
-    }
-
     private ProjectOperationControl initProjectPermission(CrowdTestProject project, User user) {
         ProjectOperationControl operationControl = new ProjectOperationControl();
         if (user == null)

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

@@ -35,4 +35,6 @@ public interface CommonService {
     Page<CompetitionVO> getCompetition(Pageable pageable,String keyword);
 
     Page<ResourceVO> getResource(Pageable pageable,String keyword);
+
+    Page<CrowdProjectVO> getProjectList(Pageable pageable,String code);
 }

+ 5 - 0
site/src/main/java/com/mooctest/crowd/site/service/impl/CommonServiceImpl.java

@@ -106,4 +106,9 @@ public class CommonServiceImpl implements CommonService {
     public Page<ResourceVO> getResource(Pageable pageable, String keyword) {
         return commonRepo.findAllResourceByPage(pageable, keyword).map(resource -> new ResourceVO(resource));
     }
+
+    @Override
+    public Page<CrowdProjectVO> getProjectList(Pageable pageable, String code) {
+        return commonRepo.getProjectList(pageable,code).map(project->new CrowdProjectVO(project));
+    }
 }

部分文件因为文件数量过多而无法显示