From f184cd4283557170a553a6d02c03c61dde9de14d Mon Sep 17 00:00:00 2001 From: Thomasr Date: Tue, 11 Mar 2025 03:54:06 -0400 Subject: [PATCH] Added get api for libraryquery object for import/export feature in EE --- .../org/lowcoder/api/query/LibraryQueryApiService.java | 2 ++ .../lowcoder/api/query/LibraryQueryApiServiceImpl.java | 7 +++++++ .../org/lowcoder/api/query/LibraryQueryController.java | 6 ++++++ .../org/lowcoder/api/query/LibraryQueryEndpoints.java | 9 +++++++++ 4 files changed, 24 insertions(+) diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiService.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiService.java index 19f5a50fb..5cdd4717d 100644 --- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiService.java +++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiService.java @@ -11,6 +11,8 @@ public interface LibraryQueryApiService { Mono> listLibraryQueries(String name); + Mono get(String libraryQueryId); + Mono create(LibraryQuery libraryQuery); Mono update(String libraryQueryId, UpsertLibraryQueryRequest upsertLibraryQueryRequest); diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiServiceImpl.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiServiceImpl.java index 69c5c3f8f..86846e04d 100644 --- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiServiceImpl.java +++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryApiServiceImpl.java @@ -113,6 +113,13 @@ private Flux getByOrgIdWithDatasourcePermissions(String orgId) { set -> set.contains(libraryQuery.getQuery().getDatasourceId()))); } + @Override + public Mono get(String libraryQueryId) { + return libraryQueryService.getById(libraryQueryId) + .zipWhen(lb -> userService.findById(lb.getCreatedBy())) + .map(tuple -> LibraryQueryView.from(tuple.getT1(), tuple.getT2())); + } + @Override public Mono create(LibraryQuery libraryQuery) { return checkLibraryQueryManagementPermission(libraryQuery) diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryController.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryController.java index d1e3bc2f5..62e869a18 100644 --- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryController.java +++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryController.java @@ -53,6 +53,12 @@ public Mono> list(@RequestParam(required = false, defaultVal return fluxToPageResponseView(pageNum, pageSize, flux); } + @Override + public Mono> get(@PathVariable String libraryQueryId) { + return libraryQueryApiService.get(libraryQueryId) + .map(ResponseView::success); + } + @Override public Mono> create(@RequestBody LibraryQuery libraryQuery) { return libraryQueryApiService.create(libraryQuery) diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryEndpoints.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryEndpoints.java index bf4b8f161..14c54f014 100644 --- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryEndpoints.java +++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/query/LibraryQueryEndpoints.java @@ -43,6 +43,15 @@ public Mono> list(@RequestParam(required = false, defaultVal @RequestParam(required = false, defaultValue = "1") int pageNum, @RequestParam(required = false, defaultValue = "100") int pageSize); + @Operation( + tags = TAG_LIBRARY_QUERY_MANAGEMENT, + operationId = "getLibraryQuery", + summary = "Get a Library By Id", + description = "Get a Library Query by Id." + ) + @GetMapping("/{libraryQueryId}") + public Mono> get(@PathVariable String libraryQueryId); + @Operation( tags = TAG_LIBRARY_QUERY_MANAGEMENT, operationId = "createLibraryQuery",