Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
P
PyFund
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈涛
PyFund
Commits
72478106
Commit
72478106
authored
Jun 26, 2023
by
confusion
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加翻译3
parent
9429285c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
36 additions
and
20 deletions
+36
-20
permission.py
api/permission.py
+8
-7
permission.py
service/permission.py
+28
-13
No files found.
api/permission.py
View file @
72478106
...
@@ -9,8 +9,8 @@ from model import BaseResponse, Response
...
@@ -9,8 +9,8 @@ from model import BaseResponse, Response
from
fastapi
import
APIRouter
,
Depends
from
fastapi
import
APIRouter
,
Depends
from
schema.permission
import
CreateUserInfo
,
AllUsers
,
DeleteUserInfo
,
UpdateRolePermission
from
schema.permission
import
CreateUserInfo
,
AllUsers
,
DeleteUserInfo
,
UpdateRolePermission
from
service.permission
import
check_permission
,
find_user_permission
,
build
_permission_tree
,
\
from
service.permission
import
check_permission
,
find_user_permission
,
list
_permission_tree
,
\
find_all_sys_permission
,
find_all_roles
find_all_sys_permission
,
find_all_roles
,
remove_label
from
tools.jwt_tools
import
User
from
tools.jwt_tools
import
User
router
=
APIRouter
()
router
=
APIRouter
()
...
@@ -89,7 +89,7 @@ async def query_account_permission(
...
@@ -89,7 +89,7 @@ async def query_account_permission(
permission_role_collect
=
permission_role_collect
)
permission_role_collect
=
permission_role_collect
)
role_db_data
=
await
permission_role_collect
.
find
({
'fund_id'
:
fund_id
,
"name"
:
{
"$in"
:
roles
}})
.
to_list
(
length
=
None
)
role_db_data
=
await
permission_role_collect
.
find
({
'fund_id'
:
fund_id
,
"name"
:
{
"$in"
:
roles
}})
.
to_list
(
length
=
None
)
result_role_data
=
[{
"name"
:
item
[
"name"
],
"label"
:
item
[
label
]}
for
item
in
role_db_data
]
result_role_data
=
[{
"name"
:
item
[
"name"
],
"label"
:
item
[
label
]}
for
item
in
role_db_data
]
permissions_tree
=
build
_permission_tree
(
permissions
,
label
)
permissions_tree
=
list
_permission_tree
(
permissions
,
label
)
return
Response
(
data
=
{
'permission'
:
permissions_tree
,
"roles"
:
result_role_data
})
return
Response
(
data
=
{
'permission'
:
permissions_tree
,
"roles"
:
result_role_data
})
...
@@ -118,10 +118,11 @@ async def query_fund_id_permission(
...
@@ -118,10 +118,11 @@ async def query_fund_id_permission(
permissions_tree
=
await
find_all_sys_permission
(
fund_id
=
fund_id
,
all_permission_collect
=
all_permission_collect
)
permissions_tree
=
await
find_all_sys_permission
(
fund_id
=
fund_id
,
all_permission_collect
=
all_permission_collect
)
label
=
lang_to_label
(
lang
)
label
=
lang_to_label
(
lang
)
return
Response
(
data
=
{
'permission'
:
build_permission_tree
(
permissions_tree
[
'data'
],
label
),
return
Response
(
'roles'
:
{
item
[
'name'
]:
{
"label"
:
item
[
label
],
"remark"
:
item
[
"remark"
],
data
=
{
'permission'
:
remove_label
(
permissions_tree
[
'data'
],
label
),
"permissions"
:
build_permission_tree
(
item
[
"permissions"
],
label
)}
for
item
'roles'
:
{
item
[
'name'
]:
{
"label"
:
item
[
label
],
"remark"
:
item
[
"remark"
],
in
roles_data
}})
"permissions"
:
list_permission_tree
(
item
[
"permissions"
],
label
)}
for
item
in
roles_data
}})
@
router
.
get
(
'/fund_users/'
,
@
router
.
get
(
'/fund_users/'
,
...
...
service/permission.py
View file @
72478106
...
@@ -388,22 +388,37 @@ async def find_user_permission(fund_id, email, permission_user_collect, permissi
...
@@ -388,22 +388,37 @@ async def find_user_permission(fund_id, email, permission_user_collect, permissi
return
permission_list
,
this_fund_role
[
'roles'
]
return
permission_list
,
this_fund_role
[
'roles'
]
def
build_permission_tree
(
permission_list
,
label
):
def
list_permission_tree
(
permission_list
,
label_lang
):
final
=
{
final
=
{}
"data_permission"
:
{
"label"
:
"数据管理权限"
if
label
==
'label'
else
'Data management authority'
,
"children"
:
{}},
for
item
in
permission_list
:
"member_permission"
:
{
"label"
:
"人员管理权限"
if
label
==
'label'
else
'Personnel Management Authority'
,
"children"
:
{}}
parts
=
item
.
split
(
'.'
)
}
if
len
(
parts
)
==
1
:
for
permission
in
permission_list
:
final
[
item
]
=
{
'label'
:
label_map
[
item
][
label_lang
],
'children'
:
{}}
parts
=
permission
.
split
(
'.'
)
elif
len
(
parts
)
==
2
:
final
[
parts
[
0
]][
'children'
]
.
setdefault
(
f
'{parts[0]}.{parts[1]}'
,
final
.
setdefault
(
parts
[
0
],
{
'label'
:
label_map
[
parts
[
0
]][
label_lang
],
'children'
:
{}})
{
'label'
:
label_map
[
f
'{parts[0]}.{parts[1]}'
][
label
],
final
[
parts
[
0
]][
'children'
][
item
]
=
{
'label'
:
label_map
[
item
][
label_lang
],
'children'
:
{}}
'children'
:
{}})
elif
len
(
parts
)
==
3
:
final
[
parts
[
0
]][
'children'
][
f
'{parts[0]}.{parts[1]}'
][
'children'
][
permission
]
=
{
final
.
setdefault
(
parts
[
0
],
{
'label'
:
label_map
[
parts
[
0
]][
label_lang
],
'children'
:
{}})
'label'
:
label_map
[
permission
][
label
]}
final
[
parts
[
0
]][
'children'
]
.
setdefault
(
f
'{parts[0]}.{parts[1]}'
,
{
'label'
:
label_map
[
f
'{parts[0]}.{parts[1]}'
][
label_lang
],
'children'
:
{}})
final
[
parts
[
0
]][
'children'
][
f
'{parts[0]}.{parts[1]}'
][
'children'
][
item
]
=
{
'label'
:
label_map
[
item
][
label_lang
]}
else
:
raise
Exception
(
item
)
return
final
return
final
def
remove_label
(
data
,
label
):
for
k
,
item
in
data
.
items
():
item
[
'label'
]
=
item
[
label
]
del
item
[
'en_label'
]
if
'children'
in
item
:
item
[
'children'
]
=
remove_label
(
item
[
'children'
],
label
)
return
data
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
print
(
json
.
dumps
(
build
_permission_tree
(
all_permission_list
)))
print
(
json
.
dumps
(
list
_permission_tree
(
all_permission_list
)))
# print(make_permission_tree_and_label_map())
# print(make_permission_tree_and_label_map())
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment