-- Create 'Физические лица' table
BEGIN TRY
    CREATE TABLE [Физические лица] (
        id integer PRIMARY KEY IDENTITY,
        [Фамилия] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Имя] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Отчество] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Дата_рождения] date,
        [Место_рождения] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Паспорт] varchar(50),
        [Фамилия_старая] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Табельный_номер] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Гражданство] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Место_регистрации] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Место_жительства] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Полис_ДМС] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Фото] varchar(300),
        [Телефон] varchar(50),
        [Email] varchar(100),
        [Пароль] varchar(300),
        [Черный_список] bit DEFAULT 0
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Юридические лица' table
BEGIN TRY
    CREATE TABLE [Юридические лица] (
        id integer PRIMARY KEY IDENTITY,
        [Наименование] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [ИНН] varchar(50),
        [ОГРН] varchar(50),
        [Юридический_адрес] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Фактический_адрес] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Телефон] varchar(50),
        [Email] varchar(100),
        [Контактное_лицо] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Пароль] varchar(300),
        [Дополнительно] varchar(300) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Трудоустройство' table
BEGIN TRY
    CREATE TABLE [Трудоустройство] (
        id integer PRIMARY KEY IDENTITY,
        [Работник] integer,
        [Организация] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Субподряд] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Цех] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Должность] varchar(150) COLLATE Cyrillic_General_CI_AS,
        [Миграционная_карта] varchar(150),
        [Разрешение_на_работу_до] date,
        [Трудовой_договор] varchar(150) COLLATE Cyrillic_General_CI_AS,
        [Дата_договора] date,
        [Последнее_место_работы] bit DEFAULT 1,
        [Увольнение] bit DEFAULT 0,
        [Причина_увольнения] varchar(500) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Анкеты' table
BEGIN TRY
    CREATE TABLE [Анкеты] (
        id integer PRIMARY KEY IDENTITY,
        [Работник] integer,
        [Должность_планируемая] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Дата_заполнения] date,
        [Дата_внесения] date,
        [Дополнения] varchar(500) COLLATE Cyrillic_General_CI_AS,
        [Результаты_проверки] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Состояние] varchar(100) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Пропуска' table
BEGIN TRY
    CREATE TABLE [Пропуска] (
        id integer PRIMARY KEY IDENTITY,
        [Работник] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Организация] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Заявка] integer,
        [Вид_пропуска] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Номер_пропуска] varchar(100),
        [Дата_выдачи] date,
        [Действие_до] date,
        [Авто_модель] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Авто_марка] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Авто_цвет] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Авто_гос_номер] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Дополнительно] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Цель_выдачи] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Зона_доступа] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Состояние] varchar(100) COLLATE Cyrillic_General_CI_AS,
        [Наименование] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Единица_измерения] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Количество] varchar(MAX),
        [Отметка] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Email] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Телефон] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Согласование] varchar(200) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Оборудование' table
BEGIN TRY
    CREATE TABLE [Оборудование] (
        id integer PRIMARY KEY IDENTITY,
        [Работник] integer,
        [Пропуск] integer,
        [Заявка] integer,
        [Наименование] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Единица_измерения] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Количество] float,
        [Дополнительно] varchar(300) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Заявки' table
BEGIN TRY
    CREATE TABLE [Заявки] (
        id integer PRIMARY KEY IDENTITY,
        [Номер] integer,
        [Статус] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Вид_заявки] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Работник] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Дата_заявки] date,
        [Дата_принятия] date,
        [Решение] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Дата_решения] date,
        [Дополнение] varchar(500) COLLATE Cyrillic_General_CI_AS,
        [Авто_модель] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Авто_марка] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Авто_цвет] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Авто_гос_номер] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Наименование] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Единица_измерения] varchar(MAX) COLLATE Cyrillic_General_CI_AS,
        [Количество] varchar(MAX),
        [Организация] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Автор] varchar(300) COLLATE Cyrillic_General_CI_AS,
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Заявки_ТМЦ' table
BEGIN TRY
    CREATE TABLE [Заявки_ТМЦ] (
        id integer PRIMARY KEY IDENTITY,
        [Заявка] integer,
        [Наименование] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Единица_измерения] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Количество] integer,
        [Фактически] integer,
        [Дата] date,
        [Состояние] varchar(200) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;

-- Create 'Заявки_ТСО' table
BEGIN TRY
    CREATE TABLE [Заявки_ТСО] (
        id integer PRIMARY KEY IDENTITY,
        [Вид_неисправности] varchar(500) COLLATE Cyrillic_General_CI_AS,
        [Объект] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Фабула] varchar(500) COLLATE Cyrillic_General_CI_AS,
        [Дата_подачи] date,
        [Состояние] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Дата_изменения] date,
        [Кто_подал] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Исполнитель] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Мероприятия] varchar(200) COLLATE Cyrillic_General_CI_AS,
        [Уведомление_СМС] varchar(300) COLLATE Cyrillic_General_CI_AS,
        [Уведомление_интерсервис] varchar(300) COLLATE Cyrillic_General_CI_AS
    );
END TRY
BEGIN CATCH
    -- Обработка исключения, если таблица уже существует
END CATCH;