|
Помогите выбрать структуру БД
|
|||
---|---|---|---|
#18+
Доброе утро! Есть сайт технической поддержки. И есть пользователи, которые оставляют на нем заявку в компанию. На нем есть таблица с полями: id_client(id пользователя AI, PK), name_client(Имя потльзователя), status(статус - наверное лучше сделать автоинкремент), date_r(дата регистрации). Статусы у всех пользователей будут разные. Например: у пользователя 1: открыто, отменено, закрыто, передано, принято. у пользователя 2: открыто, отменено, закрыто, исполнено, в ожидании. Статусы в любое время могут добавляться( не удаляются). Я сделал так: Вторая таблица такая: id_status, id_client, open, close, cancelled, sent, accepted. id_status - AI PK, id_client - указывает на первую таблицу на пользователя, другие поля сами статусы и имеют значение enum: '0', '1' - в зависимости присутствует для пользователя ставиться 0 или 1. Когда необходимо добавлять статус какому либо клиенту сначала ставлю 1 для нужного пользователя, а для всех других проставляю 0. Может можно реализовать попроще? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2018, 10:09 |
|
Помогите выбрать структуру БД
|
|||
---|---|---|---|
#18+
tarabukinМожет можно реализовать попроще? Тебе не проще нужно, тебе правильнее нужно, ибо твой способ - полный бред. Делай полную историю статусов: табличка (пользователь, статус, дата/время перехода в него). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.01.2018, 12:57 |
|
Помогите выбрать структуру БД
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Не очень понял, будет типа такого?: user - id_status - time 1 -------- 1 -------- время 1 -------- 2 -------- время 1 -------- 4 -------- время 2 -------- 1 -------- время 2 -------- 5 -------- время 2 -------- 2 -------- время 3 -------- 1 -------- время 3 -------- 2 -------- время 3 -------- 4 -------- время ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2018, 07:56 |
|
Помогите выбрать структуру БД
|
|||
---|---|---|---|
#18+
Уточнение: у каждого клиента должны быть видны несколько статусов для выбора (только ему принадлежащие), а у другого клиента (другие статусы, принадлежащие именно ко второму клиенту) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2018, 08:21 |
|
Помогите выбрать структуру БД
|
|||
---|---|---|---|
#18+
tarabukinУточнение: у каждого клиента должны быть видны несколько статусов для выбора (только ему принадлежащие), а у другого клиента (другие статусы, принадлежащие именно ко второму клиенту) фигня какая-то... у всех клиентов должен быть один стандартный набор статусов заявок, и меняет их не клиент а служба поддержки... В идеале такой: 1. Подана (проставляется автоматически при подаче заявки), пока висит этот статус, значит к выполнению заявки служба поддержки еще даже не приступала. 2. В обработке - проставляет служба поддержки в момент начала выполнения заявки. 3. Выполнена или Отклонена (результат выполнения заявки), проставляется тоже службой поддержки, во втором случае указывается еще и причина отклонения заявки. В зависимости от сложности заявки п.2 может отсутствовать вообще... Если клиент тупой и не может правильно сформулировать свою заявку, служба поддержки отклоняет его заявку с указанием причин отклонения, и клиент должен оформить еще одну заявку - правильную, с учетом замечаний по предыдущей заявки... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2018, 12:50 |
|
Помогите выбрать структуру БД
|
|||
---|---|---|---|
#18+
ну и да, историю лучше таки хранить... Dimitry SibiryakovДелай полную историю статусов: табличка (пользователь, статус, дата/время перехода в него). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.01.2018, 13:02 |
|
|
start [/forum/topic.php?fid=32&msg=39583628&tid=1540089]: |
0ms |
get settings: |
13ms |
get forum list: |
16ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
162ms |
get topic data: |
9ms |
get forum data: |
1ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 270ms |
0 / 0 |