Files
marketing/SMM_SYSTEM_README.md
T
2025-09-24 10:10:42 +05:00

9.5 KiB

SMM Система Konturai

Полная реализация системы управления социальными сетями для фронтенда Vue.js приложения.

🚀 Реализованные компоненты

1. Сервисы (Services)

CampaignService

  • Путь: src/service/CampaignService.js
  • Функции: CRUD операции для кампаний
  • API эндпоинты:
    • GET /api/smm/campaigns - получить все кампании
    • GET /api/smm/campaigns/{id} - получить кампанию по ID
    • POST /api/smm/campaigns - создать кампанию
    • PUT /api/smm/campaigns/{id} - обновить кампанию
    • DELETE /api/smm/campaigns/{id} - удалить кампанию

ChannelService

  • Путь: src/service/ChannelService.js
  • Функции: CRUD операции для каналов
  • API эндпоинты:
    • GET /api/smm/channels - получить все каналы
    • GET /api/smm/channels/{id} - получить канал по ID
    • POST /api/smm/channels - создать канал
    • PUT /api/smm/channels/{id} - обновить канал
    • DELETE /api/smm/channels/{id} - удалить канал

ContentService

  • Путь: src/service/ContentService.js
  • Функции: CRUD операции для контента, одобрение, получение сообщений
  • API эндпоинты:
    • GET /api/smm/content - получить весь контент
    • GET /api/smm/content/{id} - получить контент по ID
    • POST /api/smm/content - создать контент
    • PUT /api/smm/content/{id} - обновить контент
    • DELETE /api/smm/content/{id} - удалить контент
    • POST /api/smm/content/{id}/approve - одобрить контент
    • GET /api/smm/content/{id}/messages - получить сообщения контента

PublishingService

  • Путь: src/service/PublishingService.js
  • Функции: Публикация контента, проверка статуса, массовая публикация
  • API эндпоинты:
    • POST /api/smm/publishing/post/{contentId} - опубликовать контент

AnalyticsService

  • Путь: src/service/AnalyticsService.js
  • Функции: Сбор аналитики, получение статистики
  • API эндпоинты:
    • POST /api/smm/analytics/collect-now - запустить сбор аналитики

2. Типы данных

SMM Types

  • Путь: src/types/smm.js
  • Содержит:
    • CampaignStatus - статусы кампаний (PLANNED, ACTIVE, COMPLETED)
    • ChannelType - типы каналов (TELEGRAM, VK, INSTAGRAM)
    • ContentStatus - статусы контента (DRAFT, PENDING_APPROVAL, APPROVED, PUBLISHED, FAILED)
    • DTO классы для всех сущностей

3. Vue компоненты

CampaignList

  • Путь: src/views/smm/CampaignList.vue
  • Функции: Управление кампаниями с полным CRUD
  • Особенности:
    • Таблица с фильтрацией и сортировкой
    • Диалоги создания/редактирования
    • Валидация форм
    • Подтверждение удаления

ChannelList

  • Путь: src/views/smm/ChannelList.vue
  • Функции: Управление каналами
  • Особенности:
    • Поддержка разных типов каналов
    • Управление активностью каналов
    • Валидация API ключей

ContentList

  • Путь: src/views/smm/ContentList.vue
  • Функции: Управление контентом
  • Особенности:
    • Создание и редактирование контента
    • Одобрение контента
    • Публикация контента
    • Просмотр детальной информации

AnalyticsDashboard

  • Путь: src/views/smm/AnalyticsDashboard.vue
  • Функции: Аналитика и статистика
  • Особенности:
    • Статистические карточки
    • Детальная статистика по всем модулям
    • Ручной запуск сбора аналитики

SmmDashboard

  • Путь: src/views/smm/SmmDashboard.vue
  • Функции: Главная панель SMM системы
  • Особенности:
    • Обзор статистики
    • Быстрые действия
    • Последние кампании и контент

4. Маршрутизация

Добавленные маршруты

{
    path: '/smm',
    name: 'smm-dashboard',
    component: () => import('@/views/smm/SmmDashboard.vue'),
    meta: { requiresAuth: true }
},
{
    path: '/smm/campaigns',
    name: 'smm-campaigns',
    component: () => import('@/views/smm/CampaignList.vue'),
    meta: { requiresAuth: true }
},
{
    path: '/smm/channels',
    name: 'smm-channels',
    component: () => import('@/views/smm/ChannelList.vue'),
    meta: { requiresAuth: true }
},
{
    path: '/smm/content',
    name: 'smm-content',
    component: () => import('@/views/smm/ContentList.vue'),
    meta: { requiresAuth: true }
},
{
    path: '/smm/analytics',
    name: 'smm-analytics',
    component: () => import('@/views/smm/AnalyticsDashboard.vue'),
    meta: { requiresAuth: true }
}

5. Навигация

Обновленное меню

Добавлен новый раздел "SMM Система" с пунктами:

  • SMM Панель (/smm)
  • Кампании (/smm/campaigns)
  • Каналы (/smm/channels)
  • Контент (/smm/content)
  • Аналитика (/smm/analytics)

🔧 Технические особенности

Аутентификация

  • Все сервисы используют JWT токены из localStorage
  • Автоматическая проверка авторизации
  • Обработка ошибок аутентификации

Валидация

  • Клиентская валидация всех форм
  • Проверка обязательных полей
  • Валидация форматов данных

Обработка ошибок

  • Централизованная обработка ошибок
  • Toast уведомления для пользователя
  • Логирование ошибок в консоль

UI/UX

  • Современный дизайн с PrimeVue компонентами
  • Адаптивная верстка
  • Интуитивная навигация
  • Подтверждения действий

📋 Использование

1. Управление кампаниями

  1. Перейдите в "SMM Система" → "Кампании"
  2. Нажмите "Создать кампанию" для добавления новой кампании
  3. Заполните форму с обязательными полями
  4. Используйте фильтры и поиск для навигации по кампаниям

2. Управление каналами

  1. Перейдите в "SMM Система" → "Каналы"
  2. Добавьте каналы для Telegram, VK или Instagram
  3. Укажите API ключи для каждого канала
  4. Управляйте активностью каналов

3. Управление контентом

  1. Перейдите в "SMM Система" → "Контент"
  2. Создайте контент, привязав к кампании
  3. Настройте время публикации и приоритет
  4. Одобрите контент для публикации
  5. Опубликуйте контент в каналы

4. Аналитика

  1. Перейдите в "SMM Система" → "Аналитика"
  2. Просматривайте статистику по всем модулям
  3. Запускайте сбор аналитики вручную
  4. Отслеживайте эффективность публикаций

🚀 Готовность к использованию

Система полностью готова к использованию и включает:

  • Все API эндпоинты из документации
  • Полный CRUD для всех сущностей
  • Современный UI с PrimeVue
  • Адаптивный дизайн
  • Обработка ошибок
  • Валидация данных
  • Навигация и маршрутизация

🔗 Интеграция с бэкендом

Система готова к интеграции с бэкендом по адресу:

  • Базовый URL: https://api.konturai.kz/api/smm
  • Аутентификация: Bearer JWT токены
  • Формат данных: JSON
  • Кодировка: UTF-8

Все сервисы автоматически добавляют заголовки аутентификации и обрабатывают ответы API.