From 92fa58e60a87465e922e3725a88cddd98afb675e Mon Sep 17 00:00:00 2001 From: Thomasr Date: Mon, 24 Mar 2025 15:51:42 -0400 Subject: [PATCH] Fix folder move from root to subfolder --- .../src/main/java/org/lowcoder/api/home/FolderController.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/home/FolderController.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/home/FolderController.java index 801d0c854..e15cac105 100644 --- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/home/FolderController.java +++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/home/FolderController.java @@ -8,6 +8,7 @@ import org.lowcoder.api.util.GidService; import org.lowcoder.domain.application.model.ApplicationType; import org.lowcoder.domain.folder.model.Folder; +import org.lowcoder.domain.folder.model.FolderElement; import org.lowcoder.domain.folder.service.FolderElementRelationService; import org.lowcoder.domain.folder.service.FolderService; import org.lowcoder.domain.permission.model.ResourceRole; @@ -92,7 +93,7 @@ public Mono> getElements(@RequestParam(value = "id", require @Override public Mono> move(@PathVariable("id") String applicationLikeId, @RequestParam(value = "targetFolderId", required = false) String targetFolderId) { - return folderElementRelationService.getByElementIds(List.of(applicationLikeId)).next().flatMap(folderElement -> + return folderElementRelationService.getByElementIds(List.of(applicationLikeId)).next().defaultIfEmpty(new FolderElement(null, null)).flatMap(folderElement -> gidService.convertFolderIdToObjectId(targetFolderId).flatMap(objectId -> folderApiService.move(applicationLikeId, objectId.orElse(null)) .then(businessEventPublisher.publishApplicationCommonEvent(applicationLikeId, folderElement.folderId(), objectId.orElse(null), APPLICATION_MOVE))