from patch.include import *
from tqdm import tqdm


@app_context(commit=True)
def fix():
    """
    Для тестирования патча: ( cd /opt/eva-app; python3 -m patch.202403221154_rename_pr_admin )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    from cmf.system_data import scaffold_project_perm, scaffold_project_role
    # print('scaffold_project_perm')
    # scaffold_project_perm()
    # commit_with_event()

    print('scaffold_project_role')
    scaffold_project_role()
    commit_with_event()

    print('Remove unsopported PPP-PR-DEV-TOOLS')
    project_perm = models.CmfProjectPermPermission.get(code='PPP-PR-DEV-TOOLS')
    if project_perm:
        for rule in models.CmfProjectPermSchemeRule.list(project_permission=project_perm, include_deleted=True):
            rule.delete(TEXKOM_db_delete=True, force=True)
        project_perm.delete(TEXKOM_db_delete=True, force=True)

if __name__ == "__main__":
    fix()
