Первое сообщение, пожалуйста, будьте добры.
ПРИМЕЧАНИЕ. Я просмотрел запись № 20856 (как реализовать тегирование), но чувствую, что это не так, потому что метод тегов, который я рассматриваю, зависит от конкретной организации в моем приложении. Я надеюсь, что кто-то может подтвердить направление, в котором я иду, или указать другие варианты.
(справочная информация) Мы создаем веб-приложение, которое позволяет различным организациям видеть свои ресурсы в разных местах. В базе данных хранятся пользователи, организации, сайты и элементы, и есть ссылки с сайтов и элементов на организации, которые позволяют нам определять, какие элементы / сайты показывать каким пользователям (в зависимости от их организации).
Обычно две (или более) организации хотят использовать портал для проверки состояния запасов (например) виджета A на складе в Лос-Анджелесе. Эта часть в порядке. Однако различные организации также отслеживают уникальную информацию о виджете А. Например, организация 1 хочет отслеживать цвет, объем и основного поставщика для каждого элемента. Орг 2 хочет отслеживать цвет, тип запаса, инвентарный цикл, код покупателя для каждого товара. Я хочу избежать ситуации, когда мне нужно загрузить таблицу со всеми этими возможными полями, а затем выяснить, какие организации используют какие поля.
Я подумываю об использовании чего-либо в соответствии с тегами, но добавление категории тегов и определение категории тегов на уровне организации. Итак, базовая структура таблицы будет выглядеть примерно так:
Таблица: OrgTagCategory
Поля: OrgId, TagCategoryId, CategoryTitle
Таблица: OrgTag
Поля: OrgId, TagCategoryId, TagId, TagTitle
Таблица: OrgItemTag
Поля: OrgId, ItemId, TagId
Тогда, когда пользователь войдет в основную панель мониторинга, сетка будет включать в себя соответствующие поля элементов в виде столбцов в сетке. Таким образом, из вышеприведенного примера Org 1 будет видеть Item #, Description (будет показано для всех), цвет, объем и основного поставщика. Будет отображаться Org 2 № изделия, описание, цвет, тип запаса, инвентарный цикл, код покупателя.
Я обдумываю это или есть более простой способ сделать это, которого мне не хватает? Все мысли / отзывы искренне приветствуются.