статусы и проверка

Статусы записей и проверка после загрузки

Статусы в таблице guests_load_raw_data

При загрузке у каждой записи проставляется один из статусов:

Статус Описание
new Новый запрос на добавление
success Успешно добавлен
error Ошибка при выполнении запроса
double Гость с таким номером уже существует
update Повторный запрос на добавление (выставляется вручную)
hard_update Принудительная запись (перезапись) информации о госте

Скрипт загрузки забирает записи со статусами new и replay. Чтобы повторно обработать «зависшие» или существующие записи, статус меняется вручную на update / hard_update.

Изменение статуса

Чтобы принудительно перезаписать гостей со статусом double:

UPDATE guests_load_raw_data
SET status = 'hard_update'
WHERE guests_load_raw_data.point = [ПОИНТ] AND status = 'double';

Проверка после загрузки

После загрузки нужно убедиться, что у гостей, карт и кошельков выставлен провайдер remarked.

1. Провайдер карт в cl_cardholders

SELECT * FROM `cl_cardholders` WHERE `point` = [поинт] AND `provider` != 'remarked';

UPDATE `cl_cardholders` SET `provider` = 'remarked'
WHERE `point` = [поинт] AND `provider` != 'remarked';

2. Провайдер гостей в cl_guests

SELECT * FROM `cl_guests` WHERE `point` = [поинт] AND `provider` != 'remarked';

UPDATE `cl_guests` SET `provider` = 'remarked'
WHERE `point` = [поинт]
  AND `provider` IN ('plaziuscab','iiko','locards','traktir','sbis','tillypad','primehill','rkeeper','fastoperator','mafia_loyalty');

3. Провайдер кошельков в cl_wallets

-- Проверка чужих провайдеров
SELECT * FROM `cl_wallets` WHERE `point` = [поинт] AND `provider` != 'remarked' AND `type_id` > '0';

-- Исправление
UPDATE `cl_wallets` SET `provider` = 'remarked'
WHERE `point` = [поинт] AND `provider` != 'remarked' AND `type_id` > '0';

4. Дубли кошельков

SELECT `guest_id`, COUNT(`id`) AS `total`
FROM `cl_wallets`
WHERE `point` = [поинт] AND `type_id` = [id кошелька]
GROUP BY `guest_id`
HAVING `total` > 1;