С первого прочтения не понял :) надо будет схемку вечерком накидать.
Я тут подумал, что модель "День приема" не должна быть привязана через ФК к одному врачу, будет плодиться слишком много ненужных записей . Скорее, правильно сделать её независимой, а уже "Время приема" связывать через ФК с врачом, пациентом и днем приема!
Т.е. это можно описать схематически так:
класс День:
день недели = (селект из названий дней недели, когда есть прием)
дата = ДатаФилд
класс Пациент:
имя = ФИО
идентификация = паспорт, права или что у него есть
дата рождения = ДатаФилд
адрес
класс Врач:
имя = ФИО врача
класс Время приема:
кто врач = ФК на Врача
кто пациент = ФК на Пациента
в какой день = ФК на День
время приема = временной промежуток от начала до конца приема у врача.
время свободно = да\нет ( по умолчанию да)
У каждого врача, где-то должен быть сохранен шаблон его дней приема и в какие часы он принимает. Возможно это тоже можно сделать в модели Врача или через отдельную модель. Тогда раз в неделю или раз в месяц, по этому шаблону создаются пустые записи, которые потом, в процессе записей пациентов к врачу, заполняются именем Пациента и меняется флаг доступности.
Надеюсь, описал понятно :)
Updated 26 Jan. 2018, 13:29 by oleg_n.