from patch.include import *
from tqdm import tqdm


@app_context(commit=True)
def roadmaps():
    """
    Для тестирования патча: ( cd /opt/eva-app; python3 -m patch.202401241529_roadmaps )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    print('Запуск патча roadmaps')
    for project in tqdm(models.CmfProject.list(filter=['logic_prefix', '==', 'project.base'])):
        roadmaps = models.CmfFolder.get(filter=[['sys_type', '==', 'roadmap'], ['system', '==', True]])
        if roadmaps:
            continue
        roadmaps = models.CmfFolder(tree_parent=project, name="Дорожные карты", sys_type='roadmap', system=True, tree_hidden=True)
        roadmaps.save()
        roadmap = models.CmfRoadmap(tree_parent=roadmaps, name="Дорожная карта 1", system=True) 
        roadmap.save()


if __name__ == "__main__":
    roadmaps()
