@JeannieGold
PHP dev

Как хранить реферальные начисления?

Есть таблица balance_transaction, куда записывается приход с пополнений баланса и расход с оплаты заказов. В таблице user есть поле balance, чтобы не приходилось каждый раз пересчитывать баланс.

Нужно добавить реферальную программу, с заказов привлеченных клиентов будут капать процентные начисления. Реферальные начисления являются частью основного баланса клиента, их можно потратить на оплату товаров, но также реферальные начисления клиент может вывести себе на кошелек.
Была добавлена таблица referral_transaction, с полями order_id (для учета прихода % начислений с заказов) и withdrawal_id (для учета расхода с выводов реф начислений).
В таблицу user добавлено поле referral_balance, отражающее текущую сумму реф начислений.

1. Нужно ли в таблицу balance_transaction записывать приход реферальных начислений? Чтобы вывести общий баланс пока суммирую поля user.balance и user.referral_balance.

2. Как быть в ситуации, когда, напр, user.balance = 10 р, user.referral_balance = 50 р, а заказ на 40 р? Записать в balance_transaction расход на 10 р, а в referral_transaction расход на 30 р? Не возникнет ли потом путаницы при таком разбиении оплаты заказа?
  • Вопрос задан
  • 146 просмотров
Пригласить эксперта
Ответы на вопрос 1
@BorisKorobkov Куратор тега MySQL
Web developer
Я бы повесил триггер на referral_transaction при переходе в статус "approved", чтобы добавлялась запись в balance_transaction. И суммировал только balance_transaction.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Wanted. Москва
До 200 000 ₽
div. Ставрополь
от 50 000 до 120 000 ₽
Lachestry Таганрог
от 170 000 до 200 000 ₽
29 нояб. 2024, в 12:12
80000 руб./за проект
29 нояб. 2024, в 11:59
15000 руб./за проект
29 нояб. 2024, в 11:16
40000 руб./за проект