get_domains 改修

This commit is contained in:
2024-11-26 15:18:56 +09:00
parent cc726c7f68
commit 1f176d40bc
3 changed files with 23 additions and 10 deletions

View File

@@ -254,17 +254,20 @@ async def flow_delete(
raise APIException('platform:flow',request.url._url,f"Error occurred while delete flow:",e) raise APIException('platform:flow',request.url._url,f"Error occurred while delete flow:",e)
@r.get( @r.get(
"/domains/{tenantid}", "/domains",
response_model=List[Domain], response_model=List[Domain],
response_model_exclude_none=True, response_model_exclude_none=True,
) )
async def domain_details( async def domain_details(
request: Request, request: Request,
tenantid:str, user=Depends(get_current_active_user),
db=Depends(get_db), db=Depends(get_db),
): ):
try: try:
domains = get_domains(db,tenantid) if user.is_superuser:
domains =get_alldomains(db)
else:
domains = get_domains(db,user.id)
return domains return domains
except Exception as e: except Exception as e:
raise APIException('platform:domains',request.url._url,f"Error occurred while get domains:",e) raise APIException('platform:domains',request.url._url,f"Error occurred while get domains:",e)

View File

@@ -3,6 +3,7 @@ import typing as t
from app.db.session import get_db from app.db.session import get_db
from app.db.crud import ( from app.db.crud import (
get_allusers,
get_users, get_users,
get_user, get_user,
create_user, create_user,
@@ -30,7 +31,10 @@ async def users_list(
""" """
Get all users Get all users
""" """
users = get_users(db,current_user.is_superuser) if current_user.is_superuser:
users = get_allusers(db)
else:
users = get_users(db)
# This is necessary for react-admin to work # This is necessary for react-admin to work
#response.headers["Content-Range"] = f"0-9/{len(users)}" #response.headers["Content-Range"] = f"0-9/{len(users)}"
return users return users

View File

@@ -19,12 +19,14 @@ def get_user_by_email(db: Session, email: str) -> schemas.UserBase:
return db.query(models.User).filter(models.User.email == email).first() return db.query(models.User).filter(models.User.email == email).first()
def get_allusers(
db: Session
) -> t.List[schemas.UserOut]:
return db.query(models.User).all()
def get_users( def get_users(
db: Session, super:bool db: Session, super:bool
) -> t.List[schemas.UserOut]: ) -> t.List[schemas.UserOut]:
if super:
return db.query(models.User).all()
else:
return db.query(models.User).filter(models.User.is_superuser == False) return db.query(models.User).filter(models.User.is_superuser == False)
@@ -388,8 +390,12 @@ def get_domain(db: Session, userid: str):
# domain.kintonepwd = decrypted_pwd # domain.kintonepwd = decrypted_pwd
return domains return domains
def get_domains(db: Session,tenantid:str): def get_alldomains(db: Session):
domains = db.query(models.Domain).filter(models.Domain.tenantid == tenantid ).all() domains = db.query(models.Domain).all()
return domains
def get_domains(db: Session,userid:int):
domains = db.query(models.Domain).filter(models.Domain.ownerid == userid ).all()
if not domains: if not domains:
raise HTTPException(status_code=404, detail="Data not found") raise HTTPException(status_code=404, detail="Data not found")
# for domain in domains: # for domain in domains: