<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
    xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9
                      http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd">
					  
	<changeSet id="0001" author="absataov">
        <comment>edit table</comment>
		<sql>
            CREATE table iF NOT EXISTS vehicle_categories (
                code VARCHAR(5) PRIMARY KEY CHECK (LENGTH(code) BETWEEN 1 AND 5),
                name TEXT NOT NULL,
                description TEXT,
                is_driver_license BOOLEAN NOT NULL DEFAULT TRUE,  -- TRUE = водительское удостоверение, FALSE = удостоверение тракториста
                created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
                updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
            );


            INSERT INTO vehicle_categories (code, name, description, is_driver_license) VALUES
            -- Водительские категории (ГИБДД)
            ('A',   'Мотоциклы', 'Все мотоциклы без ограничений по мощности', TRUE),
            ('A1',  'Легкие мотоциклы', 'Объем двигателя до 125 см³ и мощность до 11 кВт', TRUE),
            ('B',   'Легковые автомобили', 'ТС до 3,5 т и до 8 пассажирских мест', TRUE),
            ('B1',  'Трициклы и квадрициклы', 'Механические ТС с тремя/четырьмя колесами', TRUE),
            ('BE',  'Легковой с прицепом', 'Категория B с прицепом свыше 750 кг', TRUE),
            ('C',   'Грузовые автомобили', 'ТС массой более 3,5 тонн', TRUE),
            ('C1',  'Легкие грузовики', 'ТС от 3,5 до 7,5 тонн', TRUE),
            ('CE',  'Грузовик с прицепом', 'Категория C с прицепом свыше 750 кг', TRUE),
            ('C1E', 'Легкий грузовик с прицепом', 'Категория C1 с прицепом более 750 кг', TRUE),
            ('D',   'Автобусы', 'ТС для перевозки более 8 пассажиров', TRUE),
            ('D1',  'Малые автобусы', 'ТС от 9 до 16 пассажирских мест', TRUE),
            ('DE',  'Автобус с прицепом', 'Категория D с прицепом', TRUE),
            ('D1E', 'Малый автобус с прицепом', 'Категория D1 с прицепом более 750 кг', TRUE),
            ('M',   'Мопеды', 'ТС с объемом двигателя до 50 см³ или макс. скоростью до 50 км/ч', TRUE),

            -- Трактористские категории (Гостехнадзор)
            ('AI',  'Внедорожные мотосредства', 'Снегоходы, квадроциклы, мотовездеходы', FALSE),
            ('AII', 'Внедорожные автотранспортные средства', 'Багги, вездеходы, легкие внедорожники', FALSE),
            ('TB',  'Колёсные машины', 'Погрузчики, катки, самоходные шасси', FALSE),
            ('TC',  'Гусеничные машины', 'Гусеничные тракторы, бульдозеры', FALSE),
            ('TD',  'Машины с прицепами', 'Колёсные и гусеничные машины с прицепом', FALSE),
            ('TE',  'Специальные машины', 'Комбайны, дорожные, лесозаготовительные машины', FALSE),
            ('TF',  'Сельхозтехника', 'Сельскохозяйственные машины (сеялки, культиваторы и др.)', FALSE)
            ON CONFLICT (code) DO NOTHING;
 
		</sql>
	</changeSet>

</databaseChangeLog>