Joywork/sql/object_fields.sql
2026-05-22 21:21:54 +03:00

33 lines
2.1 KiB
SQL

DROP TABLE IF EXISTS `object_fields`;
CREATE TABLE IF NOT EXISTS `object_fields` (
`id` INT(11) NOT NULL COMMENT 'PK',
`name` varchar(64) NOT NULL COMMENT 'Название произвольного поля',
`title` varchar(64) NOT NULL COMMENT 'Заголовок произвольного поля (для XML)',
`type` TINYINT(4) DEFAULT NULL COMMENT 'Тип поля: 0 - text, 1 - number, 2 - select, 3 - multi select, 4 - checkbox, 5 - textarea',
`params` TEXT NULL COMMENT 'Параметры произвольного поля',
`order` tinyint(4) NOT NULL COMMENT 'Порядок сортировки',
`agency_id` mediumint(9) NOT NULL COMMENT 'ИД агентства, которому принадлежит поле',
`is_available` TINYINT(4) DEFAULT 0 COMMENT 'Флаг, поле доступно для отображения в карточке',
`is_active` TINYINT(4) DEFAULT 0 COMMENT 'Флаг, поле доступно для выгрузки в XML',
`created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Дата/время создания (добавления) поля',
`created_by` mediumint(9) NOT NULL COMMENT 'Пользователь, который добавил произвольное поле',
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Дата/время обновления (редактирования) поля',
`updated_by` mediumint(9) NOT NULL COMMENT 'Пользователь, который изменил произвольное поле'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_general_ci COMMENT='Таблица произвольных полей объектов';
ALTER TABLE `object_fields`
ADD PRIMARY KEY (`id`),
ADD KEY `name` (`name`),
ADD KEY `title` (`title`),
ADD KEY `type` (`type`),
ADD KEY `params` (`params`(255)),
ADD KEY `order` (`order`),
ADD KEY `agency_id` (`agency_id`),
ADD KEY `active` (`is_available`, `is_active`),
ADD KEY `created` (`created_at`, `created_by`),
ADD KEY `updated` (`updated_at`, `updated_by`);
ALTER TABLE `object_fields`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;