26 июня 2015 г., 7:29

Конструктор запрос

Здравствуйте.
Возникла потребность создать универсальный запрощик для пользователя (можно сказать фильтр) но такой что бы все запросы пользователь создавал сам.
Долго придумывал как это будет выглядеть и наконец то сплагиатил. В моем распоряжении есть узкоспециализированное ПО. Суть приложение сохранение неких объектов в БД и соответственно работа с ними. Так вот, это ПО имеет достаточно интересный конструктор запросов который в моем понимании идеален для моей задачи. http://joxi.ru/l2Z6lwLh530o2J Конструктор состоит из 2х областей 1. GUI интерфейс для создания запроса 2. Текстовое представление запроса
Пользователь может формировать различные условия и выполнять набор операций ( = <> >= <= и т.д.). Далее идет самое интересное. Установка атрибутов запроса joxi.ru/EA4vXlKFz9dVmb Атрибуты позволяют фильтровать Объекты по любому из полей которые имеют отношение к этому объекту. Составленный запрос так же можно конвертировать в текст joxi.ru/gmvgbxYSVbyW2a
Если попробовать приравнять до чего то более родного то выглядеть это должно так Фильтр для пользователей показать пользователя если он имеет доступ к ресурсу идентификатор которого больше 6 И поле 'value' ресурса не пустое И имя группы пользователя = 'member'
Вот примерно так.
Теперь о том как же такое можно сделать. На самом деле я сумбурно все это представляю. 1. нужно сделать привязку к базовому классу в приложении он устанавливается для каждого ресурса явно и в моем случае я думаю это будет также… например через TV ресурса 2. нужен словарь атрибутов… скорее всего это XML файл чем то схож на schema модели MODX 3. парсер запроса для перевода его в текст 4. и собственно создание/выполнение запросов используя getCollectionGraph
Хотелось бы услышать советы по поводу реализации, где что лучше использовать… Очень интересует как верно создать XML файл

Добавить комментарий