Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Есть WEB-приложение автоматизированного рабочего места оператора и супервайзера колл-центра - называется VCE. Предназначено для работы оператора с информацией о клиентах организации при обработке телефонных вызовов, а также для осуществления супервайзером наблюдения и контроля за работой ЦОВ. Приложение состоит из фронта на vue.js и бэкэнда на laravel.

Из браузера пользователя приложение устанавливает подключение по WebSocket к стороннему сервису, который JSON сообщением уведомляет браузер пользователя о поступлении телефонного звонка на сотрудника компании. По сообщению о звонке WEB-приложение показывает пользователю блок "Карточка звонка", где пользователь заполняет информацию о собеседнике, нажимает кнопку "Сохранить" и информация из карточки попадает в базу клиентов.

Сейчас происходит такая ситуация, что если нажать несколько раз кнопку "Сохранить" в блоке "Карточка звонка", информация из карточки несколькими строками добавиться в БД (в базу клиентов). Нужно сделать так, чтобы информация не дублировалась в базе, а обновлялась для уже существующей записи в БД.

Изюминки:

  • форма, т.е. атрибуты (параметры) карточки входящего звонка, которая отображается в блоке "карточка звонка" при поступлении вызова, настраиваются в отдельном компоненте
  • среди атрибутов карточки (параметров формы) есть разные типы: текстовое поле, дата-время, списки. А есть такой тип параметра - "Номер телефона" - это есть номер телефона клиента, от которого поступил звонок. Номер телефона клиента, от которого поступил звонок, является уникальным идентификатором записи в бд. Т.е. это и должен быть PRIMARY ключ, по которому происходит оценка, есть уже запись о таком клиенте в базе или нет.
  • в системе может быть несколько форм (карточек) входящего звонка с разным набором параметров (в СУБД это вроде представлено разными таблицами, которые создаются или удаляются и столбцы таблиц создаются и удаляются в зависимости от того, какие параметры формы карточки входящего звонка были определены).
Backend на Laravel. Фронт (думаю, его править не придётся) на vue и nuxt.
3 года назад
kilos777
Антон 
42 годаРоссия
9 лет в сервисе
Был
2 года назад