Исправление ошибки POS: разрешено добавление в корзину для PlatformAdmin (использование session_id вместо пользователя). Включены изменения по AI названиям букетов.

This commit is contained in:
2026-01-22 20:29:05 +03:00
parent 01873be15d
commit 22e300394b
13 changed files with 739 additions and 20 deletions

View File

@@ -1800,3 +1800,46 @@ def bulk_update_categories(request):
'success': False,
'message': f'Произошла ошибка: {str(e)}'
}, status=500)
# ========== Генератор названий букетов ==========
from django.views import View
from ..models import BouquetName
from ..services import BouquetNameGenerator
class RandomBouquetNamesView(View):
"""Возвращает случайные названия из базы"""
def get(self, request):
count = int(request.GET.get('count', 3))
# Ограничиваем максимум до 100
count = min(count, 100)
names = list(BouquetName.objects.order_by('?')[:count].values_list('name', flat=True))
return JsonResponse({'names': names})
class GenerateBouquetNamesView(View):
"""Генерирует новые названия через LLM и сохраняет в базу"""
def post(self, request):
count = int(request.POST.get('count', 10))
# Ограничиваем максимум до 500
count = min(count, 500)
generator = BouquetNameGenerator()
success, msg, data = generator.generate_and_store(
count=count,
language='russian'
)
if success:
return JsonResponse({
'success': True,
'message': msg,
'count': len(data.get('names', []))
})
else:
return JsonResponse({'success': False, 'error': msg}, status=400)