Исправлен порядок создания ролей при одобрении заявки

- Перемещено создание системных ролей перед назначением роли владельцу
- Теперь UserRole создается автоматически для владельца при одобрении заявки
- Исправлена ошибка: роль назначалась до создания ролей в БД
This commit is contained in:
2025-12-22 10:44:42 +03:00
parent ccb0c4304f
commit 9b430c7eb0

View File

@@ -355,10 +355,20 @@ class TenantRegistrationAdmin(admin.ModelAdmin):
owner.save()
logger.info(f"Аккаунт владельца создан: {owner.id} ({owner.email})")
# Создаем системные роли пользователей (ПЕРЕД назначением роли владельцу)
logger.info(f"Создание системных ролей для тенанта: {client.id}")
from user_roles.services import RoleService
try:
RoleService.create_default_roles()
logger.info("Системные роли успешно созданы")
except Exception as e:
logger.error(f"Ошибка при создании ролей: {e}", exc_info=True)
# Не прерываем процесс, т.к. это не критично
# Назначаем роль owner владельцу
try:
from user_roles.models import Role
from user_roles.services import RoleService
RoleService.assign_role_to_user(owner, Role.OWNER, created_by=None)
logger.info(f"Роль owner назначена владельцу {owner.email}")
except Exception as e:
@@ -392,17 +402,6 @@ class TenantRegistrationAdmin(admin.ModelAdmin):
logger.error(f"Ошибка при создании статусов заказов: {e}", exc_info=True)
# Не прерываем процесс, т.к. это не критично
# Создаем системные роли пользователей
logger.info(f"Создание системных ролей для тенанта: {client.id}")
from user_roles.services import RoleService
try:
RoleService.create_default_roles()
logger.info("Системные роли успешно созданы")
except Exception as e:
logger.error(f"Ошибка при создании ролей: {e}", exc_info=True)
# Не прерываем процесс, т.к. это не критично
# Создаем системные способы оплаты
logger.info(f"Создание системных способов оплаты для тенанта: {client.id}")
from django.core.management import call_command