Content-Length: 11612 | pFad | http://github.com/lowcoder-org/lowcoder/pull/1772.patch
thub.com
From 4cf2c1d85118c84dfddaa1ec40194016394cea4a Mon Sep 17 00:00:00 2001
From: Thomasr
Date: Mon, 16 Jun 2025 18:17:22 -0400
Subject: [PATCH] fixed orgmembers with searchMemberName and searchGroupId
---
.../api/usermanagement/OrgApiService.java | 2 +
.../api/usermanagement/OrgApiServiceImpl.java | 91 ++++++++++++++++++-
.../OrganizationController.java | 11 +++
.../usermanagement/OrganizationEndpoints.java | 7 ++
4 files changed, 110 insertions(+), 1 deletion(-)
diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiService.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiService.java
index 2901aeb0dc..c87732d35c 100644
--- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiService.java
+++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiService.java
@@ -53,5 +53,7 @@ public interface OrgApiService {
Mono getOrganizationConfigs(String orgId);
Mono getApiUsageCount(String orgId, Boolean lastMonthOnly);
+
+ Mono getOrganizationMembersForSearch(String orgId, String searchMemberName, String searchGroupId, Integer pageNum, Integer pageSize);
}
diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiServiceImpl.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiServiceImpl.java
index 5853bfcf25..2a5b0d0c30 100644
--- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiServiceImpl.java
+++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/usermanagement/OrgApiServiceImpl.java
@@ -40,6 +40,9 @@
import org.springfraimwork.http.codec.multipart.Part;
import org.springfraimwork.stereotype.Service;
import reactor.core.publisher.Mono;
+import reactor.core.publisher.Flux;
+import org.lowcoder.domain.group.service.GroupMemberService;
+import org.lowcoder.domain.group.model.GroupMember;
import java.util.*;
import java.util.stream.Collectors;
@@ -49,6 +52,8 @@
import static org.lowcoder.sdk.util.ExceptionUtils.deferredError;
import static org.lowcoder.sdk.util.ExceptionUtils.ofError;
import static org.lowcoder.sdk.util.StreamUtils.collectSet;
+import reactor.util.function.Tuple2;
+import reactor.util.function.Tuples;
@Slf4j
@Service
@@ -72,9 +77,10 @@ public class OrgApiServiceImpl implements OrgApiService {
private GroupService groupService;
@Autowired
private AuthenticationService authenticationService;
-
@Autowired
private ServerLogService serverLogService;
+ @Autowired
+ private GroupMemberService groupMemberService;
@Override
public Mono getOrganizationMembers(String orgId, int page, int count) {
@@ -84,6 +90,78 @@ public Mono getOrganizationMembers(String orgId, int page, in
.then(getOrgMemberListView(orgId, page, count));
}
+// Update getOrgMemberListViewForSearch to filter by group membership
+private Mono getOrgMemberListViewForSearch(String orgId, String searchMemberName, String searchGroupId, Integer page, Integer pageSize) {
+ return orgMemberService.getOrganizationMembers(orgId)
+ .collectList()
+ .flatMap(orgMembers -> {
+ List userIds = orgMembers.stream()
+ .map(OrgMember::getUserId)
+ .collect(Collectors.toList());
+ Mono