diff --git a/src/database/__pycache__/service.cpython-311.pyc b/src/database/__pycache__/service.cpython-311.pyc index 70e5e19..afda6ef 100644 Binary files a/src/database/__pycache__/service.cpython-311.pyc and b/src/database/__pycache__/service.cpython-311.pyc differ diff --git a/src/database/service.py b/src/database/service.py index 402f0e5..fb82d27 100644 --- a/src/database/service.py +++ b/src/database/service.py @@ -25,6 +25,7 @@ def common_parameters( filter_spec: QueryStr = Query(None, alias="filter"), # type: ignore sort_by: List[str] = Query([], alias="sortBy[]"), descending: List[bool] = Query([], alias="descending[]"), + all: int = Query(0), # role: QueryStr = Depends(get_current_role), ): return { @@ -37,11 +38,12 @@ def common_parameters( "descending": descending, "current_user": current_user, # "role": role, + "all": bool(all), } CommonParameters = Annotated[ - dict[str, int | str | DbSession | QueryStr | Json | List[str] | List[bool]], + dict[str, int | str | DbSession | QueryStr | Json | List[str] | List[bool] | bool], Depends(common_parameters), ] @@ -85,6 +87,7 @@ async def search_filter_sort_paginate( sort_by: List[str] = None, descending: List[bool] = None, current_user: str = None, + all: bool = False, ): """Common functionality for searching, filtering, sorting, and pagination.""" # try: @@ -101,6 +104,16 @@ async def search_filter_sort_paginate( # Get total count count_query = Select(func.count()).select_from(query.subquery()) total = await db_session.scalar(count_query) + if all: + result = await db_session.execute(query) + items = result.scalars().all() + return { + "items": items, + "itemsPerPage": total, + "totalPages": 1, + "page": 1, + "total": total, + } query = query.offset((page - 1) * items_per_page).limit(items_per_page) diff --git a/src/equipment/__pycache__/router.cpython-311.pyc b/src/equipment/__pycache__/router.cpython-311.pyc index 9848851..72c5312 100644 Binary files a/src/equipment/__pycache__/router.cpython-311.pyc and b/src/equipment/__pycache__/router.cpython-311.pyc differ diff --git a/src/equipment/__pycache__/service.cpython-311.pyc b/src/equipment/__pycache__/service.cpython-311.pyc index be73ccc..03dd30b 100644 Binary files a/src/equipment/__pycache__/service.cpython-311.pyc and b/src/equipment/__pycache__/service.cpython-311.pyc differ diff --git a/src/equipment/service.py b/src/equipment/service.py index 9218a6e..e35e224 100644 --- a/src/equipment/service.py +++ b/src/equipment/service.py @@ -77,7 +77,6 @@ async def get_all( ) common["items_per_page"] = items_per_page - result = await search_filter_sort_paginate(model=query, **common) return result diff --git a/src/equipment_master/__pycache__/service.cpython-311.pyc b/src/equipment_master/__pycache__/service.cpython-311.pyc index db85cc3..d84d616 100644 Binary files a/src/equipment_master/__pycache__/service.cpython-311.pyc and b/src/equipment_master/__pycache__/service.cpython-311.pyc differ diff --git a/src/masterdata/__pycache__/service.cpython-311.pyc b/src/masterdata/__pycache__/service.cpython-311.pyc index 6e8b6f3..76c4bb6 100644 Binary files a/src/masterdata/__pycache__/service.cpython-311.pyc and b/src/masterdata/__pycache__/service.cpython-311.pyc differ diff --git a/src/plant_masterdata/__pycache__/service.cpython-311.pyc b/src/plant_masterdata/__pycache__/service.cpython-311.pyc index 6dc83ec..d05d9f9 100644 Binary files a/src/plant_masterdata/__pycache__/service.cpython-311.pyc and b/src/plant_masterdata/__pycache__/service.cpython-311.pyc differ diff --git a/src/plant_transaction_data/__pycache__/service.cpython-311.pyc b/src/plant_transaction_data/__pycache__/service.cpython-311.pyc index 3801315..4997e35 100644 Binary files a/src/plant_transaction_data/__pycache__/service.cpython-311.pyc and b/src/plant_transaction_data/__pycache__/service.cpython-311.pyc differ diff --git a/src/yeardata/__pycache__/service.cpython-311.pyc b/src/yeardata/__pycache__/service.cpython-311.pyc index 9f1993c..f291040 100644 Binary files a/src/yeardata/__pycache__/service.cpython-311.pyc and b/src/yeardata/__pycache__/service.cpython-311.pyc differ