Browse Source

update: 区域发布项目时对区域管理员管辖区域的判断

guochao 6 years ago
parent
commit
02f02a456e

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

@@ -1,6 +1,5 @@
 package com.mooctest.crowd.domain.dao;
 
-import com.mooctest.crowd.domain.domainobject.CrowdTestProject;
 import com.mooctest.crowd.domain.model.CrowdTestProjectPO;
 import com.mooctest.crowd.domain.model.RankInfo;
 import org.springframework.data.domain.Pageable;
@@ -33,7 +32,7 @@ public interface CrowdTestProjectDao extends CrudRepository<CrowdTestProjectPO,
 
     List<CrowdTestProjectPO> findAllByStatusLessThanAndProjectDistributionTypeId(Integer status, Long distribution);
 
-    List<CrowdTestProjectPO> findByStatusLessThanAndProjectDistributionTypeIdAndDistributionCity(Integer status, Long distributionType, String cityCode);
+    List<CrowdTestProjectPO> findByStatusLessThanAndProjectDistributionTypeIdAndDistributionCity(Integer status, Long distributionType, String cityName);
 
     @Query(value = "SELECT new com.mooctest.crowd.domain.model.RankInfo(SUM(p.quotedPrice), p.userId) FROM CrowdTestProjectPO p where p.status>1 GROUP BY p.userId ORDER BY SUM(p.quotedPrice) DESC")
     List<RankInfo> findTotalPriceOfUser(Pageable pageable);

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

@@ -142,8 +142,8 @@ public class WebMediatorImpl implements ViewMediator {
             //广场的
             acceptableProject.addAll(projectDao.findAllByStatusLessThanAndProjectDistributionTypeId(CrowdTestProjectStatus.HAS_RECEIVED, 2L));
             //区域的
-            for (Regional regional : user.getRegionalManager().getRegionalList()) {
-                acceptableProject.addAll(projectDao.findByStatusLessThanAndProjectDistributionTypeIdAndDistributionCity(CrowdTestProjectStatus.HAS_RECEIVED, 1L, regional.getName()));
+            for (RegionalManagerToRegional regional : user.getRegionalManager().getRegionalList()) {
+                acceptableProject.addAll(projectDao.findByStatusLessThanAndProjectDistributionTypeIdAndDistributionCity(CrowdTestProjectStatus.HAS_RECEIVED, 1L, regional.getCity()));
             }
             myCrowdDTO.setAcceptableProjects(acceptableProject.stream().map(crowdTestProjectPO -> {
                 CrowdTestProject project = new CrowdTestProject();
@@ -347,7 +347,7 @@ public class WebMediatorImpl implements ViewMediator {
             } //下面两种情况为非定向未被接收
             else if (project.getProjectDistributionTypeId()==1){
                 if (project.getStatus()==CrowdTestProjectStatus.HAS_RELEASED
-                        && user.getRegionalManager().getRegionalList().stream().anyMatch(regional -> regional.getName().equals(project.getDistributionCity()))){
+                        && user.getRegionalManager().getRegionalList().stream().anyMatch(regional -> regional.getCity().equals(project.getDistributionCity()))){
                     operationControl.setReceive(true);
                 }
             } else if (project.getProjectDistributionTypeId() == 2){