Quellcode durchsuchen

修改获取我的众测时,更新已完成项目的错误状态为已截止

guo00guo vor 5 Jahren
Ursprung
Commit
a90670ef05

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

@@ -82,5 +82,5 @@ public interface CrowdTestProjectDao extends CrudRepository<CrowdTestProjectPO,
 
     @Modifying
     @Query(nativeQuery = true,value="update crowd_test_project set CTP_STATUS= ?1 where CTP_CODE=?2")
-    void updateStatusById(@Param("status") int status, @Param("code") String code);
+    void updateStatusByCode(@Param("status") int status, @Param("code") String code);
 }

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

@@ -570,7 +570,7 @@ public class WebMediatorImpl implements ViewMediator {
                     CrowdTestProject project = new CrowdTestProject();
                     BeanUtils.copyProperties(crowdTestProjectPO, project);
                     CrowdProjectVO projectVO = new CrowdProjectVO(project);
-                    themeStatusService.updateStatus(project);
+//                    themeStatusService.updateStatus(project);
                     if (project.getStatus() == CrowdTestProjectStatus.HAS_COMMITED)
                         projectVO.setNeedHandle(true);
                     // 应用类型值的转换

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

@@ -3,14 +3,12 @@ package com.mooctest.crowd.site.service.impl;
 import com.mooctest.crowd.domain.dao.CrowdTestProjectDao;
 import com.mooctest.crowd.domain.domainobject.CrowdTestProject;
 import com.mooctest.crowd.domain.domainobject.CrowdTestProjectStatus;
-import com.mooctest.crowd.domain.model.CrowdTestProjectPO;
 import com.mooctest.crowd.site.service.ThemeStatusService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.sql.Timestamp;
-import java.util.Optional;
 
 /**
  * @program: crowd
@@ -26,14 +24,10 @@ public class ThemeStatusServiceImpl implements ThemeStatusService {
 
     @Override
     public Integer updateStatus(CrowdTestProject crowdTestProject) {
-
         int status = 0;
-        long curr = System.currentTimeMillis();
-        if ((crowdTestProject.getDeadTime().before(new Timestamp(System.currentTimeMillis())))) {
-           Optional<CrowdTestProjectPO> crowdTestProjectPO =crowdTestProjectDao.findById(crowdTestProject.getId());
-           CrowdTestProjectPO crowdTestProjectPO1=crowdTestProjectPO.get();
-            crowdTestProjectPO1.setStatus(CrowdTestProjectStatus.HAS_TIME_OUT);
-            crowdTestProjectDao.save(crowdTestProjectPO1);
+        if ((crowdTestProject.getDeadTime().before(new Timestamp(System.currentTimeMillis()))) && crowdTestProject.getStatus() < CrowdTestProjectStatus.HAS_FINISHED) {
+            status = CrowdTestProjectStatus.HAS_TIME_OUT;
+            crowdTestProjectDao.updateStatusByCode(status, crowdTestProject.getCode());
         }
         return status;
     }