class BatchContext:
    __instance = None
    __syor_date: str             # 処理日(yyyy/mm/dd形式)
    __is_not_business_day: bool  # 日次バッチ起動日フラグ
    __is_ultmarc_imported: bool  # アルトマーク取込実施済フラグ
    __is_vjsk_stock_import_day: bool  # 卸在庫データ取込対象フラグ

    def __init__(self) -> None:
        self.__is_not_business_day = False
        self.__is_ultmarc_imported = False

    @classmethod
    def get_instance(cls):
        if cls.__instance is None:
            cls.__instance = cls()
        return cls.__instance

    @property
    def syor_date(self):
        return self.__syor_date

    @syor_date.setter
    def syor_date(self, syor_date_str: str):
        self.__syor_date = syor_date_str

    @property
    def is_not_business_day(self):
        return self.__is_not_business_day

    @is_not_business_day.setter
    def is_not_business_day(self, flag: bool):
        self.__is_not_business_day = flag

    @property
    def is_ultmarc_imported(self):
        return self.__is_ultmarc_imported

    @is_ultmarc_imported.setter
    def is_ultmarc_imported(self, flag: bool):
        self.__is_ultmarc_imported = flag

    @property
    def is_vjsk_stock_import_day(self):
        return self.__is_vjsk_stock_import_day

    @is_vjsk_stock_import_day.setter
    def is_vjsk_stock_import_day(self, flag: bool):
        self.__is_vjsk_stock_import_day = flag
