|
@@ -414,22 +414,23 @@ public class StageControlService {
|
|
List<TaskPublishSetting> taskListAll = taskPublishSettingRepo.findByWorkIdAndSubjectAndPublishCount(workId, subject.name(), max);
|
|
List<TaskPublishSetting> taskListAll = taskPublishSettingRepo.findByWorkIdAndSubjectAndPublishCount(workId, subject.name(), max);
|
|
if (Objects.isNull(questionId)) {
|
|
if (Objects.isNull(questionId)) {
|
|
Map<String, TaskPublishSetting> map = taskList.stream().collect(Collectors.toMap(TaskPublishSetting::getCode, p -> p));
|
|
Map<String, TaskPublishSetting> map = taskList.stream().collect(Collectors.toMap(TaskPublishSetting::getCode, p -> p));
|
|
- taskListAll.stream().map(m -> {
|
|
|
|
- m.setId(null);
|
|
|
|
- m.setWorkId(workId);
|
|
|
|
- m.setQuestionId(m.getQuestionId());
|
|
|
|
- m.setSubject(subject.name());
|
|
|
|
- m.setCode(m.getCode());
|
|
|
|
- m.setSuccessCount(m.getTotalCount());
|
|
|
|
- m.setWaitCount(0);
|
|
|
|
- m.setSortRule(map.get(m.getCode()).getSortRule());
|
|
|
|
- m.setDisplayNumber(map.get(m.getCode()).getDisplayNumber());
|
|
|
|
- m.setTaskCount(0);
|
|
|
|
- m.setBatchNo(scoreBatchNo);
|
|
|
|
- m.setPublishCount(max + 1);
|
|
|
|
- return m;
|
|
|
|
|
|
+ List<TaskPublishSetting> finalList = taskListAll.stream().map(m -> {
|
|
|
|
+ TaskPublishSetting taskPublishSetting = new TaskPublishSetting();
|
|
|
|
+ taskPublishSetting.setWorkId(workId);
|
|
|
|
+ taskPublishSetting.setQuestionId(m.getQuestionId());
|
|
|
|
+ taskPublishSetting.setSubject(subject.name());
|
|
|
|
+ taskPublishSetting.setCode(m.getCode());
|
|
|
|
+ taskPublishSetting.setTotalCount(m.getTotalCount());
|
|
|
|
+ taskPublishSetting.setSuccessCount(m.getTotalCount());
|
|
|
|
+ taskPublishSetting.setWaitCount(0);
|
|
|
|
+ taskPublishSetting.setSortRule(map.get(m.getCode()).getSortRule());
|
|
|
|
+ taskPublishSetting.setDisplayNumber(map.get(m.getCode()).getDisplayNumber());
|
|
|
|
+ taskPublishSetting.setTaskCount(0);
|
|
|
|
+ taskPublishSetting.setBatchNo(scoreBatchNo);
|
|
|
|
+ taskPublishSetting.setPublishCount(max + 1);
|
|
|
|
+ return taskPublishSetting;
|
|
}).collect(Collectors.toList());
|
|
}).collect(Collectors.toList());
|
|
- taskPublishSettingRepo.save(taskListAll);
|
|
|
|
|
|
+ taskPublishSettingRepo.save(finalList);
|
|
} else {
|
|
} else {
|
|
Long questionId0 = Long.valueOf(questionId.toString());
|
|
Long questionId0 = Long.valueOf(questionId.toString());
|
|
List<TaskPublishSetting> finalList = taskListAll.stream().map(m -> {
|
|
List<TaskPublishSetting> finalList = taskListAll.stream().map(m -> {
|
|
@@ -563,18 +564,30 @@ public class StageControlService {
|
|
return taskPublishSettingRepo.findByWorkIdAndSubjectAndPublishCount(markSubject.getWorkId(), markSubject.getSubject().name(), maxCount);
|
|
return taskPublishSettingRepo.findByWorkIdAndSubjectAndPublishCount(markSubject.getWorkId(), markSubject.getSubject().name(), maxCount);
|
|
}*/
|
|
}*/
|
|
|
|
|
|
- Integer maxCount = taskPublishSettingRepo.maxPublishCountByQuestionId(markSubject.getWorkId(), Long.valueOf(questionId.toString()), markSubject.getSubject().name());
|
|
|
|
|
|
+ Integer maxCount = taskPublishSettingRepo.maxPublishCount(markSubject.getWorkId(), markSubject.getSubject().name());
|
|
if (maxCount != null && maxCount.intValue() >= 0) {
|
|
if (maxCount != null && maxCount.intValue() >= 0) {
|
|
List settingList = null;
|
|
List settingList = null;
|
|
//单个考区
|
|
//单个考区
|
|
if (questionId != null) {
|
|
if (questionId != null) {
|
|
settingList = taskPublishSettingRepo.findByWorkIdAndQuestionIdAndSubjectAndPublishCount(markSubject.getWorkId(), questionId, markSubject.getSubject().name(), maxCount);
|
|
settingList = taskPublishSettingRepo.findByWorkIdAndQuestionIdAndSubjectAndPublishCount(markSubject.getWorkId(), questionId, markSubject.getSubject().name(), maxCount);
|
|
|
|
+ return settingList;
|
|
}
|
|
}
|
|
//所有考区
|
|
//所有考区
|
|
else {
|
|
else {
|
|
- settingList = taskPublishSettingRepo.findAllByWorkIdAndSubjectAndPublishCount(markSubject.getWorkId(), markSubject.getSubject().name(), maxCount);
|
|
|
|
|
|
+ List<Object[]> settingList1 = taskPublishSettingRepo.findAllByWorkIdAndSubjectAndPublishCount(markSubject.getWorkId(), markSubject.getSubject().name(), maxCount);
|
|
|
|
+ List<TaskPublishSetting> taskPublishSettings = new ArrayList<>();
|
|
|
|
+ settingList1.forEach(m->{
|
|
|
|
+ TaskPublishSetting taskPublishSetting = new TaskPublishSetting();
|
|
|
|
+ taskPublishSetting.setWorkId(Long.valueOf(m[0].toString()));
|
|
|
|
+ taskPublishSetting.setSubject(String.valueOf(m[1]));
|
|
|
|
+ taskPublishSetting.setCode(String.valueOf(m[2]));
|
|
|
|
+ taskPublishSetting.setTotalCount(Integer.valueOf(m[3].toString()));
|
|
|
|
+ taskPublishSetting.setSuccessCount(Integer.valueOf(m[4].toString()));
|
|
|
|
+ taskPublishSetting.setWaitCount(Double.valueOf(m[5].toString()).intValue());
|
|
|
|
+ taskPublishSettings.add(taskPublishSetting);
|
|
|
|
+ });
|
|
|
|
+ return taskPublishSettings;
|
|
}
|
|
}
|
|
- return settingList;
|
|
|
|
}
|
|
}
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|