Bläddra i källkod

fix update score

chenxz 8 år sedan
förälder
incheckning
2cca84bc9f

+ 2 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/dao/fromKibug/ScoreRuleDao.java

@@ -2,9 +2,11 @@ package cn.iselab.mooctest.site.dao.fromKibug;
 
 import cn.iselab.mooctest.site.models.fromKibug.ScoreRule;
 import cn.iselab.mooctest.site.models.fromKibug.ScoreRulePK;
+import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.CrudRepository;
 
 import javax.transaction.Transactional;
+import java.util.List;
 
 /**
  * Created by NJUta on 2017/6/7.

+ 5 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/service/fromKibug/impl/ScoreRuleServiceImpl.java

@@ -6,6 +6,7 @@ import cn.iselab.mooctest.site.dao.fromKibug.ScoreRuleDao;
 import cn.iselab.mooctest.site.models.Weight;
 import cn.iselab.mooctest.site.models.fromKibug.ScoreRule;
 import cn.iselab.mooctest.site.models.fromKibug.ScoreRulePK;
+import cn.iselab.mooctest.site.service.CalculateScoreService;
 import cn.iselab.mooctest.site.service.fromKibug.ScoreRuleService;
 import cn.iselab.mooctest.site.web.data.fromKibug.ScoreRuleItemVO;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +25,8 @@ public class ScoreRuleServiceImpl implements ScoreRuleService{
     private ScoreRuleDao scoreRuleDao;
     @Autowired
     private WeightDao weightDao;
+    @Autowired
+    private CalculateScoreService calculateScoreService;
 
     @Override
     public List<ScoreRuleItemVO> getKibugScoreRule(long taskId, long caseId){
@@ -98,6 +101,7 @@ public class ScoreRuleServiceImpl implements ScoreRuleService{
                 sr.setScript(sri.getPercentage());
         }
         scoreRuleDao.save(sr);
+        calculateScoreService.calculateTotal(taskId,caseId,getKibugScoreRule(taskId,caseId));
     }
 
     @Override
@@ -130,6 +134,7 @@ public class ScoreRuleServiceImpl implements ScoreRuleService{
                 weight.setApfd(sri.getPercentage());
         }
         weightDao.save(weight);
+        calculateScoreService.calculateDevScore(taskId,caseId);
     }
 
     @Override

+ 3 - 0
mooctest-site-server/src/test/java/cn/iselab/mooctest/site/service/fromKibug/impl/ScoreRuleServiceImplTest.java

@@ -8,6 +8,7 @@ import cn.iselab.mooctest.site.models.fromKibug.Application;
 import cn.iselab.mooctest.site.models.fromKibug.IncrementId;
 import cn.iselab.mooctest.site.models.fromKibug.ScoreRule;
 import cn.iselab.mooctest.site.models.fromKibug.ScoreRulePK;
+import cn.iselab.mooctest.site.service.CalculateScoreService;
 import cn.iselab.mooctest.site.web.data.fromKibug.ScoreRuleItemVO;
 import org.junit.Assert;
 import org.junit.Before;
@@ -35,6 +36,8 @@ public class ScoreRuleServiceImplTest {
     private ScoreRuleDao scoreRuleDao;
     @Mock
     private WeightDao weightDao;
+    @Mock
+    private CalculateScoreService calculateScoreService;
 
     @Before
     public void setUp() {