import json import logging logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) class SettingsService: """Сервис для управления настройками и очистки данных сети.""" def __init__(self): self.subnet_file = "storage/devices/devices.json" self.wifi_file = "storage/wifi/wifi.json" def clear_subnet(self) -> bool: """Очищает данные узлов подсети в файле devices.json. Returns: bool: True, если очистка успешна. Raises: Exception: Если произошла ошибка при записи в файл. """ try: with open(self.subnet_file, "w") as f: json.dump([], f) logger.info("Данные узлов подсети успешно очищены") return True except Exception as e: logger.error(f"Ошибка очистки узлов подсети: {str(e)}") raise def clear_wifi(self) -> bool: """Очищает данные точек доступа Wi-Fi в файле wifi.json. Returns: bool: True, если очистка успешна. Raises: Exception: Если произошла ошибка при записи в файл. """ try: with open(self.wifi_file, "w") as f: json.dump([], f) logger.info("Данные точек доступа Wi-Fi успешно очищены") return True except Exception as e: logger.error(f"Ошибка очистки точек доступа Wi-Fi: {str(e)}") raise def clear_all_data(self) -> bool: """Очищает данные узлов подсети и точек доступа Wi-Fi в обоих файлах. Returns: bool: True, если очистка успешна. Raises: Exception: Если произошла ошибка при записи в один из файлов. """ try: with open(self.subnet_file, "w") as f: json.dump([], f) with open(self.wifi_file, "w") as f: json.dump([], f) logger.info("Все сетевые данные успешно очищены") return True except Exception as e: logger.error(f"Ошибка очистки всех сетевых данных: {str(e)}") raise