from core.models.SubscriptionPlan import SubscriptionPlan from core.models.session.SessionConnection import SessionConnection from core.models.system.SystemConnection import SystemConnection from core.services.WebServiceApiService import WebServiceApiService from typing import Union, Optional class SubscriptionPlanController: @staticmethod def get(connection: Union[SessionConnection, SystemConnection], duration: int): return SubscriptionPlan.find(connection, duration) @staticmethod def get_all(connection: Optional[Union[SessionConnection, SystemConnection]] = None): return SubscriptionPlan.all(connection) @staticmethod def fetch(proxies: Optional[dict] = None): subscription_plans = WebServiceApiService.get_subscription_plans(proxies) SubscriptionPlan.truncate() SubscriptionPlan.save_many(subscription_plans)