题目做题最大次数验证

beetlsql3-dev
Mlxa0324 2 years ago
parent b6900aae0b
commit 8c67ecd364

@ -175,4 +175,12 @@ public interface TeacherOpenCourseQuestionLogDao extends BaseMapper<TeacherOpenC
* @return
*/
PageQuery<TeacherOpenCourseHomeWorkLogExportVO> getHomeWorkLogExportPageList(PageQuery pageQuery);
/**
*
*
* @param questionSettingId
* @return
*/
boolean logicDeleteQuestionLogBySummaryQuestionIds(Long questionSettingId);
}

@ -22,6 +22,7 @@ import com.ibeetl.jlw.dao.StudentDao;
import com.ibeetl.jlw.entity.*;
import com.ibeetl.jlw.entity.dto.QuestionLogAddDTO;
import com.ibeetl.jlw.entity.vo.QuestionLogAnswerLockVO;
import com.ibeetl.jlw.enums.GlobalStatusEnum;
import com.ibeetl.jlw.enums.QuestionBusinessTypeEnum;
import com.ibeetl.jlw.enums.QuestionLogAddTypeEnum;
import com.ibeetl.jlw.enums.ResourcesQuestionSnapshotFromTypeEnum;
@ -923,12 +924,20 @@ public class GeneralQuestionLogService extends CoreBaseService<GeneralQuestionLo
summaryQuery.setQuestionLogSummaryFromType(fromType);
QuestionLogSummary logSummary = questionLogSummaryService.getInfo(summaryQuery);
//// 这里是确保只有一条记录存在,同一个学生同一套试题
if (logSummary != null) {
questionLogSummary.setQuestionLogSummaryId(logSummary.getQuestionLogSummaryId());
//questionLogSummary.setQuestionLogSummaryId(logSummary.getQuestionLogSummaryId());
// 这个学生之前的其他试卷都设置成删除状态。
QuestionLogSummary updatePO = new QuestionLogSummary();
updatePO.setQuestionLogSummaryId(logSummary.getQuestionLogSummaryId());
updatePO.setQuestionLogSummaryStatus(GlobalStatusEnum.DELETED.getCode());
questionLogSummaryService.updateTemplate(updatePO);
}
// // 更新或插入统计数据
// questionLogSummaryService.upsertByTemplate(questionLogSummary);
// 更新或插入统计数据
questionLogSummaryService.upsertByTemplate(questionLogSummary);
// 插入统计数据
questionLogSummaryService.insert(questionLogSummary);
}
/**

@ -25,6 +25,7 @@ import com.ibeetl.jlw.entity.dto.TeacherOpenCourseHomeWorkLogDTO;
import com.ibeetl.jlw.entity.vo.FileQuestionLogListVO;
import com.ibeetl.jlw.entity.vo.TeacherOpenCourseHomeWorkLogExportVO;
import com.ibeetl.jlw.entity.vo.TeacherOpenCourseQuestionLogAnswerLockVO;
import com.ibeetl.jlw.enums.GlobalStatusEnum;
import com.ibeetl.jlw.enums.QuestionLogAddTypeEnum;
import com.ibeetl.jlw.enums.ResourcesQuestionSnapshotFromTypeEnum;
import com.ibeetl.jlw.web.query.QuestionLogSummaryQuery;
@ -778,13 +779,22 @@ public class TeacherOpenCourseQuestionLogService extends CoreBaseService<Teacher
summaryQuery.setPersonId(student.getStudentId());
summaryQuery.setQuestionSettingId(questionSettingId);
QuestionLogSummary logSummary = questionLogSummaryService.getInfo(summaryQuery);
// 删除之前的题目统计
if (logSummary != null) {
questionLogSummary.setQuestionLogSummaryId(logSummary.getQuestionLogSummaryId());
// questionLogSummary.setQuestionLogSummaryId(logSummary.getQuestionLogSummaryId());
// 这个学生之前的其他试卷都设置成删除状态。
QuestionLogSummary updatePO = new QuestionLogSummary();
updatePO.setQuestionLogSummaryId(logSummary.getQuestionLogSummaryId());
updatePO.setQuestionLogSummaryStatus(GlobalStatusEnum.DELETED.getCode());
questionLogSummaryService.updateTemplate(updatePO);
}
// 更新或插入统计数据
questionLogSummaryService.upsertByTemplate(questionLogSummary);
// questionLogSummaryService.upsertByTemplate(questionLogSummary);
// 插入统计数据
questionLogSummaryService.insert(questionLogSummary);
}
/**

@ -1035,4 +1035,19 @@ getHomeWorkLogExportList
@if(isNotEmpty(teacherOpenCourseQuestionSettingId)) {
and t.teacher_open_course_question_setting_id = #teacherOpenCourseQuestionSettingId#
@}
logicDeleteQuestionLogBySummaryQuestionIds
===
* 删除题目的统计数据,附带删除题目做题日志数据
* 有可能只删除题目统计表,这时候需要删除做题日志相对应的数据
DELETE
FROM
teacher_open_course_question_log t
WHERE
@// 有可能只删除题目统计表,这时候需要删除做题日志相对应的数据
not find_in_set(
t.teacher_open_course_question_log_id,
( SELECT question_log_ids FROM question_log_summary a WHERE a.question_setting_id = t.teacher_open_course_question_setting_id ))
AND t.teacher_open_course_question_setting_id = #teacherOpenCourseQuestionSettingId#
Loading…
Cancel
Save