Проверьте, что центовые счета делятся на 100, а долларовые остаются как есть
📊 SQL запрос для проверки
-- Проверка отображения данных на сайте
-- Сравниваем данные в базе с тем, что должно отображаться на сайте
SELECT
ns.account_number AS 'Счет',
CASE WHEN ns.is_cent_account = 1 THEN 'Цент' ELSE 'Доллар' END AS 'Тип',
ns.is_cent_account AS 'is_cent_account',
-- Данные из базы (оригинальные)
ast.daily_profit AS 'База: daily_profit',
ast.daily_swap AS 'База: daily_swap',
ast.yesterday_profit AS 'База: yesterday_profit',
ast.yesterday_swap AS 'База: yesterday_swap',
-- Что должно отображаться на сайте
CASE
WHEN ns.is_cent_account = 1 THEN ROUND(ast.daily_profit / 100, 2)
ELSE ast.daily_profit
END AS 'Сайт: daily_profit',
CASE
WHEN ns.is_cent_account = 1 THEN ROUND(ast.daily_swap / 100, 2)
ELSE ast.daily_swap
END AS 'Сайт: daily_swap',
CASE
WHEN ns.is_cent_account = 1 THEN ROUND(ast.yesterday_profit / 100, 2)
ELSE ast.yesterday_profit
END AS 'Сайт: yesterday_profit',
CASE
WHEN ns.is_cent_account = 1 THEN ROUND(ast.yesterday_swap / 100, 2)
ELSE ast.yesterday_swap
END AS 'Сайт: yesterday_swap',
-- Проверка: если есть свопы, показываем их
CASE
WHEN ast.daily_swap != 0 OR ast.yesterday_swap != 0 THEN 'Есть свопы'
ELSE 'Свопы = 0'
END AS 'Статус свопов'
FROM notification_settings ns
LEFT JOIN (
SELECT account_number, daily_profit, daily_swap, yesterday_profit, yesterday_swap
FROM account_statistics
WHERE date = CURDATE()
) ast ON ns.account_number = ast.account_number
WHERE ast.daily_profit IS NOT NULL
ORDER BY ns.is_cent_account DESC, ns.account_number;
🎯 Ожидаемые результаты
Центовые счета (делятся на 100)
Долларовые счета (как есть)
Тип счета
База: daily_profit
Сайт: daily_profit
База: yesterday_profit
Сайт: yesterday_profit
База: yesterday_swap
Сайт: yesterday_swap
Правильно?
Центовый
361.17
3.61
792.66
7.93
-73.34
-0.73
✅ Да
Долларовый
18.63
18.63
18.63
18.63
-1.52
-1.52
✅ Да
🔍 Проверка конкретного счета 37242727
-- Детальная проверка счета 37242727
SELECT
'ПРОВЕРКА СЧЕТА 37242727' AS 'Тип проверки',
ns.account_number,
ns.is_cent_account,
ast.yesterday_profit AS 'База: yesterday_profit (центы)',
ast.yesterday_swap AS 'База: yesterday_swap (центы)',
ROUND(ast.yesterday_profit / 100, 2) AS 'Сайт: yesterday_profit (доллары)',
ROUND(ast.yesterday_swap / 100, 2) AS 'Сайт: yesterday_swap (доллары)',
-- Итого что должно быть на сайте
ROUND(ast.yesterday_profit / 100, 2) AS 'Прибыль_вчера_на_сайте',
ROUND(ast.yesterday_swap / 100, 2) AS 'Свопы_вчера_на_сайте'
FROM notification_settings ns
LEFT JOIN (
SELECT account_number, daily_profit, daily_swap, yesterday_profit, yesterday_swap
FROM account_statistics
WHERE date = CURDATE()
) ast ON ns.account_number = ast.account_number
WHERE ns.account_number = '37242727';
📝 Что проверить:
Долларовые счета: Сайт = База (без изменений)
Центовые счета: Сайт = База ÷ 100 (поделено на 100)
Свопы: Отображаются отдельно с правильными знаками
Точность: Все значения округлены до 2 знаков после запятой
⚠️ Если что-то неправильно:
Проверьте настройки is_cent_account в таблице notification_settings
Убедитесь, что данные в account_statistics актуальные (сегодняшняя дата)
Проверьте, что функция adjustCentAccountData() работает правильно