|
@@ -1491,6 +1491,7 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 构建模板中每个问题下选项的 open 映射:title -> (optionValue -> open)
|
|
// 构建模板中每个问题下选项的 open 映射:title -> (optionValue -> open)
|
|
|
|
|
+ // 合并函数 (existing, replacement) -> replacement 保留最新的值
|
|
|
Map<String, Map<Integer, Boolean>> openConfigMap = template.getAnswers().stream()
|
|
Map<String, Map<Integer, Boolean>> openConfigMap = template.getAnswers().stream()
|
|
|
.collect(Collectors.toMap(
|
|
.collect(Collectors.toMap(
|
|
|
AnswerVO::getTitle,
|
|
AnswerVO::getTitle,
|
|
@@ -1498,8 +1499,9 @@ public class FsUserInformationCollectionServiceImpl extends ServiceImpl<FsUserIn
|
|
|
.collect(Collectors.toMap(
|
|
.collect(Collectors.toMap(
|
|
|
AnswerVO.Options::getValue,
|
|
AnswerVO.Options::getValue,
|
|
|
AnswerVO.Options::isOpen,
|
|
AnswerVO.Options::isOpen,
|
|
|
- (existing, replacement) -> existing // 冲突时保留已存在的值
|
|
|
|
|
- ))
|
|
|
|
|
|
|
+ (existing, replacement) -> replacement // 保留最新
|
|
|
|
|
+ )),
|
|
|
|
|
+ (existing, replacement) -> replacement // 外层也保留最新(可选,防止title重复)
|
|
|
));
|
|
));
|
|
|
|
|
|
|
|
// 遍历提交的答案进行校验
|
|
// 遍历提交的答案进行校验
|