浏览代码

修改任务项目相关详情接口

郭超 4 年之前
父节点
当前提交
5a8264bed4
共有 17 个文件被更改,包括 90 次插入76 次删除
  1. 2 0
      core/src/main/java/com/mooctest/crowd/domain/domainobject/CrowdTestProject.java
  2. 5 6
      core/src/main/java/com/mooctest/crowd/domain/repository/CrowdTestProjectRepo.java
  3. 3 2
      core/src/main/java/com/mooctest/crowd/domain/repository/IUserRepo.java
  4. 36 23
      core/src/main/java/com/mooctest/crowd/domain/repository/UserRepo.java
  5. 5 0
      site/src/main/java/com/mooctest/crowd/site/command/CrowdTestProjectCommand.java
  6. 2 2
      site/src/main/java/com/mooctest/crowd/site/controller/CrowdProjectController.java
  7. 3 1
      site/src/main/java/com/mooctest/crowd/site/controller/CrowdTaskController.java
  8. 2 1
      site/src/main/java/com/mooctest/crowd/site/controller/interceptor/SysAdminCheckInterceptor.java
  9. 1 1
      site/src/main/java/com/mooctest/crowd/site/data/enums/RoleType.java
  10. 1 1
      site/src/main/java/com/mooctest/crowd/site/data/vo/CrowdProjectVO.java
  11. 2 1
      site/src/main/java/com/mooctest/crowd/site/data/vo/CrowdTaskVO.java
  12. 2 0
      site/src/main/java/com/mooctest/crowd/site/mediator/ViewMediator.java
  13. 18 19
      site/src/main/java/com/mooctest/crowd/site/mediator/impl/WebMediatorImpl.java
  14. 1 1
      site/src/main/java/com/mooctest/crowd/site/service/CrowdProjectService.java
  15. 2 13
      site/src/main/java/com/mooctest/crowd/site/service/impl/CommonServiceImpl.java
  16. 3 3
      site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdProjectServiceImpl.java
  17. 2 2
      site/src/main/java/com/mooctest/crowd/site/service/impl/CrowdTaskServiceImpl.java

+ 2 - 0
core/src/main/java/com/mooctest/crowd/domain/domainobject/CrowdTestProject.java

@@ -31,7 +31,9 @@ public class CrowdTestProject {
     private String name;
     private String code;
     private Long userId;
+    private Long institution;
     private Long regionalManagerId;
+    private String regionalManagerName;
     private Long projectDistributionTypeId;
     private String fieldType;
     private String applicationType;

+ 5 - 6
core/src/main/java/com/mooctest/crowd/domain/repository/CrowdTestProjectRepo.java

@@ -128,24 +128,23 @@ public class CrowdTestProjectRepo implements ICrowdTestProjectRepo {
 
     @Override
     public CrowdTestProject getByProjectCode(String crowdTestProjectCode) throws CrowdTestProjectNotExistException {
-        return getCrowdTestProject(null, crowdTestProjectDao.findByCodeAndIsDeleted(crowdTestProjectCode, DeletedStatus.isNotDeleted));
+        return this.getCrowdTestProject(null, crowdTestProjectDao.findByCodeAndIsDeleted(crowdTestProjectCode, DeletedStatus.isNotDeleted));
     }
 
     @Override
     public CrowdTestProject getByProjectCodeAndTaskCode(String crowdTestProjectCode, String taskCode) throws CrowdTestProjectNotExistException {
-        return getCrowdTestProject(taskCode, crowdTestProjectDao.findByCodeAndIsDeleted(crowdTestProjectCode, DeletedStatus.isNotDeleted));
+        return this.getCrowdTestProject(taskCode, crowdTestProjectDao.findByCodeAndIsDeleted(crowdTestProjectCode, DeletedStatus.isNotDeleted));
     }
 
 
 
 
     @NotNull
-    public CrowdTestProject getCrowdTestProject(String taskCode, CrowdTestProjectPO byCodeAndIsDeleted) {
-        CrowdTestProjectPO crowdTestProjectPO = byCodeAndIsDeleted;
+    public CrowdTestProject getCrowdTestProject(String taskCode, CrowdTestProjectPO crowdTestProjectPO) {
         if (crowdTestProjectPO == null) {
             throw new CrowdTestProjectNotExistException();
         } else {
-            CrowdTestProject crowdTestProjectResult = getCrowdTestProjectAndTaskAndReportByCrowdTestProjectPO(crowdTestProjectPO, taskCode);
+            CrowdTestProject crowdTestProjectResult = this.getCrowdTestProjectAndTaskAndReportByCrowdTestProjectPO(crowdTestProjectPO, taskCode);
             return crowdTestProjectResult;
         }
     }
@@ -153,7 +152,7 @@ public class CrowdTestProjectRepo implements ICrowdTestProjectRepo {
     @Override
     public List<CrowdTestProject> getCrowdListByUserId(Long userId) {
         List<CrowdTestProjectPO> crowdTestProjectPOList = crowdTestProjectDao.findByUserIdAndIsDeleted(userId, DeletedStatus.isNotDeleted);
-        return getCrowdTestProjects(crowdTestProjectPOList);
+        return this.getCrowdTestProjects(crowdTestProjectPOList);
     }
 
     @Override

+ 3 - 2
core/src/main/java/com/mooctest/crowd/domain/repository/IUserRepo.java

@@ -5,6 +5,7 @@ import com.mooctest.crowd.domain.domainobject.UserTaskCount;
 import com.mooctest.crowd.domain.exception.UserNotExistException;
 
 import javax.management.relation.RoleNotFoundException;
+import java.util.List;
 
 /**
  * @Author: xuexb
@@ -28,8 +29,6 @@ public interface IUserRepo {
 
     UserTaskCount getUserTaskCountByUserId(Long userId);
 
-    User saveUserAndRole(User user);
-
     User saveUser(User user) throws RoleNotFoundException;
 
     User saveUserJustInfo(User user);
@@ -37,4 +36,6 @@ public interface IUserRepo {
     User saveEvaluationAgencyByUser(User user);
 
     User savePersonalAuthByUser(User user);
+
+    List<Long> getUserIdListByRoleName(String roleName);
 }

+ 36 - 23
core/src/main/java/com/mooctest/crowd/domain/repository/UserRepo.java

@@ -189,29 +189,29 @@ public class UserRepo implements IUserRepo {
 	 * @param user
 	 * @return
 	 */
-	@Override
-	public User saveUserAndRole(User user) {
-		UserPO userPO = userDao.save(Converter.convert(UserPO.class, user));
-		User saveResultUser = Converter.convert(User.class, userPO);
-		List<Role> roleList = user.getRoleList();
-
-		// 存储从数据库中取出的User的Role数据
-		List<Role> roleListResult = new ArrayList<>();
-
-		for (Role role : roleList) {
-			RolePO rolePO = roleDao.findByName(role.getName());
-			Role roleConvert = Converter.convert(Role.class, rolePO);
-
-			UserToRole userToRole = new UserToRole(roleConvert.getId(), saveResultUser.getId(), currentTime);
-			userToRoleDao.save(Converter.convert(UserToRolePO.class, userToRole));
-
-			Role roleResult = getPermissionByRole(roleConvert);
-			roleListResult.add(roleResult);
-//            roleListResult.add(roleConvert);
-		}
-		saveResultUser.setRoleList(roleListResult);
-		return saveResultUser;
-	}
+//	@Override
+//	public User saveUserAndRole(User user) {
+//		UserPO userPO = userDao.save(Converter.convert(UserPO.class, user));
+//		User saveResultUser = Converter.convert(User.class, userPO);
+//		List<Role> roleList = user.getRoleList();
+//
+//		// 存储从数据库中取出的User的Role数据
+//		List<Role> roleListResult = new ArrayList<>();
+//
+//		for (Role role : roleList) {
+//			RolePO rolePO = roleDao.findByName(role.getName());
+//			Role roleConvert = Converter.convert(Role.class, rolePO);
+//
+//			UserToRole userToRole = new UserToRole(roleConvert.getId(), saveResultUser.getId(), currentTime);
+//			userToRoleDao.save(Converter.convert(UserToRolePO.class, userToRole));
+//
+//			Role roleResult = getPermissionByRole(roleConvert);
+//			roleListResult.add(roleResult);
+////            roleListResult.add(roleConvert);
+//		}
+//		saveResultUser.setRoleList(roleListResult);
+//		return saveResultUser;
+//	}
 
 	/**
 	 * 保存用户相关的所有信息(包括测评机构信息、角色信息、权限信息)
@@ -256,6 +256,19 @@ public class UserRepo implements IUserRepo {
 
 
 	/**
+	 * 根据角色名称获取用户ID列表
+	 * @param roleName
+	 * @return
+	 */
+	@Override
+	public List<Long> getUserIdListByRoleName(String roleName){
+		RolePO rolePO = roleDao.findByName(roleName);
+		List<UserToRolePO> userToRolePOS = userToRoleDao.findByRoleId(rolePO.getId());
+		return userToRolePOS.stream().distinct().map(UserToRolePO::getUserId).collect(Collectors.toList());
+	}
+
+
+	/**
 	 * 保存用户信息(包括测评机构信息、角色信息、权限信息)
 	 *
 	 * @param user

+ 5 - 0
site/src/main/java/com/mooctest/crowd/site/command/CrowdTestProjectCommand.java

@@ -47,6 +47,10 @@ public class CrowdTestProjectCommand {
 
     private Long institution;
 
+    private Long regionalManagerId;
+
+    private String regionalManagerName;
+
     @NotNull(message = "项目联系人不可为空")
     private String contactName;
 
@@ -87,6 +91,7 @@ public class CrowdTestProjectCommand {
             crowdTestProject.setDistributionProvince(this.location.get("provinceCode"));
             crowdTestProject.setDistributionCity(this.location.get("cityCode"));
         }
+        crowdTestProject.setInstitution(this.getInstitution());
         crowdTestProject.setRegionalManagerId(this.getInstitution());
         crowdTestProject.setDeadTime(this.datetime);
         crowdTestProject.setQuotedPrice(this.budget);

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

@@ -164,9 +164,9 @@ public class CrowdProjectController{
 
     @LoginRequired
     @RequestMapping(value = "/api/project/{projectCode}/status/rejected", method = RequestMethod.PUT)
-    public void rejectProejct(@PathVariable("projectCode") String projectCode, HttpSession session){
+    public ProjectDetailsDTO rejectProejct(@PathVariable("projectCode") String projectCode, HttpSession session){
         Long userId = Long.parseLong((String)session.getAttribute("userId"));
-        projectService.rejectProject(projectCode, userId);
+        return projectService.rejectProject(projectCode, userId);
     }
 
     @LoginRequired

+ 3 - 1
site/src/main/java/com/mooctest/crowd/site/controller/CrowdTaskController.java

@@ -88,7 +88,9 @@ public class CrowdTaskController{
             throw new BaseException(result.getFieldError().getDefaultMessage());
         else if (!command.isLegal())
             throw new BaseException("信息不合法,项目可见性选择存在问题");
-        return taskService.updateTask(projectCode, taskCode, command, Long.parseLong((String)session.getAttribute("userId")));
+        // 判断空
+        long userId = Long.parseLong((String) session.getAttribute("userId"));
+        return taskService.updateTask(projectCode, taskCode, command, userId);
     }
 
     @LoginRequired

+ 2 - 1
site/src/main/java/com/mooctest/crowd/site/controller/interceptor/SysAdminCheckInterceptor.java

@@ -4,6 +4,7 @@ import com.mooctest.crowd.domain.domainobject.User;
 import com.mooctest.crowd.domain.exception.UnauthorizedException;
 import com.mooctest.crowd.domain.repository.UserRepo;
 import com.mooctest.crowd.site.annotation.SysAdminRequired;
+import com.mooctest.crowd.site.data.enums.RoleType;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -33,7 +34,7 @@ public class SysAdminCheckInterceptor extends HandlerInterceptorAdapter {
                 throw new UnauthorizedException("请登录后操作");
             Long userId = Long.parseLong((String)request.getSession().getAttribute("userId"));
             User user = userRepo.getByID(userId);
-            if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("SystemAdministrator"))){
+            if (user.getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.SYSTEM_ADMIN.getName()))){
                 return true;
             } else {
                 log.warn("无权限的访问,userId: " + userId);

+ 1 - 1
site/src/main/java/com/mooctest/crowd/site/data/enums/RoleType.java

@@ -15,7 +15,7 @@ public enum RoleType {
     GENERAL_USER(1L, "generalUser"),        // 注册后的普通用户
     AGENCY(2L, "evaluationAgency"),         // 注册为测评机构接包
     REGIONAL_MANAGER(3L, "RegionalManager"),
-    SYSTEM_ADMIN(4L, "RegionalManager"),
+    SYSTEM_ADMIN(4L, "SystemAdministrator"),
     ENTERPRISE_USER(5L, "enterpriseUser"),
     EVALUATION_USER(6L, "evaluationUser"),  // 注册为测评用户接包
     PARTY_USER(7L, "partyUser"),            // 注册为发包用户发包

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

@@ -41,7 +41,7 @@ public class CrowdProjectVO implements Serializable {
     private Long resource;
     private Long userId;
     private Map<String, String> location;
-    private String institution;
+    private Long institution;
 
     @JSONField(format = "yyyy-MM-dd HH:mm:ss")
     private Timestamp datetime;

+ 2 - 1
site/src/main/java/com/mooctest/crowd/site/data/vo/CrowdTaskVO.java

@@ -40,7 +40,7 @@ public class CrowdTaskVO implements Serializable{
     private Long agencyId;
     private String agencyName;
     private Map<String, String> location;
-    private String institution;
+    private Long institution;
     private String serviceType;
     private int status;
     private Long distributionType;
@@ -81,6 +81,7 @@ public class CrowdTaskVO implements Serializable{
         status = task.getStatus();
         fullStatus = task.getFullStatus();
         agencyId = task.getEvaluationAgencyId();
+        institution = task.getEvaluationAgencyId();
         datetime = task.getDeadTime();
         participantCount = task.getParticipantCount();
         acceptedCount = task.getAcceptedCount();

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

@@ -44,6 +44,8 @@ public interface ViewMediator {
 
     UserDataDTO renderMyCrowdData(Long userId);
 
+    List<RegionalManagerVO> renderRegionManagerList();
+
     TaskSquareDTO renderTaskSquare();
 
     CrowdProjectVO changeFieldAndApplicationAndTestType(CrowdProjectVO projectVO, Map<String, String> applicationMap

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

@@ -19,7 +19,6 @@ import com.mooctest.crowd.site.data.vo.*;
 import com.mooctest.crowd.site.mediator.ViewMediator;
 import com.mooctest.crowd.site.service.CrowdTaskService;
 import com.mooctest.crowd.site.service.ThemeStatusService;
-import com.mooctest.crowd.site.service.ThemeStatusTaskService;
 import com.mooctest.crowd.site.service.impl.AuthCheckServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.codehaus.jettison.json.JSONException;
@@ -112,20 +111,11 @@ public class WebMediatorImpl implements ViewMediator {
     private ResourceTypeDao resourceTypeDao;
 
     @Autowired
-    private FieldDao fieldDao;
-
-    @Autowired
-    private UserToRoleDao userToRoleDao;
+    private RegionalManagerToRegionalDao regionalManagerToRegionalDao;
 
     @Autowired
     private ThemeStatusService themeStatusService;
 
-    @Autowired
-    private ThemeStatusTaskService themeStatusTaskService;
-
-    @Autowired
-    private EndPointDao endPointDao;
-
     @Value("${file.save.path}")
     private String fileSaveRootPath;
 
@@ -428,7 +418,7 @@ public class WebMediatorImpl implements ViewMediator {
         myCrowdDTO.setMyProjectCount((long) (myCrowdDTO.getMyProjects() == null ? 0 : myProjects.size()));
 
         //对于区域管理员crowdTestProjectPO -> crowdTestProjectPO.getStatus() > CrowdTestProjectStatus.HAS_RELEASED
-        if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("RegionalManager"))) {
+        if (user.getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.REGIONAL_MANAGER.getName()))) {
             List<CrowdTestProjectPO> crowdTestProjectPOList = projectDao.findByRegionalManagerIdAndIsDeleted(userId, DeletedStatus.isNotDeleted)
                     .stream().map(crowdTestProjectPO -> {
                         // 判断项目是否截止
@@ -699,7 +689,7 @@ public class WebMediatorImpl implements ViewMediator {
             CrowdTaskVO crowdTaskVO = new CrowdTaskVO(crowdTestTask);
             if (crowdTestTask.getDistributionType() == 0) {
                 String agencyName = evaluationAgencyRepo.findAgencyNameByUserId(crowdTestTask.getEvaluationAgencyId());
-                crowdTaskVO.setInstitution(agencyName == null ? "该机构已注销" : agencyName);
+                crowdTaskVO.setAgencyName(agencyName == null ? "该机构已注销" : agencyName);
             }
             taskVOList.add(crowdTaskVO);
         }
@@ -712,7 +702,8 @@ public class WebMediatorImpl implements ViewMediator {
         CrowdProjectVO projectVO = new CrowdProjectVO(project);
         if (project.getStatus() > CrowdTestProjectStatus.HAS_RELEASED && project.getRegionalManagerId() != null) {
             Optional<UserPO> regionManager = userDao.findById(project.getRegionalManagerId());
-            projectVO.setInstitution(regionManager.isPresent() ? regionManager.get().getName() : "区域管理员已注销");
+            projectVO.setInstitution(regionManager.isPresent() ? regionManager.get().getId() : 0L);
+            projectVO.setRegionManagerName(regionManager.isPresent() ? regionManager.get().getName() : "区域管理员已注销");
         }
         List<PieChartDataVO> progress = new ArrayList<>();
         progress.add(new PieChartDataVO("已完成", crowdTestTaskList
@@ -733,7 +724,8 @@ public class WebMediatorImpl implements ViewMediator {
         }
         // 判断项目是否为定向发布,显示定向给的区域管理员信息
         if(project.getProjectDistributionTypeId().equals(DistributeType.DIRECT.getId())){
-            projectVO.setInstitution(userRepo.getByIDJustInfo(project.getRegionalManagerId()).getName());
+            projectVO.setInstitution(project.getRegionalManagerId());
+            projectVO.setRegionManagerName(userRepo.getByIDJustInfo(project.getRegionalManagerId()).getName());
         }
 
         // 项目类型值的转换
@@ -948,6 +940,13 @@ public class WebMediatorImpl implements ViewMediator {
     }
 
     @Override
+    public List<RegionalManagerVO> renderRegionManagerList() {
+        List<Long> userIdList = userRepo.getUserIdListByRoleName(RoleType.REGIONAL_MANAGER.getName());
+        return userIdList.stream().map(userId -> new RegionalManagerVO(userId, userRepo.getByIDJustInfo(userId).getName())).collect(Collectors.toList());
+    }
+
+
+    @Override
     public List<EvaluationAgencyVO> renderAgencyList() {
         List<EvaluationAgencyVO> agencyList = new ArrayList<>();
         evaluationAgencyRepo.findAll().forEach(evaluationAgency -> {
@@ -1470,7 +1469,7 @@ public class WebMediatorImpl implements ViewMediator {
         }
 
         //需求提出者和系统管理员视角
-        if (project.getUserId().equals(user.getId()) || user.getRoleList().stream().anyMatch(role -> role.getName().equals("SystemAdministrator"))) {
+        if (project.getUserId().equals(user.getId()) || user.getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.SYSTEM_ADMIN.getName()))) {
             if (project.getStatus() < CrowdTestProjectStatus.HAS_RECEIVED) {
                 operationControl.setUpdate(true);
             } else if (project.getStatus() == CrowdTestProjectStatus.HAS_COMMITED) {
@@ -1478,7 +1477,7 @@ public class WebMediatorImpl implements ViewMediator {
             }
         }
         //区域管理员视角
-        if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("RegionalManager"))) {
+        if (user.getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.REGIONAL_MANAGER.getName()))) {
             if ((project.getProjectDistributionTypeId() == 0 && project.getRegionalManagerId().equals(user.getId()))
                     || ((project.getProjectDistributionTypeId() > 0 && project.getStatus() >= CrowdTestProjectStatus.HAS_RECEIVED) && project.getRegionalManagerId().equals(user.getId()))) {
                 if (project.getStatus() == CrowdTestProjectStatus.HAS_RELEASED) {
@@ -1531,7 +1530,7 @@ public class WebMediatorImpl implements ViewMediator {
 
         // 任务时间截止,对于区域管理员可以有导出和fork功能
         if(task.getStatus() == CrowdTestTaskStatus.HAS_TIME_OUT){
-            if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("SystemAdministrator"))
+            if (user.getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.SYSTEM_ADMIN.getName()))
                     || (user.getRegionalManager() != null && user.getId().equals(project.getRegionalManagerId()))) {
                 // 不管何时都可以导出任务
                 taskOperationControl.setExportTask(true);
@@ -1549,7 +1548,7 @@ public class WebMediatorImpl implements ViewMediator {
             }
         }else{
             //区域管理员或系统管理员视角
-            if (user.getRoleList().stream().anyMatch(role -> role.getName().equals("SystemAdministrator"))
+            if (user.getRoleList().stream().anyMatch(role -> role.getName().equals(RoleType.SYSTEM_ADMIN.getName()))
                     || (user.getRegionalManager() != null && user.getId().equals(project.getRegionalManagerId()))) {
                 // 不管何时都可以导出任务
                 taskOperationControl.setExportTask(true);

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

@@ -45,7 +45,7 @@ public interface CrowdProjectService {
 
     ProjectDetailsDTO receiveProject(String projectCode, Long userId);
 
-    void rejectProject(String projectCode, Long userId);
+    ProjectDetailsDTO rejectProject(String projectCode, Long userId);
 
     ProjectDetailsDTO commitProject(String projectCode, Long userId);
 

+ 2 - 13
site/src/main/java/com/mooctest/crowd/site/service/impl/CommonServiceImpl.java

@@ -24,7 +24,6 @@ import com.mooctest.crowd.site.mediator.ViewMediator;
 import com.mooctest.crowd.site.mediator.impl.WebMediatorImpl;
 import com.mooctest.crowd.site.service.CommonService;
 import com.mooctest.crowd.site.util.DataUtils;
-import org.jetbrains.annotations.NotNull;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.beans.factory.annotation.Value;
@@ -91,8 +90,8 @@ public class CommonServiceImpl implements CommonService {
     public MyCrowdDTO getPersonCrowd(Long userId) {
         User user = userRepo.getByID(userId);
         MyCrowdDTO myCrowdDTO = viewMediator.renderMyCrowd(user);
-        myCrowdDTO.setAgency(this.checkIsAgency(user));
-        myCrowdDTO.setPart(this.checkIsPart(user));
+        myCrowdDTO.setAgency(AuthCheckServiceImpl.canAcceptTask(user));
+        myCrowdDTO.setPart(AuthCheckServiceImpl.canCreateProject(user));
         return myCrowdDTO;
     }
 
@@ -223,11 +222,6 @@ public class CommonServiceImpl implements CommonService {
     @Override
     public Boolean checkCreateProject(Long userId) {
         User user = userRepo.getInfoAndRolesByID(userId);
-        return this.checkIsPart(user);
-    }
-
-    @NotNull
-    public Boolean checkIsPart(User user) {
         Boolean isPart = AuthCheckServiceImpl.canCreateProject(user);
         if(!isPart){
             throw new HaveNotPartAuthException();
@@ -238,11 +232,6 @@ public class CommonServiceImpl implements CommonService {
     @Override
     public Boolean checkAcceptTask(Long userId) {
         User user = userRepo.getInfoAndRolesByID(userId);
-        return this.checkIsAgency(user);
-    }
-
-    @NotNull
-    public Boolean checkIsAgency(User user) {
         Boolean isAgency = AuthCheckServiceImpl.canAcceptTask(user);
         if(!isAgency){
             throw new HaveNotAgencyAuthException();

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

@@ -361,8 +361,7 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
 
     @Override
     public List<RegionalManagerVO> getRegionalManagerList() {
-//        return viewMediator.renderRegionManagerList();
-        return null;
+        return viewMediator.renderRegionManagerList();
     }
 
     @Override
@@ -375,10 +374,11 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
     }
 
     @Override
-    public void rejectProject(String projectCode, Long userId) {
+    public ProjectDetailsDTO rejectProject(String projectCode, Long userId) {
         CrowdTestProject project = projectRepo.getByProjectCodeJustInfo(projectCode);
         project.reject(userId);
         projectRepo.saveCrowdTestProject(project);
+        return getProjectDetails(projectCode, userId);
     }
 
     @Override

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

@@ -312,8 +312,8 @@ public class CrowdTaskServiceImpl implements CrowdTaskService {
 
     @Override
     public TaskDetailsDTO updateTask(String projectCode, String taskCode, CrowdTestTaskCommand command, Long userId) {
-        CrowdTestProject project = projectRepo.getByProjectCode(projectCode);
-        CrowdTestTask crowdTestTask = getTaskByProjectAndTaskCode(project, taskCode);
+        CrowdTestProject project = projectRepo.getByProjectCodeAndTaskCode(projectCode, taskCode);
+        CrowdTestTask crowdTestTask = this.getTaskByProjectAndTaskCode(project, taskCode);
         if (crowdTestTask.getStatus() == CrowdTestTaskStatus.HAS_FINISHED)
             throw new BaseException("禁止修改已结束的任务!");
 //        command.setType(commonRepo.getTypeCodeByName(command.getType()));