SP
Size: a a a
SP
SC
У
IZ
SP
SP
SC
SP
A
SC
SC
SP
SP
LE
SC
SP
CREATE TABLE `agreements` (
`agrm_id` int NOT NULL AUTO_INCREMENT COMMENT 'Идентификатор договора',
`uid` int NOT NULL COMMENT 'Идентификатор пользователя',
`oper_id` int NOT NULL COMMENT 'Идентификатор оператора, предоставляющего услуги',
`number` varchar(128) DEFAULT NULL COMMENT 'Номер договора',
`date` date NOT NULL DEFAULT '0000-00-00' COMMENT 'Дата договора',
`balance` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Текущий баланс лицевого счета в валюте, определяемой cur_id',
`credit` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Разрешенный кредит в валюте, определяемой cur_id',
`installments` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Сумма рассрочки в валюте, определяемой cur_id',
`cur_id` int DEFAULT NULL COMMENT 'Идентификатор валюты лицевого счета',
`code` varchar(40) DEFAULT NULL COMMENT 'Код оплаты',
`archive` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Договор удален (флаг)',
`balance_acc` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Бухгалтерское сальдо по договору',
`parent_agrm_id` int DEFAULT NULL COMMENT 'Идентификатор родительского договора',
`owner_id` int DEFAULT NULL COMMENT 'Идентификатор оператора, заключившего договор',
`state` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Состояние договора:0-активен,1-удален,2-расторгнут',
`last_mod_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Метка времени последней модификации записи',
`rid` varbinary(16) DEFAULT NULL COMMENT 'Уникальный идентификатор записи в рамках БД',
`5days_credit` double NOT NULL DEFAULT '0',
`time_mark` bigint DEFAULT NULL COMMENT 'Временная метка',
`promise_credit` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Обещанный платёж',
`descr` text COMMENT 'Описание',
PRIMARY KEY (`agrm_id`),
UNIQUE KEY `unumber` (`number`),
UNIQUE KEY `agreements_ubk_2` (`code`),
KEY `uid` (`uid`),
KEY `oper_id` (`oper_id`),
KEY `archive` (`archive`),
KEY `cur_id` (`cur_id`),
KEY `owner_id` (`owner_id`),
KEY `agreements_fk_parent_agrm_id` (`parent_agrm_id`),
KEY `state` (`state`,`archive`),
KEY `oper` (`oper_id`),
CONSTRAINT `agreements_fk_parent_agrm_id` FOREIGN KEY (`parent_agrm_id`) REFERENCES `agreements` (`agrm_id`) ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT `agreements_ibfk_1` FOREIGN KEY (`cur_id`) REFERENCES `currency` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT `agreements_ibfk_2` FOREIGN KEY (`uid`) REFERENCES `accounts` (`uid`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `agreements_ibfk_3` FOREIGN KEY (`oper_id`) REFERENCES `accounts` (`uid`) ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT `agreements_ibfk_4` FOREIGN KEY (`owner_id`) REFERENCES `accounts` (`uid`) ON DELETE RESTRICT ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=21105 DEFAULT CHARSET=utf8 COMMENT='Договоры пользователей (лицевые счета)'
SP
CREATE TABLE `tarifs` (
`tar_id` int NOT NULL AUTO_INCREMENT COMMENT 'Идентификатор тарифа',
`descr` varchar(255) NOT NULL DEFAULT '' COMMENT 'Описание тарифа',
`cur_id` int NOT NULL COMMENT 'Идентификатор валюты тарифа',
`rent` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Величина аренды в валюте тарифа',
`block_rent` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Величина аренды при блокировке (по балансу) в валюте тарифа',
`usr_block_rent` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Величина аренды при блокировке (пользовательской) в валюте тарифа',
`adm_block_rent` decimal(20,6) NOT NULL DEFAULT '0.000000' COMMENT 'Величина аренды при блокировке (административной) в валюте тарифа',
`coef_low` decimal(20,6) NOT NULL DEFAULT '1.000000' COMMENT 'Коэффициент нижней границы стоимости',
`coef_high` decimal(20,6) NOT NULL DEFAULT '1.000000' COMMENT 'Коэффициент верхней границы стоимости',
`type` tinyint unsigned NOT NULL DEFAULT '0' COMMENT 'Тип тарифа: 0-кабельный агент, 1-RADIUS по объему, 2-RADIUS по времени, 3-Классическая телефония, 4-VoIP, 5-Периодические и разовые услуги',
`act_block` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Применять автоматическую блокировку услуги: 0-нет, 1-да, 2-применять активную блокировку',
`shape` int unsigned NOT NULL DEFAULT '0' COMMENT 'Ограничение полосы пропускания Кбит/с',
`archive` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Тариф удален (флаг)',
`used` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Тариф был назначен учетной записи (флаг)',
`unavailable` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Тариф не доступен для назначения учетным записям (флаг)',
`price_plan` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Денежный план: 0-служебный, 1-население, 2-хозрасчет, 3-бюджет (информационное поле)',
`traff_type` tinyint unsigned NOT NULL DEFAULT '1' COMMENT 'Тарифицируемый трафик для кабельных агентов: 1-вх., 2-исх., 3-сумма, 4-превалирующий',
`traff_limit` int unsigned NOT NULL DEFAULT '0' COMMENT 'Ограничение потребления трафика за период в Мб для type=0,1 или Мин для type=2 (0-нет ограничений)',
`traff_limit_per` int NOT NULL DEFAULT '0' COMMENT 'Период в днях, на который установлено ограничение traff_limit (0-календарный месяц)',
`daily_rent` tinyint DEFAULT NULL COMMENT 'Списывать аренду равномерно каждый день (флаг). По умолчанию - разовое списание в начале месяца. Для тарифов услуг NULL',
`dynamic_rent` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Алгоритм расчёта арендной платы: 0 - фиксированная, 1 - динамическая, 2 - комбинированная',
`shape_prior` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Приоритет правил изменения пропускной способности: 0-min значение, 1-по объему, 2-по времени, 3-max значение',
`rent_multiply` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Для телефонии: списывать абон. плату пропорционально количеству присвоенных номеров (флаг)',
`charge_incoming` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Тарифицировать входящие звонки: 0-нет, 1-по номеру А, 2-по номеру Б',
`dyn_route` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Динамическая маршрутизация VoIP звонков: 0-не использовать, 1-LCR, 2-MWR',
`voip_block_local` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Блокировать направления, не найденные в каталоге',
`block_rent_duration` int unsigned NOT NULL DEFAULT '0' COMMENT 'Время автоматического отключения заблокированных учётных записей в сутках',
`sale_dictionary_id` int DEFAULT NULL COMMENT 'Идентификатор услуги, связанной с тарифом',
`descr_full` varchar(1024) NOT NULL DEFAULT '' COMMENT 'Расширенное описание тарифа',
`uuid` char(40) DEFAULT NULL COMMENT 'UUID для интеграции с внешними системами',
`additional` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Флаг дополнительного тарифа: 0-основной тариф, 1-дополнительный тариф',
`link` varchar(255) NOT NULL DEFAULT '' COMMENT 'Ссылка на подробное описание тарифа',
`service_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'ЦТВ/КТВ/Прочее(по умолчанию)',
`rid` varbinary(16) DEFAULT NULL COMMENT 'Уникальный идентификатор записи в рамках БД',
SP
`last_mod_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Метка времени последней модификации записи',
`common_includes` int unsigned NOT NULL DEFAULT '0' COMMENT 'Общий объем услуги включенной в абон. плату (Мб). Переопределяет поле categories.includes когда категория включена в общую группу',
`use_common_includes` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Определяет использование common_includes вместо categories.includes для категорий включенных в общую группу. Флаг (0/1)',
`available_fl` tinyint(1) NOT NULL DEFAULT '-1' COMMENT 'Флаг доступности тарифа для назначения учетным записям физических лиц (флаг), -1 значение не назначалось, 0 тариф недоступен, 1 тариф доступен',
`available_ul` tinyint(1) NOT NULL DEFAULT '-1' COMMENT 'Флаг доступности тарифа для назначения учетным записям юридических лиц (флаг), -1 значение не назначалось, 0 тариф недоступен, 1 тариф доступен',
`check_active_hours` tinyint unsigned NOT NULL DEFAULT '1' COMMENT 'Учитывать 12-часовой порог при тарификации тарифа: 1-да, 0-нет',
`rent_as_service` tinyint NOT NULL DEFAULT '0' COMMENT 'Флаг: абонентская плата тарифицируется как дополнительная услуга',
`nds_above` tinyint DEFAULT NULL COMMENT 'Расчет НДС (флаг). NULL - наследуется из опций, 0 - включен в стоимость, 1 - не включен стоимость, 2 - не применяется',
PRIMARY KEY (`tar_id`),
KEY `archive` (`archive`),
KEY `additional` (`additional`),
KEY `tarifs_ibfk_1` (`cur_id`),
KEY `tarifs_ibfk_2` (`sale_dictionary_id`),
CONSTRAINT `tarifs_ibfk_1` FOREIGN KEY (`cur_id`) REFERENCES `currency` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT `tarifs_ibfk_2` FOREIGN KEY (`sale_dictionary_id`) REFERENCES `sale_dictionary` (`record_id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=1535 DEFAULT CHARSET=utf8 COMMENT='Тарифные планы'
LE
У