Add Dispatch_V0.1.1
This commit is contained in:
36
Dispatch_V0.1.1/state/paths.py
Normal file
36
Dispatch_V0.1.1/state/paths.py
Normal file
@@ -0,0 +1,36 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# hub/ticket/state/paths.py
|
||||
|
||||
"""Пути хранения Ticket внутри общей системы."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
from PySide6.QtCore import QStandardPaths
|
||||
|
||||
|
||||
def _default_root_dir() -> Path:
|
||||
"""Вернуть корневую директорию хранения Ticket."""
|
||||
base = QStandardPaths.writableLocation(QStandardPaths.AppDataLocation)
|
||||
root_base = Path(base) if base else Path.cwd() / ".usms_data"
|
||||
return root_base / "ticket"
|
||||
|
||||
|
||||
ROOT_DIR = Path(os.environ.get("USMS_TICKET_ROOT_DIR", _default_root_dir()))
|
||||
ACTS_DIR = Path(os.environ.get("USMS_TICKET_ACTS_DIR", ROOT_DIR / "acts"))
|
||||
REPORTS_DIR = Path(os.environ.get("USMS_TICKET_REPORTS_DIR", ROOT_DIR / "reports"))
|
||||
_PROJECT_ROOT = Path(__file__).resolve().parents[3]
|
||||
ARCHIVE_DIR = Path(os.environ.get("USMS_TICKET_ARCHIVE_DIR", _PROJECT_ROOT / "DB data"))
|
||||
DATA_DIR = Path(os.environ.get("USMS_TICKET_DATA_DIR", ROOT_DIR / "data"))
|
||||
TASKS_FILE = DATA_DIR / "tasks.json"
|
||||
|
||||
|
||||
def ensure_storage_directories() -> None:
|
||||
"""Создать каталоги хранения Ticket при фактической работе с данными."""
|
||||
ROOT_DIR.mkdir(parents=True, exist_ok=True)
|
||||
ACTS_DIR.mkdir(parents=True, exist_ok=True)
|
||||
REPORTS_DIR.mkdir(parents=True, exist_ok=True)
|
||||
ARCHIVE_DIR.mkdir(parents=True, exist_ok=True)
|
||||
DATA_DIR.mkdir(parents=True, exist_ok=True)
|
||||
Reference in New Issue
Block a user