Учёт заявок

Учёт рекламаций собран в одну базу: 12 231 заявка

Сервисный центр вёл учёт на бумаге и в таблицах, исторический архив лежал в старой программе, номера пересекались. Мы свели три источника в одну базу и перенесли архив без дублей.

Реестр рекламаций: заявки из почты, звонков и формы на сайте в одной таблице, дубли склеены, спорная заявка подсвечена. Данные вымышлены.
  • Три источника
  • Дубли склеены
  • Спорная заявка
Схема экрана, данные условные.
  1. входит Было

    Учёт вели на бумаге, в таблицах и в старой программе, номера заявок в разных источниках пересекались.

  2. в работе Сделали

    Почта, форма на сайте и ручной ввод сведены в одну базу, 9 225 квитанций архива перенесены без дублей.

  3. готово Эффект

    12 231 заявка в единой базе, поиск по клиенту и изделию вместо перебора писем.

Как это работает

Вручную

было: бумага, таблицы, старая программа

Автоматически

стало: одна база

  1. Почта, форма, ввод входит

  2. Сверка номеров в работе

  3. Одна база без дублей готово

Схема: три источника заявок сходятся в одну базу.
Заявки · единая база12:40
  • почта
  • форма на сайте
  • оператор
НомерИсточникСостояние
СЦ-4127почтапринята
СЦ-4128формапринята склеено 2 → 1
СЦ-4129операторв работе
Схема: письмо, звонок и форма на сайте попадают в одну базу заявок, дубли склеиваются. Данные вымышлены.

Ситуация

Заявка появлялась тремя путями: письмом, с формы на сайте и от оператора вручную. Каждый путь жил своей жизнью, история по клиенту собиралась из переписки, а номера заявок в разных источниках совпадали. Отчётность приходилось собирать руками, и любой вопрос «что было у этого клиента в прошлом году» превращался в поиск по почте.

Что сделали

Собрали веб-интерфейс учёта и одну базу на три источника. Номера выдаются двумя независимыми сериями с типом заявки в обозначении, выдача защищена блокировкой: без неё два оператора читают один и тот же последний номер, и второй получает ошибку. Приём заявок с сайта сделали закрытым: доступ по токену, проверка на повтор по ключу запроса, фильтр тестовых отправок, в логах только номера заявок без персональных данных. Исторический архив перенесли идемпотентным импортом: 9 225 квитанций, 130 конфликтов номеров разведены по фиксированному правилу.

Результат в цифрах

12 231 заявка в единой базе после слияния источников. 9 225 перенесённых квитанций, 130 разведённых конфликтов номеров. Заведение заявки с сайта и из почты перестало стоить 5⁠–⁠10 минут ручного ввода.

Ящик с беспорядочными квитанциями, посередине две одинаковые квитанции скреплены зажимом, справа ящик с ровно подшитыми карточками
Архив квитанций переносится в новую базу, повторный прогон импорта дублей не создаёт.

Как проверяли

Импорт прогнали повторно и сверили количество записей: дублей не появилось. Выдачу номеров проверяли на одновременной работе нескольких операторов. Приём с сайта — повторной отправкой той же формы с тем же ключом. Отдельно чинили ошибку блокировки: база отвечала «занято» при настроенном таймауте ожидания, потому что транзакция бралась по умолчанию не на входе, а на первой записи. Транзакции записи теперь открываются сразу, откат сделан переключателем.

Что переносится в ваш проект

Схема «три источника, одна база». Идемпотентный импорт как обязательное требование к переносу архива: повторный прогон не должен создавать дубли, иначе первая же ошибка удваивает базу. Правило разведения конфликтов номеров, зафиксированное до начала переноса. Закрытый приём заявок с сайта и логи без персональных данных.

Конверт, веб-форма и планшет с бланком соединены линиями с одним ящиком картотеки, в нём поднята новая карточка
Почта, форма на сайте и ручной ввод попадают в одну базу заявок.

Похожая задача? Пришлите выгрузку из текущей системы, покажем план переноса и число конфликтов.