From a8cd9183c81260974bc8936b7ffa42e46c8a3b55 Mon Sep 17 00:00:00 2001 From: shihongwei <178899525@qq.com> Date: Wed, 27 May 2026 15:34:04 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=94=99=E9=A2=98=E5=9B=9E=E9=A1=BE?= =?UTF-8?q?=E7=AD=94=E9=94=99=E6=AC=A1=E6=95=B0=E6=98=BE=E7=A4=BA=E4=B8=8D?= =?UTF-8?q?=E6=AD=A3=E7=A1=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HotTrainingAnswerRecordServiceImpl.java | 17 +++++++++++++++++ .../HotTrainingAnswerRecordMapper.xml | 5 ++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/hotwj/platform/securityManagement/trainingAnswer/service/impl/HotTrainingAnswerRecordServiceImpl.java b/src/main/java/com/hotwj/platform/securityManagement/trainingAnswer/service/impl/HotTrainingAnswerRecordServiceImpl.java index 1cd1609..58c09da 100644 --- a/src/main/java/com/hotwj/platform/securityManagement/trainingAnswer/service/impl/HotTrainingAnswerRecordServiceImpl.java +++ b/src/main/java/com/hotwj/platform/securityManagement/trainingAnswer/service/impl/HotTrainingAnswerRecordServiceImpl.java @@ -293,6 +293,9 @@ public class HotTrainingAnswerRecordServiceImpl implements IHotTrainingAnswerRec // 更新 HotTrainingAnswerRecord existing = existingMap.get(entity.getQuestionSource()); entity.setId(existing.getId()); + + mergeErrorData(entity, existing); + toUpdate.add(entity); } else { // 插入 @@ -506,4 +509,18 @@ public class HotTrainingAnswerRecordServiceImpl implements IHotTrainingAnswerRec } throw new ServiceException("无法获取提交人姓名,签名校验失败"); } + + /** + * 累加错误次数并拼接最新的错误答案 + * 拼接后的总长度控制在200字符内,保留最新产生的数据(先不要) + * + * @param entity 当前传入的答题实体 + * @param existing 数据库中已存在的答题实体 + */ + private void mergeErrorData(HotTrainingAnswerRecord entity, HotTrainingAnswerRecord existing) { + // 1. 累加错误次数,前端提交一次答题,只会加一次 + int currentErrorCount = entity.getErrorCount() != null ? 1 : 0; + int existingErrorCount = existing.getErrorCount() != null ? existing.getErrorCount() : 0; + entity.setErrorCount(existingErrorCount + currentErrorCount); + } } diff --git a/src/main/resources/mapper/courseAnswer/HotTrainingAnswerRecordMapper.xml b/src/main/resources/mapper/courseAnswer/HotTrainingAnswerRecordMapper.xml index 518bba9..adec4da 100644 --- a/src/main/resources/mapper/courseAnswer/HotTrainingAnswerRecordMapper.xml +++ b/src/main/resources/mapper/courseAnswer/HotTrainingAnswerRecordMapper.xml @@ -140,7 +140,7 @@