bugfix dbcrud

This commit is contained in:
2024-12-04 13:21:19 +09:00
parent 6504d8d29f
commit c5c4f79e4f
9 changed files with 20 additions and 12 deletions

View File

@@ -11,7 +11,7 @@ from app.core.auth import get_current_active_user,get_current_user
from app.core.apiexception import APIException
from app.core.common import ApiReturnModel,ApiReturnPage
#from fastapi_pagination import Page
from app.db.cruddb.dbdomain import dbdomain
from app.db.cruddb import dbdomain
import httpx
import app.core.config as config

View File

@@ -15,7 +15,7 @@ from app.db.crud import (
)
from app.db.schemas import UserCreate, UserEdit, User, UserOut,RoleBase,Permission
from app.core.auth import get_current_user,get_current_active_user, get_current_active_superuser
from app.db.cruddb.dbuser import dbuser
from app.db.cruddb import dbuser
users_router = r = APIRouter()
@@ -183,4 +183,4 @@ async def permssions_list(
permissions = []
return ApiReturnModel(data = permissions)
except Exception as e:
raise APIException('user:userpermssions',request.url._url,f"Error occurred while get user(){current_user.id} permissions:",e)
raise APIException('user:userpermssions',request.url._url,f"Error occurred while get user({current_user.id}) permissions:",e)

View File

@@ -6,7 +6,7 @@ from jwt import PyJWTError
from app.db import models, schemas, session
from app.db.crud import get_user_by_email, create_user,get_user
from app.core import security
from app.db.cruddb.dbuser import dbuser
from app.db.cruddb import dbuser
async def get_current_user(security_scopes: SecurityScopes,
db=Depends(session.get_db), token: str = Depends(security.oauth2_scheme)

View File

@@ -0,0 +1,2 @@
from app.db.cruddb.dbuser import dbuser
from app.db.cruddb.dbdomain import dbdomain

View File

@@ -3,10 +3,9 @@ from sqlalchemy.orm import Session
from sqlalchemy.orm.query import Query
from typing import Type, List, Optional
from app.core.common import ApiReturnPage
from fastapi_pagination.ext.sqlalchemy import paginate
from sqlalchemy import and_ ,or_
from pydantic import BaseModel
from .. import models, schemas
from app.db import models
class crudbase:
def __init__(self, model: Type[models.Base]):
@@ -62,8 +61,8 @@ class crudbase:
query = query.order_by(asc(column))
return query
def get_all(self, db: Session) -> ApiReturnPage[models.Base]:
return paginate(db.query(self.model))
def get_all(self, db: Session) -> Query:
return db.query(self.model)
def get(self, db: Session, item_id: int) -> Optional[models.Base]:

View File

@@ -36,7 +36,7 @@ class dbdomain(crudbase):
super().__init__(model=models.Domain)
def get_domains(self,db: Session)-> ApiReturnPage[models.Base]:
return super().get_all(db)
return paginate(super().get_all(db))
def get_domains_by_owner(self,db: Session,ownerid:int)-> ApiReturnPage[models.Base]:
return paginate( super().get_by_conditions(db,{"ownerid":ownerid}))

View File

@@ -35,7 +35,7 @@ class dbuser(crudbase):
return super().get_by_conditions(db,{"email":email}).first()
def get_users(self,db: Session) -> ApiReturnPage[models.Base]:
return paginate(super().get_all())
return paginate(super().get_all(db))
def get_users_not_admin(self,db: Session) -> ApiReturnPage[models.Base]:
return paginate(super().get_by_conditions(db,{"is_superuser":False}))
@@ -79,7 +79,7 @@ class dbuser(crudbase):
return db_user
def get_permissions(self,db: Session,user_id: int) -> t.List[schemas.Permission]:
return dbpermission.get_by_conditions(db).all()
return dbpermission.get_all(db).all()
def get_user_permissions(self,db: Session,user_id: int) -> t.List[schemas.Permission]:
permissions =[]

View File

@@ -1,4 +1,11 @@
def test_read_main(client):
import pytest
from fastapi.testclient import TestClient
from app.main import app
client = TestClient(app)
def test_read_main():
response = client.get("/api/v1")
assert response.status_code == 200
assert response.json() == {"message": "Hello World"}

Binary file not shown.