Kaynağa Gözat

修改项目可见性时的区域管理员id

郭超 4 yıl önce
ebeveyn
işleme
d2627d29bc

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

@@ -129,7 +129,7 @@ public class CrowdProjectVO implements Serializable {
             this.statusVO.setStyle("primary");
         }else if (this.status == CrowdTestProjectStatus.HAS_COMMITED){
             this.statusVO.setText("已提交");
-            this.statusVO.setStyle("primary");
+            this.statusVO.setStyle("danger");
         }else if (this.status == CrowdTestProjectStatus.HAS_FINISHED) {
             this.statusVO.setText("已完成");
             this.statusVO.setStyle("success");

+ 4 - 0
site/src/main/java/com/mooctest/crowd/site/mediator/impl/OperationMediatorImpl.java

@@ -2,6 +2,7 @@ package com.mooctest.crowd.site.mediator.impl;
 
 import com.mooctest.crowd.domain.domainobject.CrowdTestProject;
 import com.mooctest.crowd.domain.domainobject.CrowdTestProjectStatus;
+import com.mooctest.crowd.domain.domainobject.DistributeType;
 import com.mooctest.crowd.domain.repository.CommonRepo;
 import com.mooctest.crowd.domain.repository.CrowdTestProjectRepo;
 import com.mooctest.crowd.site.command.CrowdTestProjectCommand;
@@ -57,6 +58,9 @@ public class OperationMediatorImpl implements OperationMediator {
         if(updateProject.getCreateTime() == null){
             updateProject.setCreateTime(new Timestamp(System.currentTimeMillis()));
         }
+        if(updateProject.getProjectDistributionTypeId() != DistributeType.DIRECT.getId()){
+            updateProject.setRegionalManagerId(null);
+        }
         themeSchedulerService.createNewThemeScheduler(updateProject);
         return updateProject;
     }

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

@@ -410,7 +410,7 @@ public class WebMediatorImpl implements ViewMediator {
                     if (project.getStatus() == CrowdTestProjectStatus.HAS_COMMITED)
                         projectVO.setNeedHandle(true);
                     // 领域类型、应用类型值的转换
-                    projectVO = changeFieldAndApplicationAndTestType(projectVO, applicationMap, fieldMap, testMap);
+                    projectVO = this.changeFieldAndApplicationAndTestType(projectVO, applicationMap, fieldMap, testMap);
 
                     // 判断项目是否截止
                     if (projectVO.getDatetime().getTime() <= System.currentTimeMillis() && project.getStatus() < CrowdTestProjectStatus.HAS_FINISHED) {

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

@@ -92,7 +92,7 @@ public class CommonServiceImpl implements CommonService {
 
     @Override
     public MyCrowdDTO getPersonCrowd(Long userId) {
-        User user = userRepo.getByID(userId);
+        User user = userRepo.getInfoAndRolesByID(userId);
         MyCrowdDTO myCrowdDTO = viewMediator.renderMyCrowd(user);
         myCrowdDTO.setAgency(AuthCheckServiceImpl.canAcceptTask(user));
         myCrowdDTO.setPart(AuthCheckServiceImpl.canCreateProject(user));

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

@@ -211,7 +211,8 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
         if (project.getCreateTime() == null) {
             project.setCreateTime(new Timestamp(System.currentTimeMillis()));
         }
-        projectRepo.saveCrowdTestProject(operationMediator.updateProject(project, crowdTestProjectCommand));
+        CrowdTestProject crowdTestProject = operationMediator.updateProject(project, crowdTestProjectCommand);
+        projectRepo.saveCrowdTestProject(crowdTestProject);
         return getProjectDetails(projectCode, crowdTestProjectCommand.getUserId());
     }
 
@@ -387,7 +388,7 @@ public class CrowdProjectServiceImpl implements CrowdProjectService {
 
     @Override
     public ProjectDetailsDTO commitProject(String projectCode, Long userId) {
-        CrowdTestProject project = projectRepo.getByProjectCodeJustInfo(projectCode);
+        CrowdTestProject project = projectRepo.getByProjectCode(projectCode);
         project.commitCrowdTestProject(userRepo.getInfoAndRolesAndRegionalMangerByID(userId));
         projectRepo.saveCrowdTestProject(project);
         return getProjectDetails(projectCode, userId);