import frappe


def execute():
    """
    Патч для создания категорий активов на существующих установках.
    Выполняется при bench migrate после обновления кода.
    """
    # Проверяем, что патч не был уже выполнен
    system_categories = [
        "Binalar, tikililər və qurğular",
        "Maşınlar və avadanlıqlar",
        "Yüksək texnologiyalar məhsulu olan hesablama texnikası",
        "Nəqliyyat vasitələri",
        "Digər əsas vəsaitlər",
        "Düzən torpaqlar",
        "Dağ torpaqlar",
        "Orta və yüksək dağ torpaqlar",
        "Şəhərin mövcud hüdudundan kənarda olan kənd təsərrüfatı təyinatlı torpaqlar",
        "Sənaye, tikinti, nəqliyyat, rabitə, ticarət-məişət xidməti və digər xüsusi təyinatlı torpaq sahələri"
    ]

    # Если хотя бы одна категория существует, считаем что патч уже выполнен
    if frappe.db.exists("Asset Category", {"asset_category_name": system_categories[0]}):
        return

    # Проверяем, что компания существует
    companies = frappe.get_all("Company", limit=1)
    if not companies:
        return  # Нет компании - патч не нужен

    company_name = companies[0].name

    # Импортируем и запускаем создание
    from jey_erp.custom.create_asset_categories import create_asset_categories_for_company
    create_asset_categories_for_company(company_name)
