Aide à l'entretien
Préparation à l'entretien
CV
Recherche d'emploi
Ressources
Abonnement
FR
Telegram
Connexion
Ouvrir le menu
Aide à l'entretien
Assistant IA
Extension du navigateur
Analyse des entretiens
Ressources
Télécharger
FAQ / Aide
Préparation à l'entretien
Banque de questions
Banque d'entretiens
Entretiens simulés
Mentors
Ressources
FAQ / Aide
Recherche d'emploi
Automatisation de la recherche d'emploi
Analyse du marché
Offres d'emploi sur Telegram
Entreprises
Ressources
Carrières
Blogue
FAQ / Documentation
TelegramBlog
Telegram Assistance
Juridique
Remboursement
Conditions
Confidentialité
Ayants droit
Retour aux questions
Banque de questions
Python - Développeur
Question
Middle
Импортирует заказы для списка клиентов async def import_orders( self, customer_ids: list[int], imported_orders: list[dict[str, Any]] = [], ) -> dict[str, Any]: """ Импортирует заказы для списка клиентов """ results = { "created": 0, "failed": 0, "orders": imported_orders, } for customer_id in customer_ids: try: # Внешний API возвращает список сырых заказов клиента. orders = self.api_client.get_orders(customer_id) for order in orders: normalized_order = await self.normalize_order(order) # Отменённые заказы не должны попадать в БД if normalized_order["status"] == "cancelled": continue await self.save_order(normalized_order) results["created"] += 1 results["orders"].append(normalized_order) except Exception as error: logger.error( f"Cannot import orders for customer {customer_id}: {error}" ) results["failed"] += 1 return results async def normalize_order(self, order: dict[str, Any]) -> dict[str, Any]: """ Преобразует заказ из формата внешнего API во внутренний формат. Внешняя система может возвращать дополнительные поля, поэтому импортёр сохраняет только данные, необходимые для локального сервиса. Args: order: Исходный заказ, полученный из API. Returns: Нормализованный словарь с данными заказа. """
Marquer comme terminé
Précédent
Suivant