bugfix get roles

This commit is contained in:
2024-12-22 15:00:44 +09:00
parent 1420773548
commit a5f5b3fccf
8 changed files with 78 additions and 18 deletions

View File

@@ -60,10 +60,15 @@ class dbuser(crudbase):
return super().update(db,user_id,user)
def get_roles(self,db: Session) -> t.List[schemas.RoleBase]:
return dbrole.get_all(db).all()
return db.execute(dbrole.get_all()).scalars().all()
#return dbrole.get_all().all()
def get_roles_by_level(self,db: Session,level:int) -> t.List[schemas.RoleBase]:
return db.execute(dbrole.get_by_conditions({"level":{"operator":">=","value":level}})).scalars().all()
def get_roles_by_level(self,db: Session,roles:t.List[models.Role]) -> t.List[schemas.RoleBase]:
level = 99999
for role in roles:
if role.level < level:
level = role.level
return db.execute(dbrole.get_by_conditions({"level":{"operator":">","value":level}})).scalars().all()
def assign_userrole(self,db: Session, user_id: int, roles: t.List[int]):
db_user = super().get(db,user_id)

View File

@@ -24,6 +24,10 @@ class RoleBase(BaseModel):
class RoleWithPermission(RoleBase):
permissions:t.List[Permission] = []
class AssignUserRoles(BaseModel):
userid:int
roleids:t.List[int]
class UserBase(BaseModel):
email: str