powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / нужны идеи: биллинг, тарифные планы
4 сообщений из 4, страница 1 из 1
нужны идеи: биллинг, тарифные планы
    #36215820
барбаселла
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дано:

предположим, есть некие users (user_id, name).
есть товар - электронные книги, музыка.
юзер авторизовался и может купить:

доступ к книгам и музыке
на 1 месяц - 100р
на 2 месяца - 150р
на 3 месяцов - 200р
и т.д.

при этом юзер может бесплатно заморозиться (например оплатил 1 год, из них на 2 недели в отпуск ушел).

юзер платит деньги, задача учитывать позволенное ему время читать.

какие сущности в этом случае вы бы выделили?
как организовали бы структуры данных?


мне видится как-то так: 4 таблицы
users (id, name)
tariff_plan(id, name, cost, months)
my_tariff (id, user_id, when_bought, tariff_id)
periods(id, start_date, stop_date, status)


ситуация:
01.08.09 куплен тариф на 1 месяц - 100р,
5.08.09 куплен тариф на 2 месяц - 150р

в таблицах:
users
1, 'вася'

tariff_plan(id, name, cost, months)
1, на 1 месяц, 100р, 1
2, на 2 месяца, 150р, 2
3, на 3 месяцов, 200р, 3

my_tariff
1, 01.08.09, 1
2, 05.08.09, 2

(куплено два месяца доступа)
periods(id, start_date, stop_date, status)
1, 01.08.09, 31.08.09, A (активный)
2, 01.09.09, 30.09.09, A (активный)
3, 01.10.09, null, N (неактивный)


если добавить сюда заморозку чела (например с 10.08.09 по 15.08.09), то

periods(id, start_date, stop_date, status)
1, 01.08.09, 10.08.09, A (активный)
2, 10.08.09, 15.08.09, F (заморожен)
3, 15.08.09, 05.09.09, A (активный)
4, 05.09.09, 05.10.09, A (активный)
5, 05.10.09, null, N (неактивный)



вот как то так
прошу высказать мнения.


или же есть вариант отказаться от таблицы периодов, и держать текущий статус и кол-во дней в таблице users.
но что-то в таком варианте сильно настораживает.
...
Рейтинг: 0 / 0
нужны идеи: биллинг, тарифные планы
    #36216869
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда сдача диплома ?
...
Рейтинг: 0 / 0
нужны идеи: биллинг, тарифные планы
    #36217624
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С уважением, Naf
1. тарифы - поле: дата - тарифы могут меняться
2. значения тарифа, поля: тариф-ссылка, предел дней, значение - рубли
3. клиенты
4. оплаты (дата, клиент-ссылка, значение тарифа - ссылка, сумма)
5. заявки на блокирование (дата, клиент-ссылка, дата окончания)
6. таблица расчета: (дата начала периода, дата окончания периода, признак блокирования (булево), клиент-ссылка, регистратор - ссылка на оплату или заявку блокирования)

при оплате проверяется, что период не отражен в таблице расчета по данному клиенту, заносится запись в таблицу расчета
при заявки блокирования проверяется, что период отражен в таблице расчета по данному клиенту и нет блокироваия, заносится 2 записи в таблицу расчета: на данный период с признаком блокирования + на такой же за последним оплаченным продление оплаты.
таким образом на некоторые даты будет приходится 2 записи в таблице расчета: оплаты и блокирования - блокирование "вытесняет" оплату
...
Рейтинг: 0 / 0
нужны идеи: биллинг, тарифные планы
    #36218714
барбаселла
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSVмне так не хватает внимания! обнимите меня все, пожалуйста:(


NafС уважением, Naf


спасибо за мнение, товарищ
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / нужны идеи: биллинг, тарифные планы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]