Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit346760c

Browse files
committed
Optimized called APIs and in User groups.
1 parent56ff238 commit346760c

File tree

3 files changed

+63
-44
lines changed

3 files changed

+63
-44
lines changed
Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
1-
import{Route,Switch}from"react-router";
1+
importReact,{useState}from"react";
2+
import{Route,Switch}from"react-router-dom";
23
importPermissionListfrom"./permissionList";
34
importPermissionDetailfrom"./permissionDetail";
45
import{PERMISSION_SETTING,PERMISSION_SETTING_DETAIL,SETTING_URL}from"constants/routesURL";
56

6-
exportdefault()=>{
7+
exportdefaultfunctionPermissionRoutes(){
8+
const[currentPage,setCurrentPage]=useState(1);
9+
const[pageSize,setPageSize]=useState(10);
710
return(
811
<Switch>
9-
<Routepath={[SETTING_URL,PERMISSION_SETTING]}component={PermissionList}exact/>
10-
<Routepath={PERMISSION_SETTING_DETAIL}component={PermissionDetail}/>
12+
<Routepath={[SETTING_URL,PERMISSION_SETTING]}exactrender={(props)=><PermissionListcurrentPage={currentPage}pageSize={pageSize}setCurrentPage={setCurrentPage}setPageSize={setPageSize}/>}/>
13+
<Routepath={PERMISSION_SETTING_DETAIL}render={(props)=><PermissionDetailcurrentPageProp={currentPage}pageSizeProp={pageSize}/>}/>
1114
</Switch>
1215
);
13-
};
16+
}

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

Lines changed: 32 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
importReact,{useEffect,useState}from"react";
2-
import{useDispatch,useSelector}from"react-redux";
3-
import{fetchGroupsAction}from"redux/reduxActions/orgActions";
2+
import{useSelector}from"react-redux";
43
import{getUser}from"redux/selectors/usersSelectors";
54
importstyledfrom"styled-components";
65
importGroupPermissionfrom"./groupUsersPermission";
76
importUsersPermissionfrom"./orgUsersPermission";
8-
import{getOrgGroups}from"redux/selectors/orgSelectors";
97
import{useParams}from"react-router-dom";
10-
import{fetchGroupUsrPagination,fetchOrgUsrPagination}from"@lowcoder-ee/util/pagination/axios";
8+
import{fetchGroupUsrPagination,fetchOrgGroups,fetchOrgUsrPagination}from"@lowcoder-ee/util/pagination/axios";
119
importPaginationCompfrom"@lowcoder-ee/util/pagination/Pagination";
10+
import{OrgGroup}from"@lowcoder-ee/constants/orgConstants";
1211

1312
constPermissionContent=styled.div`
1413
display: flex;
@@ -20,34 +19,42 @@ const PermissionContent = styled.div`
2019
width: 100%;
2120
`;
2221

23-
constAll_Users="users";
22+
exportdefaultfunctionPermissionSetting(props:{currentPageProp:number,pageSizeProp:number}){
2423

25-
exportdefaultfunctionPermissionSetting(){constuser=useSelector(getUser);
26-
27-
const[elements,setElements]=useState<any>({elements:[],total:0,role:""});
28-
const[orgMemberElements,setOrgMemberElements]=useState<any>({elements:[],total:0})
24+
const{currentPageProp, pageSizeProp}=props;
25+
constuser=useSelector(getUser);
26+
const[elements,setElements]=useState<any>({elements:[],total:1,role:""});
27+
const[group,setGrouop]=useState<OrgGroup>();
28+
const[orgMemberElements,setOrgMemberElements]=useState<any>({elements:[],total:1})
2929
const[currentPage,setCurrentPage]=useState(1);
3030
const[pageSize,setPageSize]=useState(10);
3131
const[modify,setModify]=useState(false);
3232

3333
constorgId=user.currentOrgId;
34-
constorgGroups=useSelector(getOrgGroups);
3534
constcurrentUser=useSelector(getUser);
36-
37-
constgroupIdMap=newMap(orgGroups.map((group)=>[group.groupId,group]));
38-
constdispatch=useDispatch();
3935
constselectKey=useParams<{groupId:string}>().groupId;
40-
useEffect(()=>{
41-
if(!orgId){
42-
return;
43-
}
44-
dispatch(fetchGroupsAction(orgId));
45-
},[orgId]);
36+
37+
useEffect(()=>{
38+
fetchOrgGroups(
39+
{
40+
pageNum:currentPageProp,
41+
pageSize:pageSizeProp,
42+
}
43+
).then(result=>{
44+
if(result.success&&!!result.data){
45+
setGrouop(result.data.find(group=>group.groupId===selectKey))
46+
}
47+
else
48+
console.error("ERROR: fetchFolderElements",result.error)
49+
})
50+
},[currentPageProp,pageSizeProp]
51+
)
52+
4653
useEffect(()=>{
47-
if(selectKey!=="users"&&!!groupIdMap.get(selectKey))
54+
if(selectKey!=="users"&&selectKey)
4855
fetchGroupUsrPagination(
4956
{
50-
groupId:groupIdMap.get(selectKey)!.groupId,
57+
groupId:selectKey,
5158
pageNum:currentPage,
5259
pageSize:pageSize,
5360
}
@@ -77,7 +84,7 @@ export default function PermissionSetting() { const user = useSelector(getUser)
7784
)
7885
}
7986
},
80-
[currentPage,pageSize,modify,groupIdMap.get(selectKey)]
87+
[currentPage,pageSize,modify,selectKey]
8188
)
8289

8390
if(!orgId){
@@ -86,7 +93,7 @@ export default function PermissionSetting() { const user = useSelector(getUser)
8693

8794
return(
8895
<PermissionContentkey={selectKey}>
89-
{selectKey===All_Users ?(
96+
{selectKey==="users" ?(
9097
<>
9198
<UsersPermission
9299
orgId={orgId}
@@ -99,10 +106,10 @@ export default function PermissionSetting() { const user = useSelector(getUser)
99106
<PaginationCompsetCurrentPage={setCurrentPage}setPageSize={setPageSize}currentPage={currentPage}pageSize={pageSize}total={orgMemberElements.total}/>
100107
</>
101108
) :(
102-
groupIdMap.has(selectKey)&&(
109+
group&&(
103110
<>
104111
<GroupPermission
105-
group={groupIdMap.get(selectKey)!}
112+
group={group}
106113
orgId={orgId}
107114
groupUsers={elements.elements}
108115
currentUserGroupRole={elements.role}

‎client/packages/lowcoder/src/pages/setting/permission/permissionList.tsx

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,21 @@ type DataItemInfo = {
5252
group?:OrgGroup;
5353
};
5454

55+
typePermissionSettingProps={
56+
currentPage:number;
57+
setCurrentPage:(value:number)=>void;
58+
pageSize:number;
59+
setPageSize:(value:number)=>void;
60+
};
61+
5562
interfaceElementsState{
5663
elements:OrgGroup[];
5764
total:number;
5865
}
5966

60-
exportdefaultfunctionPermissionSetting(){
67+
exportdefaultfunctionPermissionSetting(props:PermissionSettingProps){
68+
69+
const{currentPage, setCurrentPage, pageSize, setPageSize}=props;
6170
letdataSource:DataItemInfo[]=[];
6271
constuser=useSelector(getUser);
6372
constorgId=user.currentOrgId;
@@ -66,27 +75,27 @@ export default function PermissionSetting() {
6675
const{ nameSuffixFunc, menuItemsFunc, menuExtraView}=usePermissionMenuItems(orgId);
6776
const[groupCreating,setGroupCreating]=useState(false);
6877
const[elements,setElements]=useState<ElementsState>({elements:[],total:0});
69-
const[currentPage,setCurrentPage]=useState(1);
70-
const[pageSize,setPageSize]=useState(10);
7178
const[modify,setModify]=useState(false);
79+
constvisibleOrgGroups=elements.elements.filter((g)=>!g.allUsersGroup);
80+
constallUsersGroup=elements.elements.find((g)=>g.allUsersGroup);
7281

7382
useEffect(()=>{
74-
fetchOrgGroups(
83+
fetchOrgGroups(
7584
{
7685
pageNum:currentPage,
7786
pageSize:pageSize,
7887
}
79-
).then(result=>{
80-
if(result.success){
81-
setElements({elements:result.data||[],total:result.total||1})
82-
}
83-
else
84-
console.error("ERROR: fetchFolderElements",result.error)
85-
})
86-
},[currentPage,pageSize,modify]
88+
).then(result=>{
89+
if(result.success){
90+
setElements({elements:result.data||[],total:result.total||1})
91+
}
92+
else
93+
console.error("ERROR: fetchFolderElements",result.error)
94+
})
95+
},[currentPage,pageSize,modify]
8796
)
88-
constvisibleOrgGroups=elements.elements.filter((g)=>!g.allUsersGroup);
89-
constallUsersGroup=elements.elements.find((g)=>g.allUsersGroup);
97+
98+
9099
dataSource=currentPage===1 ?[{
91100
key:"users",
92101
label:trans("memberSettings.allMembers"),

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp