feat: deals viewer mode and links for viewers
This commit is contained in:
@@ -12,7 +12,7 @@ from models import User
|
||||
from parsers import DealParser
|
||||
from schemas.barcode import GetCardProductsBarcodesPdfRequest, GetCardProductsBarcodesPdfResponse
|
||||
from schemas.card import *
|
||||
from services.auth import get_current_user, authorized_user, guest_user
|
||||
from services.auth import get_current_user, authorized_user, guest_user, user_deals_viewer, user_deal_editor
|
||||
from services.barcode import BarcodeService
|
||||
from services.billing import BillingService
|
||||
from services.card import CardsService
|
||||
@@ -82,14 +82,14 @@ async def change_status(
|
||||
'/summaries',
|
||||
response_model=CardSummaryResponse,
|
||||
operation_id='getCardSummaries',
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def get_summary(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
request: GetCardSummariesRequest,
|
||||
pagination: PaginationDependency,
|
||||
user: CurrentUserDependency,
|
||||
):
|
||||
return await CardsService(session).get_summary(request, pagination)
|
||||
return await CardsService(session).get_summary(request, pagination, user)
|
||||
|
||||
|
||||
@card_router.post(
|
||||
@@ -151,13 +151,13 @@ async def update_general_info(
|
||||
'/update-products-and-services-general-info',
|
||||
response_model=ProductsAndServicesGeneralInfoResponse,
|
||||
operation_id='update_products_and_services_general_info',
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def update_products_and_services_general_info(
|
||||
request: ProductsAndServicesGeneralInfoRequest,
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
user: CurrentUserDependency,
|
||||
):
|
||||
return await CardsService(session).update_products_and_services_general_info(request)
|
||||
return await CardsService(session).update_products_and_services_general_info(request, user)
|
||||
|
||||
|
||||
@card_router.post(
|
||||
@@ -185,6 +185,7 @@ async def update_card_client(
|
||||
):
|
||||
return await CardsService(session).update_card_client(request)
|
||||
|
||||
|
||||
@card_router.post(
|
||||
'/add-kit',
|
||||
response_model=CardAddKitResponse,
|
||||
@@ -206,9 +207,8 @@ async def add_kit_to_card(
|
||||
async def create_guest_url(
|
||||
session: SessionDependency,
|
||||
request: CardCreateGuestUrlRequest,
|
||||
user: CurrentUserDependency
|
||||
):
|
||||
return CardsService(session).create_guest_url(user, request)
|
||||
return await CardsService(session).create_guest_url(request)
|
||||
|
||||
|
||||
@card_router.get(
|
||||
@@ -267,6 +267,7 @@ async def recalculate_card_price(
|
||||
'/employee',
|
||||
response_model=ManageEmployeeResponse,
|
||||
operation_id='manage_employee',
|
||||
dependencies=[Depends(user_deal_editor)],
|
||||
)
|
||||
async def manage_employee(
|
||||
session: SessionDependency,
|
||||
@@ -279,6 +280,7 @@ async def manage_employee(
|
||||
'/employee/available/{card_id}',
|
||||
response_model=GetAvailableEmployeesToAssignResponse,
|
||||
operation_id='get_available_employees_to_assign',
|
||||
dependencies=[Depends(user_deal_editor)],
|
||||
)
|
||||
async def get_available_employees_to_assign(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
@@ -291,6 +293,7 @@ async def get_available_employees_to_assign(
|
||||
'/prefill/excel/parse',
|
||||
response_model=ParseCardsExcelResponse,
|
||||
operation_id='parse_deals_excel',
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def parse_deals_excel(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
@@ -304,6 +307,7 @@ async def parse_deals_excel(
|
||||
'/prefill/excel/create',
|
||||
response_model=CreateCardsFromExcelResponse,
|
||||
operation_id='create_deals_excel',
|
||||
dependencies=[Depends(authorized_user)],
|
||||
)
|
||||
async def create_deals_from_excel(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
@@ -312,6 +316,7 @@ async def create_deals_from_excel(
|
||||
):
|
||||
return await CardsService(session).create_cards_from_excel(request, user)
|
||||
|
||||
|
||||
# endregion
|
||||
|
||||
# region Card services
|
||||
@@ -519,5 +524,4 @@ async def get_card_products_barcodes_pdf(
|
||||
mime_type='application/pdf'
|
||||
)
|
||||
|
||||
|
||||
# endregion
|
||||
|
||||
Reference in New Issue
Block a user