فهرست منبع

音频播放次数因考试名称修改不显示bug

xiatian 3 سال پیش
والد
کامیت
ec40d272cd

+ 2 - 0
examcloud-core-questions-dao/src/main/java/cn/com/qmth/examcloud/core/questions/dao/AudioTimeConfigRepo.java

@@ -25,6 +25,8 @@ public interface AudioTimeConfigRepo extends MongoRepository<AudioTimeConfig, St
     List<AudioTimeConfig> findByExamIdAndCourseCodeOrderByGroupCode(String examId, String courseCode);
 
     List<AudioTimeConfig> findByPaperDetailUnit(PaperDetailUnit paperDetailUnit);
+    
+    List<AudioTimeConfig> findByExamIdAndCourseCodeAndGroupCodeAndPaperDetailUnit(String examId, String courseCode,String groupCode,PaperDetailUnit paperDetailUnit);
 
 }
 

+ 8 - 3
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/impl/AudioTimeConfigServiceImpl.java

@@ -9,6 +9,8 @@ import cn.com.qmth.examcloud.core.questions.dao.entity.*;
 import cn.com.qmth.examcloud.core.questions.service.AudioTimeConfigService;
 import cn.com.qmth.examcloud.core.questions.service.ExtractConfigService;
 import cn.com.qmth.examcloud.core.questions.service.QuesService;
+
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Example;
@@ -190,9 +192,12 @@ public class AudioTimeConfigServiceImpl implements AudioTimeConfigService {
         List<AudioTimeConfig> newList = new ArrayList<>();
         if (list != null && list.size() > 0) {
             for (AudioTimeConfig audioTimeConfig : list) {
-                AudioTimeConfig oldAudioTimeConfig = Model.of(audioTimeConfigRepo.findOne(Example.of(audioTimeConfig)));
-                if (oldAudioTimeConfig != null) {
-                    newList.add(oldAudioTimeConfig);
+                List<AudioTimeConfig> oldAudioTimeConfig = audioTimeConfigRepo
+                		.findByExamIdAndCourseCodeAndGroupCodeAndPaperDetailUnit(audioTimeConfig.getExamId()
+                				, audioTimeConfig.getCourseCode(), audioTimeConfig.getGroupCode()
+                				, audioTimeConfig.getPaperDetailUnit());
+                if (!CollectionUtils.isEmpty(oldAudioTimeConfig)) {
+                    newList.add(oldAudioTimeConfig.get(0));
                 } else {
                     newList.add(audioTimeConfig);
                 }