monkey patched asset categories

This commit is contained in:
Ali 2026-01-10 03:33:56 +04:00
parent 0aadaf202d
commit 7db5238874
1 changed files with 76 additions and 10 deletions

View File

@ -98,26 +98,35 @@ def diagnose():
# 6. Проверка фоновых задач # 6. Проверка фоновых задач
print("\n6. Проверка фоновых задач:") print("\n6. Проверка фоновых задач:")
try: try:
import redis
from rq import Queue from rq import Queue
from frappe.utils.background_jobs import get_redis_conn
q = Queue('default', connection=get_redis_conn()) # Get redis connection
jobs = q.jobs redis_server = frappe.conf.redis_queue or "redis://localhost:11000"
conn = redis.from_url(redis_server)
q = Queue('default', connection=conn)
jobs = list(q.jobs)
if jobs: if jobs:
print(f" В очереди задач: {len(jobs)}") print(f" В очереди задач: {len(jobs)}")
for job in jobs: for job in jobs[:5]: # Show first 5
print(f" - {job.func_name}") print(f" - {job.func_name}")
else: else:
print(" Очередь пуста") print(" Очередь пуста")
# Проверка failed jobs # Проверка failed jobs
failed_q = Queue('failed', connection=get_redis_conn()) try:
failed_jobs = failed_q.jobs failed_q = Queue('failed', connection=conn)
failed_jobs = list(failed_q.jobs)
if failed_jobs: if failed_jobs:
print(f"\n FAILED задач: {len(failed_jobs)}") print(f"\n FAILED задач: {len(failed_jobs)}")
for job in failed_jobs: for job in failed_jobs[:5]: # Show first 5
print(f"{job.func_name}: {job.exc_info}") print(f"{job.func_name}")
if hasattr(job, 'exc_info') and job.exc_info:
print(f" Error: {str(job.exc_info)[:100]}")
except Exception as e:
print(f" Не удалось проверить failed jobs: {str(e)}")
except Exception as e: except Exception as e:
print(f" Ошибка проверки очереди: {str(e)}") print(f" Ошибка проверки очереди: {str(e)}")
@ -148,3 +157,60 @@ def force_create():
print("\n" + "=" * 80) print("\n" + "=" * 80)
print("СОЗДАНИЕ ЗАВЕРШЕНО") print("СОЗДАНИЕ ЗАВЕРШЕНО")
print("=" * 80 + "\n") print("=" * 80 + "\n")
def test_hook():
"""Тестирует вызов хука setup_wizard_complete напрямую"""
print("\n" + "=" * 80)
print("ТЕСТ ХУКА setup_wizard_complete")
print("=" * 80 + "\n")
# Проверяем, что хук зарегистрирован
hooks = frappe.get_hooks("setup_wizard_complete")
print(f"Зарегистрированные хуки: {hooks}\n")
if not hooks:
print("✗ Хук НЕ зарегистрирован в hooks.py!")
return
# Получаем первую компанию
companies = frappe.get_all("Company", limit=1)
if not companies:
print("✗ Компании не найдены! Создайте компанию сначала.")
return
company_name = companies[0].name
print(f"Компания найдена: {company_name}\n")
# Вызываем хук напрямую с тестовыми аргументами
print("Вызываем хук напрямую...\n")
try:
from jey_erp.setup.setup_wizard_handler import setup_wizard_complete_handler
test_args = {
"company_name": company_name,
"country": "Test",
"currency": "AZN"
}
setup_wizard_complete_handler(test_args)
print("\n✓ Хук вызван успешно!")
print("\nПроверьте Error Log для записей с префиксом 'AC'")
print("Также проверьте фоновые задачи: bench --site <site> console")
print(">>> from rq import Queue; import redis")
print(">>> conn = redis.from_url('redis://localhost:11000')")
print(">>> q = Queue('default', connection=conn)")
print(">>> [job.func_name for job in q.jobs]")
except Exception as e:
import traceback
print(f"\n✗ Ошибка при вызове хука!")
print(f"Error: {str(e)}")
print(f"\nTraceback:\n{traceback.format_exc()}")
print("\n" + "=" * 80)
print("ТЕСТ ЗАВЕРШЕН")
print("=" * 80 + "\n")