88 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
from fastapi import APIRouter, Depends
 | 
						|
 | 
						|
from backend.dependecies import SessionDependency
 | 
						|
from schemas.marketplace import *
 | 
						|
from services.auth import authorized_user
 | 
						|
from services.marketplace import MarketplaceService
 | 
						|
 | 
						|
marketplace_router = APIRouter(
 | 
						|
    prefix="/marketplace",
 | 
						|
    tags=["marketplace"],
 | 
						|
)
 | 
						|
 | 
						|
 | 
						|
@marketplace_router.get(
 | 
						|
    '/base/get-all',
 | 
						|
    operation_id='get_all_base_marketplaces',
 | 
						|
    response_model=GetAllBaseMarketplacesResponse,
 | 
						|
)
 | 
						|
async def get_all(
 | 
						|
        session: SessionDependency,
 | 
						|
):
 | 
						|
    return await MarketplaceService(session).get_all_base_marketplaces()
 | 
						|
 | 
						|
 | 
						|
@marketplace_router.post(
 | 
						|
    '/get',
 | 
						|
    operation_id='get_client_marketplaces',
 | 
						|
    response_model=GetClientMarketplacesResponse,
 | 
						|
    dependencies=[Depends(authorized_user)]
 | 
						|
)
 | 
						|
async def get(
 | 
						|
        session: SessionDependency,
 | 
						|
        request: GetClientMarketplacesRequest
 | 
						|
):
 | 
						|
    return await MarketplaceService(session).get_client_marketplaces(request)
 | 
						|
 | 
						|
 | 
						|
@marketplace_router.post(
 | 
						|
    '/create',
 | 
						|
    operation_id='create_marketplace',
 | 
						|
    response_model=CreateMarketplaceResponse,
 | 
						|
    dependencies=[Depends(authorized_user)],
 | 
						|
)
 | 
						|
async def create(
 | 
						|
        session: SessionDependency,
 | 
						|
        request: CreateMarketplaceRequest
 | 
						|
):
 | 
						|
    return await MarketplaceService(session).create_marketplace(request)
 | 
						|
 | 
						|
 | 
						|
@marketplace_router.post(
 | 
						|
    '/delete',
 | 
						|
    operation_id='delete_marketplace',
 | 
						|
    response_model=DeleteMarketplaceResponse,
 | 
						|
    dependencies=[Depends(authorized_user)],
 | 
						|
)
 | 
						|
async def delete(
 | 
						|
        session: SessionDependency,
 | 
						|
        request: DeleteMarketplaceRequest
 | 
						|
):
 | 
						|
    return await MarketplaceService(session).delete_marketplace(request)
 | 
						|
 | 
						|
 | 
						|
@marketplace_router.post(
 | 
						|
    '/update',
 | 
						|
    operation_id='update_marketplace',
 | 
						|
    response_model=UpdateMarketplaceResponse,
 | 
						|
    dependencies=[Depends(authorized_user)],
 | 
						|
)
 | 
						|
async def update(
 | 
						|
        session: SessionDependency,
 | 
						|
        request: UpdateMarketplaceRequest
 | 
						|
):
 | 
						|
    return await MarketplaceService(session).update_marketplace(request)
 | 
						|
 | 
						|
 | 
						|
@marketplace_router.post(
 | 
						|
    '/yandex-market/get-campaigns',
 | 
						|
    operation_id='get_yandex_market_campaigns',
 | 
						|
    response_model=GetYandexMarketCampaignsResponse,
 | 
						|
    dependencies=[Depends(authorized_user)],
 | 
						|
)
 | 
						|
async def get_yandex_market_campaigns(
 | 
						|
        session: SessionDependency,
 | 
						|
        request: GetYandexMarketCampaignsRequest
 | 
						|
):
 | 
						|
    return await MarketplaceService(session).get_yandex_market_campaigns(request)
 |