|
|
@ -23,6 +23,7 @@ import com.ibeetl.jlw.entity.dto.QuestionSettingDTO;
|
|
|
|
import com.ibeetl.jlw.enums.*;
|
|
|
|
import com.ibeetl.jlw.enums.*;
|
|
|
|
import com.ibeetl.jlw.service.questionQueue.generalQuestionSettingQueue.GeneralQuestionSettingRedisDelayQueueImpl;
|
|
|
|
import com.ibeetl.jlw.service.questionQueue.generalQuestionSettingQueue.GeneralQuestionSettingRedisDelayQueueImpl;
|
|
|
|
import com.ibeetl.jlw.web.query.*;
|
|
|
|
import com.ibeetl.jlw.web.query.*;
|
|
|
|
|
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
|
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
|
|
import org.apache.poi.ss.usermodel.Row;
|
|
|
|
import org.apache.poi.ss.usermodel.Row;
|
|
|
@ -64,16 +65,25 @@ import static com.ibeetl.jlw.enums.TuckOrErrorEnum.TUCK_TEST;
|
|
|
|
@Validated
|
|
|
|
@Validated
|
|
|
|
public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuestionSetting> {
|
|
|
|
public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuestionSetting> {
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired private GeneralQuestionSettingDao generalQuestionSettingDao;
|
|
|
|
@Autowired
|
|
|
|
@Autowired private GeneralResourcesQuestionSnapshotDao generalResourcesQuestionSnapshotDao;
|
|
|
|
private GeneralQuestionSettingDao generalQuestionSettingDao;
|
|
|
|
@Autowired private GeneralQuestionLogDao generalQuestionLogDao;
|
|
|
|
@Autowired
|
|
|
|
@Autowired private QuestionLogSummaryDao questionLogSummaryDao;
|
|
|
|
private GeneralResourcesQuestionSnapshotDao generalResourcesQuestionSnapshotDao;
|
|
|
|
@Autowired private GeneralQuestionLogService generalQuestionLogService;
|
|
|
|
@Autowired
|
|
|
|
@Autowired @Lazy
|
|
|
|
private GeneralQuestionLogDao generalQuestionLogDao;
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
private QuestionLogSummaryDao questionLogSummaryDao;
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
private GeneralQuestionLogService generalQuestionLogService;
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
@Lazy
|
|
|
|
private GeneralResourcesQuestionSnapshotService generalResourcesQuestionSnapshotService;
|
|
|
|
private GeneralResourcesQuestionSnapshotService generalResourcesQuestionSnapshotService;
|
|
|
|
@Autowired private ResourcesQuestionService resourcesQuestionService;
|
|
|
|
@Autowired
|
|
|
|
@Autowired private GeneralQuestionSettingRedisDelayQueueImpl generalQuestionSettingRedisDelayQueue;
|
|
|
|
private ResourcesQuestionService resourcesQuestionService;
|
|
|
|
@Autowired private CourseInfoDao courseInfoDao;
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
private GeneralQuestionSettingRedisDelayQueueImpl generalQuestionSettingRedisDelayQueue;
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
|
|
|
private CourseInfoDao courseInfoDao;
|
|
|
|
|
|
|
|
|
|
|
|
public PageQuery<GeneralQuestionSetting> queryByCondition(PageQuery query) {
|
|
|
|
public PageQuery<GeneralQuestionSetting> queryByCondition(PageQuery query) {
|
|
|
|
PageQuery ret = generalQuestionSettingDao.queryByCondition(query);
|
|
|
|
PageQuery ret = generalQuestionSettingDao.queryByCondition(query);
|
|
|
@ -105,6 +115,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
throw new PlatformException("批量删除通用题目配置失败", e);
|
|
|
|
throw new PlatformException("批量删除通用题目配置失败", e);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void deleteByIds(String ids) {
|
|
|
|
public void deleteByIds(String ids) {
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
generalQuestionSettingDao.deleteByIds(ids);
|
|
|
|
generalQuestionSettingDao.deleteByIds(ids);
|
|
|
@ -121,7 +132,8 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
} catch (Exception e) {
|
|
|
|
} catch (Exception e) {
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
generalQuestionSettingList.add(JSONObject.parseObject(generalQuestionSettingQuery.getGeneralQuestionSettingJsonStr(), GeneralQuestionSetting.class));
|
|
|
|
generalQuestionSettingList.add(JSONObject.parseObject(generalQuestionSettingQuery.getGeneralQuestionSettingJsonStr(), GeneralQuestionSetting.class));
|
|
|
|
} catch (Exception e1) {}
|
|
|
|
} catch (Exception e1) {
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
ToolUtils.deleteNullList(generalQuestionSettingList);
|
|
|
|
ToolUtils.deleteNullList(generalQuestionSettingList);
|
|
|
|
if (null != generalQuestionSettingList && generalQuestionSettingList.size() > 0) {
|
|
|
|
if (null != generalQuestionSettingList && generalQuestionSettingList.size() > 0) {
|
|
|
@ -147,11 +159,95 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
return jsonResult;
|
|
|
|
return jsonResult;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public String edit(GeneralQuestionSettingQuery generalQuestionSettingQuery){
|
|
|
|
public JsonResult edit(GeneralQuestionSettingQuery generalQuestionSettingQuery) {
|
|
|
|
String msg = "";
|
|
|
|
Long generalQuestionSettingId = generalQuestionSettingQuery.getGeneralQuestionSettingId();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Boolean existGeneralQuestionSettingId = generalQuestionLogService.existGeneralQuestionSettingId(generalQuestionSettingId);
|
|
|
|
|
|
|
|
if (existGeneralQuestionSettingId) {
|
|
|
|
|
|
|
|
return JsonResult.failMessage("此配置已存在学生考试记录,无法修改相关信息");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//更新基础属性
|
|
|
|
GeneralQuestionSetting generalQuestionSetting = generalQuestionSettingQuery.pojo();
|
|
|
|
GeneralQuestionSetting generalQuestionSetting = generalQuestionSettingQuery.pojo();
|
|
|
|
generalQuestionSettingDao.updateTemplateById(generalQuestionSetting);
|
|
|
|
generalQuestionSettingDao.updateTemplateById(generalQuestionSetting);
|
|
|
|
return msg;
|
|
|
|
|
|
|
|
|
|
|
|
//先删除之前的题目,再重新生成
|
|
|
|
|
|
|
|
generalResourcesQuestionSnapshotDao.deleteBySettingIds(generalQuestionSettingId.toString());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!CollectionUtils.isEmpty(generalQuestionSettingQuery.getQuestionSettingOptions())) {
|
|
|
|
|
|
|
|
// 插入快照
|
|
|
|
|
|
|
|
final Long teacherOpenCourseQuestionSettingId = generalQuestionSettingQuery.getGeneralQuestionSettingId();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 传入的开课题目IDS
|
|
|
|
|
|
|
|
String resourcesQuestionIdPlural = generalQuestionSettingQuery.getResourcesQuestionIdPlural();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 题目类型区分
|
|
|
|
|
|
|
|
Collection<QuestionSettingDTO> settingDTOList = generalQuestionSettingQuery.getQuestionSettingOptions();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 用于指定课程中拉取题目。暂时查询中不会用到
|
|
|
|
|
|
|
|
final String sourceCourseInfoIds = generalQuestionSettingQuery.getSourceCourseInfoIds();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 批量添加课程ID
|
|
|
|
|
|
|
|
settingDTOList.forEach(item -> item.setSourceCourseInfoIds(sourceCourseInfoIds));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 如果指定的题目IDs不为空的话,则需要对这些题目进行题目类型分组。
|
|
|
|
|
|
|
|
if (ObjectUtil.isNotEmpty(resourcesQuestionIdPlural)) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 指定课程
|
|
|
|
|
|
|
|
String joinFindCourseInfoIds = null;
|
|
|
|
|
|
|
|
if (StrUtil.isNotBlank(sourceCourseInfoIds)) {
|
|
|
|
|
|
|
|
String sourceCourseInfoIdsNew = ArrayUtil.join(sourceCourseInfoIds.split(","), "|", "_", "_");
|
|
|
|
|
|
|
|
List<String> findCourseInfoIds = courseInfoDao.createLambdaQuery().andLike(CourseInfo::getCourseInfoFullId, sourceCourseInfoIdsNew)
|
|
|
|
|
|
|
|
.andEq(CourseInfo::getCourseInfoStatus, 1)
|
|
|
|
|
|
|
|
.select(String.class, "course_info_id");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
joinFindCourseInfoIds = ArrayUtil.join(findCourseInfoIds, ",");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ResourcesQuestionQuery questionQuery = new ResourcesQuestionQuery();
|
|
|
|
|
|
|
|
questionQuery.setQuestionStatus(1);
|
|
|
|
|
|
|
|
// 这里可能为空,就不做判断了。
|
|
|
|
|
|
|
|
questionQuery.setCourseInfoIds(joinFindCourseInfoIds);
|
|
|
|
|
|
|
|
questionQuery.setResourcesQuestionIds(resourcesQuestionIdPlural);
|
|
|
|
|
|
|
|
List<ResourcesQuestion> questionList = resourcesQuestionService.getValuesByQueryNotWithPermission(questionQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 无差别题目IDS转换成类型区分的集合
|
|
|
|
|
|
|
|
Map<ResourcesQuestionTypeEnum, QuestionSettingDTO> map =
|
|
|
|
|
|
|
|
resourcesQuestionService.buildSettingDtoListByNoDiffQuestionList(questionList);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 设置分值
|
|
|
|
|
|
|
|
generalQuestionSettingQuery.getQuestionSettingOptions().forEach(item -> {
|
|
|
|
|
|
|
|
QuestionSettingDTO settingDTO = map.get(item.getQuestionType());
|
|
|
|
|
|
|
|
if (ObjectUtil.isAllNotEmpty(settingDTO, item.getSingleScore())) {
|
|
|
|
|
|
|
|
settingDTO.setSingleScore(item.getSingleScore());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (ObjectUtil.isNotEmpty(map)) {
|
|
|
|
|
|
|
|
settingDTOList = map.values();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<GeneralResourcesQuestionSnapshot> list =
|
|
|
|
|
|
|
|
generalResourcesQuestionSnapshotService.getQuestionBySettingOptionDTOList(settingDTOList, Collections.emptyMap());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (ObjectUtil.isNotEmpty(list)) {
|
|
|
|
|
|
|
|
list.forEach(item -> {
|
|
|
|
|
|
|
|
item.setGeneralQuestionSettingId(teacherOpenCourseQuestionSettingId);
|
|
|
|
|
|
|
|
item.setBusinessCourseInfoId(generalQuestionSettingQuery.getBusinessId());
|
|
|
|
|
|
|
|
item.setBusinessCourseInfoType(QuestionBusinessTypeEnum.FROM_SYSTEM);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 更新ID
|
|
|
|
|
|
|
|
setNewCourseInfoId(list, Collections.emptyMap());
|
|
|
|
|
|
|
|
generalResourcesQuestionSnapshotDao.insertBatch(list);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
throw new PlatformException("题目配置信息有误,未获取到的题目!");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
throw new PlatformException("题目配置信息有误,未获取到的题目!");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return JsonResult.success();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public String updateGivenByIds(GeneralQuestionSettingQuery generalQuestionSettingQuery) {
|
|
|
|
public String updateGivenByIds(GeneralQuestionSettingQuery generalQuestionSettingQuery) {
|
|
|
@ -181,6 +277,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 通过IDs查询正常状态的题目配置列表
|
|
|
|
* 通过IDs查询正常状态的题目配置列表
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param ids 题目配置IDs
|
|
|
|
* @param ids 题目配置IDs
|
|
|
|
* @return
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -194,6 +291,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 通过IDs查询正常状态的题目配置列表
|
|
|
|
* 通过IDs查询正常状态的题目配置列表
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param businessIds 绑定的课程IDs
|
|
|
|
* @param businessIds 绑定的课程IDs
|
|
|
|
* @return
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -343,72 +441,55 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
if (StringUtils.isBlank(bussinessId)) {
|
|
|
|
if (StringUtils.isBlank(bussinessId)) {
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[0]) + 1) + "列,第" + (i + 1) + "行业务为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[0]) + 1) + "列,第" + (i + 1) + "行业务为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(bussinessType)) {
|
|
|
|
if(StringUtils.isBlank(bussinessType)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[1]) + 1) + "列,第" + (i + 1) + "行业务类型为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[1]) + 1) + "列,第" + (i + 1) + "行业务类型为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingSchoolClassIds)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingSchoolClassIds)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[2]) + 1) + "列,第" + (i + 1) + "行班级ID集合为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[2]) + 1) + "列,第" + (i + 1) + "行班级ID集合为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingDoCount)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingDoCount)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[3]) + 1) + "列,第" + (i + 1) + "行作答次数为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[3]) + 1) + "列,第" + (i + 1) + "行作答次数为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingQuestionNoOrder)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingQuestionNoOrder)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[4]) + 1) + "列,第" + (i + 1) + "行题目乱序为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[4]) + 1) + "列,第" + (i + 1) + "行题目乱序为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingOptionNoOrder)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingOptionNoOrder)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[5]) + 1) + "列,第" + (i + 1) + "行选项乱序为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[5]) + 1) + "列,第" + (i + 1) + "行选项乱序为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingEndShowQa)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingEndShowQa)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[6]) + 1) + "列,第" + (i + 1) + "行答卷后显示答案解析为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[6]) + 1) + "列,第" + (i + 1) + "行答卷后显示答案解析为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingEndShowTrueFalse)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingEndShowTrueFalse)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[7]) + 1) + "列,第" + (i + 1) + "行答卷后显示答案对错为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[7]) + 1) + "列,第" + (i + 1) + "行答卷后显示答案对错为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingName)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingName)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[8]) + 1) + "列,第" + (i + 1) + "行题目-名称为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[8]) + 1) + "列,第" + (i + 1) + "行题目-名称为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionStartTime)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionStartTime)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[9]) + 1) + "列,第" + (i + 1) + "行题目开始时间为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[9]) + 1) + "列,第" + (i + 1) + "行题目开始时间为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionEndTime)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionEndTime)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[10]) + 1) + "列,第" + (i + 1) + "行题目结束时间为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[10]) + 1) + "列,第" + (i + 1) + "行题目结束时间为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingType)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingType)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[11]) + 1) + "列,第" + (i + 1) + "行类型 枚举为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[11]) + 1) + "列,第" + (i + 1) + "行类型 枚举为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingRequire)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingRequire)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[12]) + 1) + "列,第" + (i + 1) + "行题目要求为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[12]) + 1) + "列,第" + (i + 1) + "行题目要求为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingFile)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingFile)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[13]) + 1) + "列,第" + (i + 1) + "行附件,老师上传附件为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[13]) + 1) + "列,第" + (i + 1) + "行附件,老师上传附件为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingPushStatus)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingPushStatus)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[14]) + 1) + "列,第" + (i + 1) + "行发布状态。 1发布,2未发布为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[14]) + 1) + "列,第" + (i + 1) + "行发布状态。 1发布,2未发布为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingStatus)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingStatus)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[15]) + 1) + "列,第" + (i + 1) + "行状态 为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[15]) + 1) + "列,第" + (i + 1) + "行状态 为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else if (StringUtils.isBlank(generalQuestionSettingAddTime)) {
|
|
|
|
if(StringUtils.isBlank(generalQuestionSettingAddTime)){
|
|
|
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[16]) + 1) + "列,第" + (i + 1) + "行创建时间为空"});
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[16]) + 1) + "列,第" + (i + 1) + "行创建时间为空"});
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}else
|
|
|
|
} else {
|
|
|
|
{
|
|
|
|
|
|
|
|
//TODO 保存
|
|
|
|
//TODO 保存
|
|
|
|
GeneralQuestionSetting generalQuestionSetting = new GeneralQuestionSetting();
|
|
|
|
GeneralQuestionSetting generalQuestionSetting = new GeneralQuestionSetting();
|
|
|
|
generalQuestionSetting.setBusinessId(Long.parseLong(bussinessId));
|
|
|
|
generalQuestionSetting.setBusinessId(Long.parseLong(bussinessId));
|
|
|
@ -461,6 +542,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 根据题目配置ID查询当前时间,是否可以参加进行题目测试
|
|
|
|
* 根据题目配置ID查询当前时间,是否可以参加进行题目测试
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param questionSettingId
|
|
|
|
* @param questionSettingId
|
|
|
|
* @return
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -476,6 +558,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 根据题目配置ID查询当前时间,是否可以参加进行题目测试
|
|
|
|
* 根据题目配置ID查询当前时间,是否可以参加进行题目测试
|
|
|
|
* 抛出异常
|
|
|
|
* 抛出异常
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param questionSettingId
|
|
|
|
* @param questionSettingId
|
|
|
|
* @return
|
|
|
|
* @return
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -680,8 +763,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
// 更新ID
|
|
|
|
// 更新ID
|
|
|
|
setNewCourseInfoId(list, courseInfoIdPair);
|
|
|
|
setNewCourseInfoId(list, courseInfoIdPair);
|
|
|
|
generalResourcesQuestionSnapshotDao.insertBatch(list);
|
|
|
|
generalResourcesQuestionSnapshotDao.insertBatch(list);
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
else {
|
|
|
|
|
|
|
|
throw new PlatformException("题目配置信息有误,未获取到的题目!");
|
|
|
|
throw new PlatformException("题目配置信息有误,未获取到的题目!");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -807,6 +889,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 填充选中的题目,和该课程下的总题目
|
|
|
|
* 填充选中的题目,和该课程下的总题目
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param list
|
|
|
|
* @param list
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public void fullQuestionSettingOptions(List<GeneralQuestionSetting> list) {
|
|
|
|
public void fullQuestionSettingOptions(List<GeneralQuestionSetting> list) {
|
|
|
@ -832,6 +915,7 @@ public class GeneralQuestionSettingService extends CoreBaseService<GeneralQuesti
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 设置题目的分数和完成时间
|
|
|
|
* 设置题目的分数和完成时间
|
|
|
|
|
|
|
|
*
|
|
|
|
* @param list
|
|
|
|
* @param list
|
|
|
|
* @param student
|
|
|
|
* @param student
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|