编写权限路由

This commit is contained in:
wcq 2023-02-09 16:10:25 +08:00
parent 98e3940fc9
commit 2569ee91ec
8 changed files with 31 additions and 18 deletions

View File

@ -58,3 +58,8 @@ def query_user(db: Session, query_params: UserListQueryParams):
count = query.count() count = query.count()
query = query.offset((query_params.page - 1) * query_params.page_size).limit(query_params.page).all() query = query.offset((query_params.page - 1) * query_params.page_size).limit(query_params.page).all()
return query, count return query, count
def delete_user(db: Session, user_id: str):
db.query(User).delete(user_id)
db.commit()

View File

@ -15,3 +15,9 @@ class AuthRuleNode(Base):
return {c.name: getattr(self, c.name) for c in self.__table__.columns} return {c.name: getattr(self, c.name) for c in self.__table__.columns}
class DefaultAuthRuleConfig(Base):
__tablename__ = "default_auth_rule_config_table"
id = Column(Integer, primary_key=True, comment="默认权限规则配置id")
name = Column(String(32), unique=True, comment="规则节点名称")
node_type = Column(Enum("category", "rule", name="节点类型"))
belong = Column(Integer, comment="所属节点")

View File

@ -1,11 +1,6 @@
from Model.AppModel import App from Utils.AuthUtils import app_auth_token_depend
from Utils.AuthUtils import token_data_depend, decode_token, app_auth_token_depend from fastapi import APIRouter, Depends
from Utils.SqlAlchemyUtils import get_db
from fastapi import APIRouter, Depends, HTTPException, Request
from sqlalchemy.orm import Session
from Schemas import AppSchemas from Schemas import AppSchemas
from Context.common import ctx
from Crud import AppCrud
router = APIRouter( router = APIRouter(
tags=["应用服务接口"], tags=["应用服务接口"],
@ -15,7 +10,7 @@ router = APIRouter(
# 获取用户基本信息 # 获取用户基本信息
@router.post("/get_user_base_info", response_model=AppSchemas.UserBaseInfo,summary="获取用户基本信息") @router.post("/get_user_base_info", response_model=AppSchemas.UserBaseInfo, summary="获取用户基本信息")
def get_user_base_info(payload=Depends(app_auth_token_depend)): def get_user_base_info(payload=Depends(app_auth_token_depend)):
return AppSchemas.UserBaseInfo(**payload) return AppSchemas.UserBaseInfo(**payload)

View File

@ -29,3 +29,9 @@ def change_user_info_by_key(body: UserManageSchemas.UserChangeInfoByKey, db: Ses
def get_user_list(query_params: UserManageSchemas.UserListQueryParams, db: Session = Depends(get_db)): def get_user_list(query_params: UserManageSchemas.UserListQueryParams, db: Session = Depends(get_db)):
user_list, count = UserCrud.query_user(db, query_params) user_list, count = UserCrud.query_user(db, query_params)
return {"user_list": [item.as_info() for item in user_list]} return {"user_list": [item.as_info() for item in user_list]}
@router.post("/delete_user", summary="删除用户")
def delete_user(query_params: UserManageSchemas.UserId, db: Session = Depends(get_db)):
UserCrud.delete_user(db, query_params.id)
return {"state": 1, "msg": "删除成功"}

View File

@ -1,5 +1,4 @@
from typing import Union from typing import Union, List
from pydantic import BaseModel from pydantic import BaseModel
@ -21,11 +20,6 @@ class UserBaseInfo(BaseModel):
auth_data: Union[str, None] auth_data: Union[str, None]
from typing import List
from pydantic import BaseModel
class AppAddInfo(BaseModel): class AppAddInfo(BaseModel):
name: str name: str
secret_key: str secret_key: str

View File

@ -26,7 +26,11 @@ class UserListQueryParams(BaseModel):
department: Union[str, None] department: Union[str, None]
post: Union[str, None] post: Union[str, None]
email: Union[str, None] email: Union[str, None]
page_size:int page_size: int
page:int page: int
# create_time: Union[datetime, None] # create_time: Union[datetime, None]
# update_time: Union[datetime, None] # update_time: Union[datetime, None]
class UserId:
id: str

View File

@ -1,5 +1,7 @@
from configparser import ConfigParser from configparser import ConfigParser
from Context.common import ctx
class Config: class Config:
common: ConfigParser common: ConfigParser
@ -13,6 +15,7 @@ def get_common_config():
def init_common_config(): def init_common_config():
Config.conf = get_common_config() Config.conf = get_common_config()
ctx.common_conf = Config.conf
return Config.conf return Config.conf

View File

@ -8,7 +8,7 @@ from Utils.RedisUtils import init_redis_pool
from Utils.SqlAlchemyUtils import Base, init_database from Utils.SqlAlchemyUtils import Base, init_database
from Context.common import ctx from Context.common import ctx
ctx.common_conf = init_common_config() init_common_config()
init_database() init_database()
init_redis_pool() init_redis_pool()