[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите продумать структуры бд
pavlGleb
Всем привет. подскажи как лучше реализовать следующее: Есть к примеру несколько пользователей. на сервер загрузили какой-то word-документ. Вопрос как назначить исполнителя на этот документ. К пользователю на страницу приходит что то вроде уведомления о том что этот документ отписали на него. Помогите продумать структуру бд. И еще вопрос для каждого пользователя на сервере папку отдельно заводить где будут храниться отписанные на него документы или можно все-таки в одном месте хранить документы. Прошу совета. спасибо за внимание.
AllesKlar
users // пользователи
u_id;
u_name;
u_еще_что_либо;

documents // документы
d_id;
d_name; // название документа, как оно будет отображаться в таск-листе
d_path; // путь и реальное наименование документа.

tasks // задания
t_id;
u_id; // текущий исполнитель задания
t_title; // заголовок задания
t_deskriptopnd; // описание задания
t_status; // статус задания

task_notices // комментарии к задаче, в процессе выполнения они 100% будут
tn_id
t_id; // id задачи
u_id; // id юзера, который данный комент написал.
tn_text;

tasks_documents // прикрепленные к заданию файлы (любые)
t_id;
d_id;

tasks_history // история выполнения задачи (денормализованая таблица)
h_id;
h_date; // дада/время
t_id; // id задачи
u_id; // кому в данный момент принадлежала
t_status; // в каком статусе в этот момент находилась.


Таким образом, к задаче можно цеплять любое количество файлов.
Файлы можно хранить где угодно, но, лучше всего, конечно, в одном центральном месте, меньше гемороя будет.
Файлы должны быть только для чтения. Можно прикрепить новый файл к задаче (или новую версию файла), но нельзя удалять / изменять уже прикрепленный к задаче файл.
Комментарии к задаче только для чтения.
Один и тот же файл можно цеплять к любому количеству задач.
У задачи можно менять статусы (что является стандартом. Открыта / В обработке / Вопрос к другому сотруднику / Ответ / Закрыто / Отменено и т.п.)
Задачу перенаправлять другому сотруднику (тоже обычное явление, если идет групповая разработка)
И, конечно же, протокол иначе никогда не найдется виновный, почему опять просрали дедлайн smile.gif

_____________
[продано копирайтерам]
pavlGleb
Спасибо большое. очень помог.
Xpund
У нас на работе это выполняет ЕСЭД (Единая система электронного документаоборота) готов поспорить есть бесплатные коробочные решения. Если конечно не принципиально писать самому или нет.

_____________
минус, конечно, иногда полезен, но плюс мне нравиться больше :)
Женский журнал - Жена сказала раскрутить сайт любой ценой (Sorry)
pavlGleb
Да есть но с открытыми исходниками не нашел. А так хотелось подглядеть))
kaww
Цитата (pavlGleb @ 3.06.2015 - 04:01)
Да есть но с открытыми исходниками не нашел.
pavlGleb
Спасибо)
AllesKlar
Sugar crm - мощнейшая система, написана на php, есть бесплатная версия, код открыт.

_____________
[продано копирайтерам]
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.