Разработка проекта базы данных (схемы данных) для MySQL

Бюджет: по договоренности
Заказчик выбрал исполнителя:
Виталий Филиппенко  
Требуется разработка проекта базы данных (оболочку мы пишем самостоятельно на PHP) для управления детскими спортивными секциями. 
Сеть детских спортивных секций по определенному виду спорта (он всего один) работает с филиалами во многих городах. 

Что должна хранить и позволять делать база данных:
1. Хранить пользователей и их роли. Администраторы всех филиалов, администраторы каждого филиала (они могут управлять лишь своим филиалом), оператор филиала (заводит сведения о посещаемости, о клиентах и их детях).
2. Учет клиентов – карточки клиентов. ФИО родителя, контакты родителя (сотовый, емайл, дополнительный сотовый и его владелец), ФИО ребёнка, сведения о ребенке (возраст, пол, примечания), сведения о предоставленной справке (представлена да/нет, выходные данные справки – больница, врач, заключение). Признак лояльности (постоянный клиент да/нет, персональные скидки – описание текстом, примечания о клиенте вообще). Номер и дата заключения договора, тип договора (разовые занятия, абонемент). Для договора с разовыми занятиями – количество оплаченных занятий. Нужно как-то учесть, что договоры на разовые занятия могут заключаться постоянно (один закончился – заключили следующий), нужно хранить как-то информацию о предыдущем договоре, чтобы правильно исчислять оставшееся количество тренировок и выводить уведомления оператору. Возможно, следует разделить в разные таблицы родителей и детей, но это на усмотрение исполнителя. 
3. Регистрация на пробные тренировки. Перед регистрацией на пробную тренировку оператор вводит фамилию родителя и видит, посещал ли уже клиент пробную тренировку (проверка реализуется нами самими на ПХП). Следует, соответственно, решить, как хранить ФИО родителя с учётом этой особенности. Важно знать, откуда о нас узнал пришедший клиент (варианты будут перечислены исполнителю). 
4. УЧЁТ ПОСЕЩАЕМОСТИ – главное, что требуется от этой системы. Количество занятий не определено и заведомо неизвестно, поэтому должна быть возможность их добавлять, вести учет посещаемости по каждому ребёнку. 
5. Учет доходности каждой секции (филиала). Для этого где-то следует хранить стоимость договора. Она может быть различной, поэтому её будет вводить оператор. 
6. Учёт филиалов. Каждый филиал имеет полный почтовый адрес (индекс, город, улица, дом, офис и пр.), телефон, ФИО директора и его контакты, ФИО бухгалтера и его контакты, свой код (устанавливаем его сами – например, для Москвы – МСК1, МСК2, МСК3 и т.д.), операторов, администратора. 

Вся система должна представлять собой единый связный механизм, который позволит нам делать все виды выборок из базы. Всё должно быть чётко хранимо и понятно. Какой ребенок в каком филиале занимается, кто у него родитель, оплачено ли текущее занятие и пр. Для этого и нужен грамотный дизайн БД.

Все права на разработанное решение с момента оплаты работ переходят к Заказчику. 

ВАЖНО!!! В ОТВЕТЕ ДОЛЖНО БЫТЬ ПРЕДЛОЖЕНИЕ ЦЕНЫ!!! БЕЗ ПРЕДЛОЖЕННОЙ ЦЕНЫ НАЗНАЧЕНИЕ В КАНДИДАТЫ НЕ ПРОИЗВОДИТСЯ!!!
Опубликован 14.02.2016 в 10:35 Последнее изменение: 14.02.2016 в 10:38

Выберите способ верификации:

Обновите страницу после прохождения верификации.