feat: a lot of a lot
This commit is contained in:
		
							
								
								
									
										19
									
								
								external/marketplace/factory.py
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								external/marketplace/factory.py
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
from enums.base_marketplace import BaseMarketplace
 | 
			
		||||
from external.marketplace.ozon.core import OzonMarketplaceApi
 | 
			
		||||
from external.marketplace.wildberries.core import WildberriesApiUrl, WildberriesMarketplaceApi
 | 
			
		||||
from external.marketplace.yandex.core import YandexMarketplaceApi
 | 
			
		||||
from models import Marketplace
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class MarketplaceApiFactory:
 | 
			
		||||
    @staticmethod
 | 
			
		||||
    def get_marketplace_api(marketplace: Marketplace):
 | 
			
		||||
        match marketplace.base_marketplace_key:
 | 
			
		||||
            case BaseMarketplace.WILDBERRIES:
 | 
			
		||||
                return WildberriesMarketplaceApi(marketplace)
 | 
			
		||||
            case BaseMarketplace.OZON:
 | 
			
		||||
                return OzonMarketplaceApi(marketplace)
 | 
			
		||||
            case BaseMarketplace.YANDEX_MARKET:
 | 
			
		||||
                return YandexMarketplaceApi(marketplace)
 | 
			
		||||
            case _:
 | 
			
		||||
                raise ValueError(f"Unsupported marketplace: {marketplace.base_marketplace_key}")
 | 
			
		||||
		Reference in New Issue
	
	Block a user