docs: добавить планы по API ключам и отладке статистики

- API_KEYS_IMPLEMENTATION_PLAN.md - план реализации системы API ключей
- API_KEYS_SECURITY_PLAN.md - план безопасности API ключей
- API_KEYS_SIMPLE_PLAN.md - упрощенный план API ключей
- DEBUG_SELLER_STATISTICS.md - отладка статистики селлеров
- FIX_API_KEYS_SAVING.md - исправление сохранения API ключей

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Veronika Smirnova
2025-09-18 21:31:27 +03:00
parent 3efc387308
commit b6935428ab
5 changed files with 1124 additions and 0 deletions

View File

@ -0,0 +1,77 @@
# 🔧 ИСПРАВЛЕНИЕ СОХРАНЕНИЯ API КЛЮЧЕЙ
## ПРОБЛЕМА
В настройках пользователя (вкладка API) поля для API ключей есть, но они не сохраняются в БД.
## ПРИЧИНА
В функции `handleSave` в user-settings.tsx отсутствует логика для сохранения API ключей через мутацию `ADD_MARKETPLACE_API_KEY`.
## РЕШЕНИЕ
### 1. Добавить в handleSave после сохранения профиля:
```typescript
// Сохраняем API ключи маркетплейсов
if (formData.wildberriesApiKey) {
await apolloClient.mutate({
mutation: ADD_MARKETPLACE_API_KEY,
variables: {
input: {
marketplace: 'WILDBERRIES',
apiKey: formData.wildberriesApiKey,
validateOnly: false,
},
},
})
}
if (formData.ozonApiKey) {
await apolloClient.mutate({
mutation: ADD_MARKETPLACE_API_KEY,
variables: {
input: {
marketplace: 'OZON',
apiKey: formData.ozonApiKey,
clientId: formData.ozonClientId, // если требуется
validateOnly: false,
},
},
})
}
```
### 2. Импортировать мутацию:
```typescript
import { UPDATE_USER_PROFILE, UPDATE_ORGANIZATION_BY_INN, ADD_MARKETPLACE_API_KEY } from '@/graphql/mutations'
```
### 3. Обновить GET_ME запрос после сохранения:
```typescript
// Обновляем кэш с новыми API ключами
await apolloClient.refetchQueries({
include: [GET_ME],
})
```
## АЛЬТЕРНАТИВНОЕ РЕШЕНИЕ
Создать отдельную страницу управления API ключами с:
- Валидацией ключей перед сохранением
- Показом статуса интеграции
- Возможностью удаления ключей
- Тестированием соединения
## ТЕКУЩИЙ СТАТУС ПОЛЬЗОВАТЕЛЕЙ
Пользователи МОГУТ добавлять API ключи через:
1. Регистрацию (если добавлена логика)
2. GraphQL мутацию напрямую
3. Prisma Studio (администратор)
НО НЕ МОГУТ через UI настроек!