from patch.include import *
from tqdm import tqdm


@app_context(commit=True)
def asset_uiforms():
    """
    Для тестирования патча: ( cd /opt/eva-app; python3 -m patch.202412131447_asset_uiforms )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    print('Запуск патча asset_uiforms')

    with cmfutil.disable_acl(), cmfutil.disable_notify():
        models.CmfAsset.bulk_update(filter=['ui_view_form', '==', 'crud'], values={'ui_view_form': 'asset'})
        cmf_commit()

        models.CmfAssetScheme.bulk_update(filter=['ui_view_form', '==', 'crud'], values={'ui_view_form': 'assetscheme'})
        cmf_commit()

        models.CmfAssetCat.bulk_update(filter=['ui_view_form', '==', 'crud'], values={'ui_view_form': 'assetcat'})
        cmf_commit()

        models.CmfAssetTypeCat.bulk_update(filter=['ui_view_form', '==', 'crud'], values={'ui_view_form': 'assettypecat'})
        cmf_commit()

if __name__ == "__main__":
    asset_uiforms()
