Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
financial-system
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
xianyang
financial-system
Commits
bbd41b8f
Commit
bbd41b8f
authored
Mar 14, 2023
by
xianyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化角色,用户列表
parent
3f6617d7
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
15 additions
and
8 deletions
+15
-8
crud.py
app/api/role/crud.py
+5
-2
views.py
app/api/role/views.py
+2
-2
crud.py
app/api/users/crud.py
+6
-2
views.py
app/api/users/views.py
+2
-2
No files found.
app/api/role/crud.py
View file @
bbd41b8f
from
datetime
import
datetime
from
fastapi
import
HTTPException
,
status
from
sqlalchemy.orm
import
Session
from
sqlalchemy
import
func
from
app.api.role
import
schemas
from
libs.functions
import
wrapper_out
from
models
import
roles
as
models
...
...
@@ -20,10 +21,12 @@ def get_roles(db: Session, param):
if
name
:
query_res
=
db
.
query
(
models
.
Role
)
.
filter
(
models
.
Role
.
role_name
.
like
(
f
'
%
{name}
%
'
))
.
order_by
(
models
.
Role
.
id
.
desc
())
.
\
offset
((
int
(
param
.
page
)
-
1
)
*
param
.
size
)
.
limit
(
param
.
page
*
param
.
size
)
.
all
()
count
=
db
.
query
(
models
.
Role
)
.
filter
(
models
.
Role
.
role_name
.
like
(
f
'
%
{name}
%
'
))
.
scalar
()
else
:
query_res
=
db
.
query
(
models
.
Role
)
.
order_by
(
models
.
Role
.
id
.
desc
())
.
offset
((
int
(
param
.
page
)
-
1
)
*
param
.
size
)
.
limit
(
param
.
page
*
param
.
size
)
.
all
()
count
=
db
.
query
(
func
.
count
(
models
.
Role
.
id
))
.
scalar
()
if
not
query_res
:
return
[]
return
[]
,
0
for
i
in
query_res
:
serializer_info
=
i
.
to_dict
(
only
=
(
'id'
,
'role_name'
,
'authority'
,
'remark'
,
'create_time'
))
if
i
.
authority
:
...
...
@@ -32,7 +35,7 @@ def get_roles(db: Session, param):
else
:
serializer_info
[
'authority'
]
=
[]
result_list
.
append
(
serializer_info
)
return
result_list
return
result_list
,
count
def
create_role
(
db
:
Session
,
user
:
schemas
.
RoleCreate
):
...
...
app/api/role/views.py
View file @
bbd41b8f
...
...
@@ -38,5 +38,5 @@ def delete_user(role_id: int, db: Session = Depends(get_db)):
@
router
.
post
(
"/list"
)
def
role_list
(
data
:
schemas
.
RoleList
,
db
:
Session
=
Depends
(
get_db
)):
"""用户列表"""
result
=
crud
.
get_roles
(
db
,
data
)
return
HttpResultResponse
(
total
=
len
(
result
)
,
data
=
result
)
result
,
total
=
crud
.
get_roles
(
db
,
data
)
return
HttpResultResponse
(
total
=
total
,
data
=
result
)
app/api/users/crud.py
View file @
bbd41b8f
import
random
from
datetime
import
datetime
from
sqlalchemy
import
func
from
sqlalchemy.orm
import
Session
from
app.api.role.crud
import
get_id_to_authority
from
app.api.users
import
schemas
...
...
@@ -21,10 +23,12 @@ def get_users(db: Session, param):
username
=
param
.
username
if
param
.
username
else
""
if
username
:
res
=
db
.
query
(
models
.
User
)
.
filter
(
models
.
User
.
username
.
like
(
f
'
%
{username}
%
'
))
.
order_by
(
models
.
User
.
id
.
desc
())
.
offset
((
int
(
param
.
page
)
-
1
)
*
param
.
size
)
.
limit
(
param
.
page
*
param
.
size
)
count
=
db
.
query
(
func
.
count
(
models
.
User
.
id
))
.
filter
(
models
.
User
.
username
.
like
(
f
'
%
{username}
%
'
))
.
scalar
()
else
:
res
=
db
.
query
(
models
.
User
)
.
order_by
(
models
.
User
.
id
.
desc
())
.
offset
((
int
(
param
.
page
)
-
1
)
*
param
.
size
)
.
limit
(
param
.
page
*
param
.
size
)
count
=
db
.
query
(
func
.
count
(
models
.
User
.
id
))
.
scalar
()
if
not
res
:
return
[]
return
[]
,
0
result_list
=
[]
for
i
in
res
:
serializer_info
=
i
.
to_dict
()
...
...
@@ -38,7 +42,7 @@ def get_users(db: Session, param):
else
:
serializer_info
[
'role_name'
]
=
''
result_list
.
append
(
serializer_info
)
return
result_list
return
result_list
,
count
def
generate_random_str
():
...
...
app/api/users/views.py
View file @
bbd41b8f
...
...
@@ -84,8 +84,8 @@ def read_user(data: schemas.PermissionCreate, db: Session = Depends(get_db)):
@
router
.
post
(
"/list"
)
def
user_list
(
data
:
schemas
.
UserList
,
db
:
Session
=
Depends
(
get_db
)):
"""用户列表"""
result
=
crud
.
get_users
(
db
,
data
)
return
HttpResultResponse
(
total
=
len
(
result
)
,
data
=
result
)
result
,
total
=
crud
.
get_users
(
db
,
data
)
return
HttpResultResponse
(
total
=
total
,
data
=
result
)
@
router
.
delete
(
"/delete/{user_id}"
)
...
...
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