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