from patch.include import *
from tqdm import tqdm


@app_context(commit=True)
def patch():
    """
    Для тестирования патча: ( cd /opt/crm; python3 -m patch.20220XXXXXXX_PATCHNAME )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    for group in tqdm(models.CmfPersonGroup.list(filter=['ext_id', '!=', None], fields=['ext_id'])):
        if group.ext_id and '::' not in group.ext_id:
            group.ext_id = f"::{group.ext_id}::"
            group.save(only_data=True)


if __name__ == "__main__":
    patch()
