Commit f8d3c7be by zhangxingmin

push

parent 0d8c41f3
...@@ -75,18 +75,26 @@ public class ApiAttributeSettingServiceImpl implements ApiAttributeSettingServic ...@@ -75,18 +75,26 @@ public class ApiAttributeSettingServiceImpl implements ApiAttributeSettingServic
for (int i = 0; i < attributeSettingList.size(); i++) { for (int i = 0; i < attributeSettingList.size(); i++) {
AttributeSetting dto = attributeSettingList.get(i); AttributeSetting dto = attributeSettingList.get(i);
List<String> fieldValueBizIds = new ArrayList<>();
// 只使用fieldValueBizId字段来收集业务ID
if (StringUtils.isNotBlank(dto.getFieldValueBizId())) { if (StringUtils.isNotBlank(dto.getFieldValueBizId())) {
if (dto.getFieldValueBizId().contains(";")) { if (dto.getFieldValueBizId().contains(";")) {
// 多选情况,多个字段值业务ID用分号分隔 // 多选情况,多个字段值业务ID用分号分隔
List<String> fieldValueBizIdList = Arrays.asList(dto.getFieldValueBizId().split(";")); fieldValueBizIds.addAll(Arrays.asList(dto.getFieldValueBizId().split(";")));
allFieldValueBizIds.addAll(fieldValueBizIdList);
settingDtoToValueBizIdsMap.put(String.valueOf(i), fieldValueBizIdList);
} else { } else {
// 单选情况 // 单选情况
allFieldValueBizIds.add(dto.getFieldValueBizId()); fieldValueBizIds.add(dto.getFieldValueBizId());
settingDtoToValueBizIdsMap.put(String.valueOf(i), Collections.singletonList(dto.getFieldValueBizId()));
} }
} }
// 注意:这里不再尝试从value字段解析业务ID
// 因为从你的JSON数据看,fieldValueBizId为空但value包含业务ID的情况
// 应该被视为数据问题,需要在保存时解决
if (!fieldValueBizIds.isEmpty()) {
allFieldValueBizIds.addAll(fieldValueBizIds);
settingDtoToValueBizIdsMap.put(String.valueOf(i), fieldValueBizIds);
}
} }
//批量查询字段值详情 //批量查询字段值详情
...@@ -141,7 +149,9 @@ public class ApiAttributeSettingServiceImpl implements ApiAttributeSettingServic ...@@ -141,7 +149,9 @@ public class ApiAttributeSettingServiceImpl implements ApiAttributeSettingServic
List<String> valueNames = valueBizIds.stream() List<String> valueNames = valueBizIds.stream()
.map(fieldValueBizId -> { .map(fieldValueBizId -> {
String name = finalFieldValueBizIdToNameMap.get(fieldValueBizId); String name = finalFieldValueBizIdToNameMap.get(fieldValueBizId);
return StringUtils.defaultIfBlank(name, fieldValueBizId); // 如果查询不到名称,则使用原始值(value字段)
// 注意:这里假设value字段存储的是实际的值,而不是业务ID
return StringUtils.isNotBlank(name) ? name : dto.getValue();
}) })
.collect(Collectors.toList()); .collect(Collectors.toList());
settingDto.setValueNames(StringUtils.join(valueNames, ";")); settingDto.setValueNames(StringUtils.join(valueNames, ";"));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment