fix: 【数据源】Excel数据源在替换数据时显示不正确

This commit is contained in:
taojinlong
2024-11-28 15:22:00 +08:00
parent 5205972eb7
commit 8bf0778b3e
2 changed files with 15 additions and 0 deletions

View File

@@ -843,6 +843,10 @@ public class DatasourceServer implements DatasourceApi {
if (CollectionUtils.isEmpty(newTableFields) || CollectionUtils.isEmpty(oldTableFields)) {
return false;
}
boolean isHistory = oldTableFields.stream().filter(tableField -> !tableField.isChecked()).collect(Collectors.toList()).size() == oldTableFields.size();
if (isHistory) {
oldTableFields.forEach(tableField -> tableField.setChecked(true));
}
newTableFields.forEach(tableField -> tableField.setChecked(false));
for (TableField oldField : oldTableFields) {
if (!oldField.isChecked()) {
@@ -867,6 +871,10 @@ public class DatasourceServer implements DatasourceApi {
private void mergeFields(List<TableField> oldFields, List<TableField> newFields) {
newFields.forEach(tableField -> tableField.setChecked(false));
boolean isHistory = oldFields.stream().filter(tableField -> !tableField.isChecked()).collect(Collectors.toList()).size() == oldFields.size();
if (isHistory) {
oldFields.forEach(tableField -> tableField.setChecked(true));
}
for (TableField newField : newFields) {
for (TableField oldField : oldFields) {
if (oldField.getName().equals(newField.getName())) {