user selection compoleted tested
This commit is contained in:
@@ -6,11 +6,13 @@ from .supers_events import (
|
||||
SuperAccountRecordsUpdateEvent,
|
||||
SuperAccountRecordsDeleteEvent,
|
||||
)
|
||||
from .flat_representative import FlatRepresentativeAccountRecordsListEvent
|
||||
|
||||
AccountRecordsRouterCluster = RouterCluster(name="AccountRecordsRouterCluster")
|
||||
|
||||
AccountRecordsListEventCluster = EventCluster(name="AccountRecordsListEventCluster", endpoint_uu_id=endpoints_index["AccountRecordsList"])
|
||||
AccountRecordsListEventCluster.add_event(SuperAccountRecordsListEvent)
|
||||
AccountRecordsListEventCluster.add_event(FlatRepresentativeAccountRecordsListEvent)
|
||||
|
||||
AccountRecordsCreateEventCluster = EventCluster(name="AccountRecordsCreateEventCluster", endpoint_uu_id=endpoints_index["AccountRecordsCreate"])
|
||||
AccountRecordsCreateEventCluster.add_event(SuperAccountRecordsCreateEvent)
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
from typing import Any
|
||||
|
||||
from Initializer.event_clusters import Event
|
||||
from Validations.response import (
|
||||
PaginateOnly,
|
||||
Pagination,
|
||||
PaginationResult,
|
||||
PostgresResponseSingle,
|
||||
PostgresResponse,
|
||||
EndpointResponse
|
||||
)
|
||||
from Validations.defaults.validations import CommonHeaders
|
||||
from Schemas import AccountRecords
|
||||
from Extensions.Middlewares.token_provider import TokenProvider
|
||||
|
||||
|
||||
# List all account records endpoint Flat Representative
|
||||
FlatRepresentativeAccountRecordsListEvent = Event(
|
||||
name="flat_representative_account_records_list",
|
||||
key="7cb248d3-d75a-4d28-8be5-f147089ce654",
|
||||
request_validator=None, # TODO: Add request validator
|
||||
response_validator=None, # TODO: Add response validator
|
||||
description="Flat Representative Account Records List all flat representative users endpoint",
|
||||
)
|
||||
|
||||
class FlatRepresentativeAccountRecordsListPydantic:
|
||||
uu_id: str
|
||||
bank_date: datetime.datetime
|
||||
currency_value: float
|
||||
process_name: str
|
||||
|
||||
|
||||
def flat_representative_account_records_list_callable(list_options: PaginateOnly, header: CommonHeaders):
|
||||
list_options = PaginateOnly(**list_options.model_dump())
|
||||
token_object = TokenProvider.get_dict_from_redis(token=header.token)
|
||||
if not token_object.is_occupant:
|
||||
raise Exception("Forbidden for employees")
|
||||
|
||||
pagination_query = {}
|
||||
if list_options.query:
|
||||
pagination_query = FlatRepresentativeAccountRecordsListPydantic(**list_options.query)
|
||||
|
||||
with AccountRecords.new_session() as db_session:
|
||||
AccountRecords.set_session(db_session)
|
||||
if pagination_query:
|
||||
account_records_list = AccountRecords.query.filter(
|
||||
*AccountRecords.convert(pagination_query),
|
||||
AccountRecords.build_parts_id == token_object.selected_occupant.build_id
|
||||
)
|
||||
else:
|
||||
account_records_list = AccountRecords.query.filter(
|
||||
AccountRecords.build_parts_id == token_object.selected_occupant.build_id
|
||||
)
|
||||
pagination = Pagination(data=account_records_list)
|
||||
pagination.change(**list_options.model_dump())
|
||||
pagination_result = PaginationResult(data=account_records_list, pagination=pagination, response_model=FlatRepresentativeAccountRecordsListPydantic)
|
||||
return EndpointResponse(message="MSG0003-LIST", pagination_result=pagination_result).response
|
||||
|
||||
|
||||
FlatRepresentativeAccountRecordsListEvent.event_callable = flat_representative_account_records_list_callable
|
||||
Reference in New Issue
Block a user