from django.db import models from .base import MarketplaceIntegration from ...fields import EncryptedCharField class WooCommerceIntegration(MarketplaceIntegration): """ Интеграция с WooCommerce. WooCommerce - плагин электронной коммерции для WordPress. """ # WooCommerce REST API credentials - ЗАШИФРОВАНЫ consumer_key = EncryptedCharField( max_length=255, blank=True, verbose_name="Consumer Key", help_text="REST API Consumer Key (хранится зашифрованным)" ) consumer_secret = EncryptedCharField( max_length=255, blank=True, verbose_name="Consumer Secret", help_text="REST API Consumer Secret (хранится зашифрованным)" ) # API версия (WooCommerce REST API v1, v2, v3) api_version = models.CharField( max_length=10, default='v3', blank=True, verbose_name="Версия API", help_text="Версия WooCommerce REST API" ) class Meta: verbose_name = "WooCommerce" verbose_name_plural = "WooCommerce" def __str__(self): return f"WooCommerce: {self.name or self.store_url or 'не настроен'}" @property def is_configured(self) -> bool: """WooCommerce требует consumer_key и consumer_secret""" return bool(self.consumer_key and self.consumer_secret and self.store_url)