pms_integration in process

This commit is contained in:
2024-12-09 10:10:53 +09:00
parent 1398f444bd
commit 60eaef5527
15 changed files with 243 additions and 146 deletions

View File

@@ -1,27 +1,15 @@
# pms_integration/plugins/base_plugin.py
from abc import ABC, abstractmethod
class BasePMSPlugin(ABC):
"""Базовый класс для всех плагинов PMS интеграции."""
def __init__(self, api_config):
"""
Конструктор плагина.
:param api_config: Конфигурация API (объект модели APIConfiguration).
"""
self.api_config = api_config
def __init__(self, hotel, pms_config):
self.hotel = hotel
self.pms_config = pms_config
@abstractmethod
def fetch_data(self):
def fetch_and_parse(self):
"""
Метод для получения данных от PMS.
"""
pass
@abstractmethod
def parse_data(self, raw_data):
"""
Метод для обработки сырых данных от PMS.
Этот метод должен быть реализован в каждом плагине.
Он должен получать данные из API и возвращать их в нужном формате.
"""
pass