Исправлен порядок создания ролей при одобрении заявки
- Перемещено создание системных ролей перед назначением роли владельцу - Теперь UserRole создается автоматически для владельца при одобрении заявки - Исправлена ошибка: роль назначалась до создания ролей в БД
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user