Мы находимся в бизнесе генерации лидов.Клиенты получают от нас информацию.Они просматривают основную информацию о лидерстве и решают, принять ли инициативу или отклонить.Если они принимают лидерство, им вычитается 1 кредит (за каждое лидерство), и они могут просматривать подробную информацию о лидерстве.
Таким образом, каждое лидерство стоит 1 кредит (который привязан к некоторой денежной стоимости).
У нас есть другой тип клиентов: страховые агенты, агенты по недвижимости, компании-эмитенты кредитных карт, клубы и т. Д. Они платят разные цены за 1 кредит.
Клиенты могут получать предоплату или постоплату.
У меня есть следующие таблицы для всего вышеперечисленного:
Customers (id, name, address, is_postpaid, customer_type_id)
CustomerTypes (id, name, credit_price) // name: insurance agent, real estate agent, etc
TransactionTypes (id, name) // add to or deduct from credit balance
CustomerTransactions (id, customer_id, quantity, transaction_type_id, credit_balance, credit_unit_price, date_created)
Вопросы:
- Что вы думаете об общем подходе?
- Этот дизайн подходит для клиентов с предоплатой.А как насчет постоплаты?
Любые отзывы и критика приветствуются.
Обновление: : я обновил таблицы выше, чтобы включить FK в таблицу Customers.