Skip to content

Commit 4d56054

Browse files
committed
Fixed an issue that does not display 'Add member' button and 'Remove from Group' in group members table.
1 parent ef9d9bb commit 4d56054

File tree

4 files changed

+21
-28
lines changed

4 files changed

+21
-28
lines changed

client/packages/lowcoder/src/pages/setting/permission/groupUsersPermission.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { User } from "constants/userConstants";
33
import { AddIcon, ArrowIcon, CustomSelect, PackUpIcon, SuperUserIcon } from "lowcoder-design";
44
import { trans } from "i18n";
55
import ProfileImage from "pages/common/profileImage";
6-
import React, { useEffect, useMemo } from "react";
6+
import React, { useMemo } from "react";
77
import { useDispatch } from "react-redux";
88
import {
99
deleteGroupUserAction,
@@ -41,7 +41,6 @@ type GroupPermissionProp = {
4141
group: OrgGroup;
4242
orgId: string;
4343
groupUsers: GroupUser[];
44-
groupUsersFetching: boolean;
4544
currentUserGroupRole: string;
4645
currentUser: User;
4746
setModify?: any;
@@ -50,7 +49,7 @@ type GroupPermissionProp = {
5049

5150
function GroupUsersPermission(props: GroupPermissionProp) {
5251
const { Column } = TableStyled;
53-
const { group, orgId, groupUsersFetching, groupUsers, currentUserGroupRole, currentUser , setModify, modify} = props;
52+
const { group, orgId, groupUsers, currentUserGroupRole, currentUser , setModify, modify} = props;
5453
const adminCount = groupUsers.filter((user) => isGroupAdmin(user.role)).length;
5554
const sortedGroupUsers = useMemo(() => {
5655
return [...groupUsers].sort((a, b) => {

client/packages/lowcoder/src/pages/setting/permission/orgUsersPermission.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,10 @@ import {
1414
import { trans, transToNode } from "i18n";
1515
import InviteDialog from "pages/common/inviteDialog";
1616
import ProfileImage from "pages/common/profileImage";
17-
import React, { useEffect, useMemo } from "react";
17+
import React, { useMemo } from "react";
1818
import { useDispatch, useSelector } from "react-redux";
1919
import {
2020
deleteOrgUserAction,
21-
fetchOrgUsersAction,
2221
quitOrgAction,
2322
updateUserOrgRoleAction,
2423
} from "redux/reduxActions/orgActions";
@@ -56,15 +55,14 @@ const StyledMembersIcon = styled(MembersIcon)`
5655
type UsersPermissionProp = {
5756
orgId: string;
5857
orgUsers: OrgUser[];
59-
orgUsersFetching: boolean;
6058
currentUser: User;
6159
setModify?: any;
6260
modify?: boolean;
6361
};
6462

6563
function OrgUsersPermission(props: UsersPermissionProp) {
6664
const { Column } = TableStyled;
67-
const { orgId, orgUsers, orgUsersFetching, currentUser , setModify, modify} = props;
65+
const { orgId, orgUsers, currentUser , setModify, modify} = props;
6866
const adminCount = orgUsers.filter(
6967
(user) => user.role === ADMIN_ROLE || user.role === SUPER_ADMIN_ROLE,
7068
).length;

client/packages/lowcoder/src/pages/setting/permission/permissionDetail.tsx

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import GroupPermission from "./groupUsersPermission";
77
import UsersPermission from "./orgUsersPermission";
88
import { getOrgGroups } from "redux/selectors/orgSelectors";
99
import { useParams } from "react-router-dom";
10-
import { AppState } from "redux/reducers";
1110
import {fetchGroupUsrPagination, fetchOrgUsrPagination} from "@lowcoder-ee/util/pagination/axios";
1211
import PaginationComp from "@lowcoder-ee/util/pagination/Pagination";
1312

@@ -25,18 +24,15 @@ const All_Users = "users";
2524

2625
export default function PermissionSetting() { const user = useSelector(getUser);
2726

28-
const [elements, setElements] = useState<any>({ elements: [], total: 0 });
27+
const [elements, setElements] = useState<any>({ elements: [], total: 0, role: "" });
2928
const [orgMemberElements, setOrgMemberElements] = useState<any>({ elements: [], total: 0 })
3029
const [currentPage, setCurrentPage] = useState(1);
3130
const [pageSize, setPageSize] = useState(10);
3231
const [modify, setModify] = useState(false);
3332

3433
const orgId = user.currentOrgId;
3534
const orgGroups = useSelector(getOrgGroups);
36-
const groupUsersFetching = useSelector((state: AppState) => state.ui.org.groupUsersFetching);
37-
const currentUserGroupRole = useSelector((state: AppState) => state.ui.org.currentUserGroupRole);
3835
const currentUser = useSelector(getUser);
39-
const orgUsersFetching = useSelector((state: AppState) => state.ui.org.orgUsersFetching);
4036

4137
const groupIdMap = new Map(orgGroups.map((group) => [group.groupId, group]));
4238
const dispatch = useDispatch();
@@ -47,7 +43,6 @@ export default function PermissionSetting() { const user = useSelector(getUser)
4743
}
4844
dispatch(fetchGroupsAction(orgId));
4945
}, [orgId]);
50-
5146
useEffect( () => {
5247
if (selectKey !== "users" && !!groupIdMap.get(selectKey))
5348
fetchGroupUsrPagination(
@@ -58,27 +53,29 @@ export default function PermissionSetting() { const user = useSelector(getUser)
5853
}
5954
).then(result => {
6055
if (result.success){
61-
setElements({elements: result.data || [], total: result.total || 1})
56+
setElements({elements: result.data || [], total: result.total || 1, role: result.visitorRole || ""})
6257
}
6358
else
6459
console.error("ERROR: fetchFolderElements", result.error)
6560
}
6661
)
6762
else
63+
{
6864
fetchOrgUsrPagination(
69-
{
70-
orgId: orgId,
71-
pageNum: currentPage,
72-
pageSize: pageSize,
73-
}
65+
{
66+
orgId: orgId,
67+
pageNum: currentPage,
68+
pageSize: pageSize,
69+
}
7470
).then(result => {
75-
if (result.success){
76-
setOrgMemberElements({elements: result.data || [], total: result.total || 1})
77-
}
78-
else
79-
console.error("ERROR: fetchFolderElements", result.error)
71+
if (result.success){
72+
setOrgMemberElements({elements: result.data || [], total: result.total || 1})
8073
}
74+
else
75+
console.error("ERROR: fetchFolderElements", result.error)
76+
}
8177
)
78+
}
8279
},
8380
[currentPage, pageSize, modify, groupIdMap.get(selectKey)]
8481
)
@@ -93,7 +90,6 @@ export default function PermissionSetting() { const user = useSelector(getUser)
9390
<>
9491
<UsersPermission
9592
orgId={orgId}
96-
orgUsersFetching={orgUsersFetching}
9793
// orgUsers={!orgMemberElements.elements.members ? [] : orgMemberElements.elements.members}
9894
orgUsers={orgMemberElements.elements}
9995
currentUser={currentUser}
@@ -109,8 +105,7 @@ export default function PermissionSetting() { const user = useSelector(getUser)
109105
group={groupIdMap.get(selectKey)!}
110106
orgId={orgId}
111107
groupUsers={elements.elements}
112-
groupUsersFetching={groupUsersFetching}
113-
currentUserGroupRole={currentUserGroupRole}
108+
currentUserGroupRole={elements.role}
114109
currentUser={currentUser}
115110
setModify={setModify}
116111
modify={modify}

client/packages/lowcoder/src/util/pagination/axios.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,8 @@ export const fetchGroupUsrPagination = async (request: fetchGroupUserRequestType
8787
return {
8888
success: true,
8989
data: response.data.data.members,
90-
total: response.data.data.total
90+
total: response.data.data.total,
91+
visitorRole: response.data.data.visitorRole
9192
}
9293
} catch (error: any) {
9394
console.error('Failed to fetch data:', error);

0 commit comments

Comments
 (0)