Рефакторинг: перенос логики создания временных комплектов в сервис
Изменения: - Удалена функция create_temporary_kit из myproject/orders/views.py - Перенесена в новый сервис myproject/products/services/kit_service.py - Добавлен API endpoint products:api-temporary-kit-create для создания временных комплектов - Обновлены URL-ы соответственно Преимущества: - Логика временных комплектов теперь находится в соответствующем приложении (products) - Упрощена архитектура orders приложения - Сервис может быть переиспользован в других контекстах - Лучшее разделение ответственности между приложениями 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
52
test_api_simple.py
Normal file
52
test_api_simple.py
Normal file
@@ -0,0 +1,52 @@
|
||||
#!/usr/bin/env python
|
||||
"""
|
||||
Простой скрипт для проверки API endpoints через Django shell
|
||||
"""
|
||||
import os
|
||||
import django
|
||||
|
||||
# Настройка Django
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myproject.settings')
|
||||
django.setup()
|
||||
|
||||
from django.test import Client
|
||||
import json
|
||||
|
||||
client = Client()
|
||||
BASE_URL = '/customers/api/search/'
|
||||
|
||||
print("=" * 60)
|
||||
print("ТЕСТ API ENDPOINTS")
|
||||
print("=" * 60)
|
||||
|
||||
# Test 1: Empty query
|
||||
print("\nТЕСТ 1: Пустой запрос")
|
||||
response = client.get(f'{BASE_URL}?q=')
|
||||
print(f"Статус: {response.status_code}")
|
||||
print(f"Ответ: {response.content.decode()}")
|
||||
|
||||
# Test 2: Search by single letter
|
||||
print("\n" + "=" * 60)
|
||||
print("ТЕСТ 2: Поиск по букве 'И'")
|
||||
response = client.get(f'{BASE_URL}?q=И')
|
||||
print(f"Статус: {response.status_code}")
|
||||
data = json.loads(response.content)
|
||||
print(f"Результатов: {len(data.get('results', []))}")
|
||||
if data.get('results'):
|
||||
for item in data['results'][:3]:
|
||||
print(f" - {item.get('text', 'No text')}")
|
||||
|
||||
# Test 3: Search by number
|
||||
print("\n" + "=" * 60)
|
||||
print("ТЕСТ 3: Поиск по цифрам '29'")
|
||||
response = client.get(f'{BASE_URL}?q=29')
|
||||
print(f"Статус: {response.status_code}")
|
||||
data = json.loads(response.content)
|
||||
print(f"Результатов: {len(data.get('results', []))}")
|
||||
if data.get('results'):
|
||||
for item in data['results'][:3]:
|
||||
print(f" - {item.get('text', 'No text')}")
|
||||
|
||||
print("\n" + "=" * 60)
|
||||
print("Готово!")
|
||||
print("=" * 60)
|
||||
Reference in New Issue
Block a user