events initated first endpoint tested
This commit is contained in:
@@ -14,6 +14,7 @@ from ApiLayers.ApiValidations.Custom.token_objects import (
|
||||
)
|
||||
from ApiLayers.ApiValidations.Custom.wrapper_contexts import AuthContext, EventContext
|
||||
from ApiLayers.AllConfigs.Token.config import Auth
|
||||
from Services.PostgresDb.Models.pagination import Pagination, PaginationResult, QueryOptions
|
||||
|
||||
|
||||
TokenDictType = Union[EmployeeTokenObject, OccupantTokenObject]
|
||||
@@ -90,3 +91,24 @@ class ContextRetrievers:
|
||||
class BaseRouteModel:
|
||||
|
||||
context_retriever: Union[ContextRetrievers] = None
|
||||
|
||||
|
||||
class ListOptionsBase:
|
||||
|
||||
def __init__(self, table, list_options, model_query: Optional[BaseModel] = None):
|
||||
self.table = table
|
||||
self.list_options = list_options
|
||||
self.model_query = model_query
|
||||
|
||||
def init_list_options(self) -> tuple:
|
||||
db_session = self.table.new_session()
|
||||
query_options = QueryOptions(table=self.table, data=self.list_options, model_query=self.model_query)
|
||||
return db_session, query_options
|
||||
|
||||
def paginated_result(self, records) -> PaginationResult:
|
||||
pagination = Pagination(data=records)
|
||||
if isinstance(self.list_options, dict):
|
||||
pagination.change(**self.list_options)
|
||||
elif isinstance(self.list_options, BaseModel):
|
||||
pagination.change(**self.list_options.model_dump())
|
||||
return PaginationResult(data=records, pagination=pagination)
|
||||
|
||||
Reference in New Issue
Block a user