Инициирующий коммит

Скопировал код с моего ноута, он, собственно, везде и используется.
This commit is contained in:
bogdan zažigin 2022-12-19 21:21:47 +03:00
commit a0c6196482
5 changed files with 95 additions and 0 deletions

View file

@ -0,0 +1,58 @@
-- SQL Схема организационной структуры
/* Создал Зажигин Богдан Алексеевич под СУБД
SQLite версии 3.32.3. В основном, идентификатор
таблиц rowid. */
CREATE TABLE channels ( -- Каналы общения организации
ch_participation_uri VARCHAR UNIQUE NOT NULL -- Универсальный идентификатор ресурса (канала общения)
/* С помощью функции subsrt() можно будет определить,
является ли канал общения групповым чатом по протоколу
Telegram, или комнатой в некотором доме Санкт-Петебурга. */
);
CREATE TABLE projects ( -- Проекты организации
proj_name VARCHAR UNIQUE NOT NULL, -- Название проекта
proj_ch_rowid INT UNIQUE -- Идентификатор канала общения участников проекта.
REFERENCES channels (rowid),
proj_website VARCHAR UNIQUE -- Копроративный сайт проекта
);
CREATE TABLE divisions ( -- Структурные подразделения организации
div_name VARCHAR NOT NULL UNIQUE, -- Название подразделения
div_ch_rowid INT NOT NULL UNIQUE -- Идентификатор канала общения для участников подразделения.
REFERENCES channels (rowid),
div_proj_rowid INT DEFAULT NULL -- Идентификатор проекта, над которым работает подразделение.
REFERENCES projects (rowid),
div_status BOOLEAN DEFAULT NULL, -- Статус подразделения
/* 0 — ликвидировано
1 активно */
div_admin VARCHAR DEFAULT NULL -- Контроллирующие подразделение
REFERENCES divisions (rowid)
);
CREATE TABLE people ( -- Зарегистрированные в организации люди, стали клиентами или рабочими
per_name VARCHAR NOT NULL, -- Полное имя человека
per_tel VARCHAR(11) UNIQUE, -- Личный телефонный номер человека
per_email VARCHAR UNIQUE, -- Личная электропочта человека
per_tin INT(12) UNIQUE, -- Идентификационный номер налогоплательщика (человека)
per_snils INT(9) UNIQUE, -- Страховой номер индивидуального лицевого счёта человека
per_dob DATE, -- Дата рождения человека
per_gender BOOLEAN -- Половые признаки человека
/* 0 — мужские
1 женские */
);
CREATE TABLE employments ( -- Трудоустройство персонала организации
emp_per_rowid INT NOT NULL -- Идентификатор рабочего трудоустройста
REFERENCES people (rowid),
emp_div_rowid INT NOT NULL -- Подразделение работы рабочего
REFERENCES divisions (rowid),
emp_okpdtr VARCHAR(18) NOT NULL, -- Код информационного блока ОКПДТР рабочего
emp_beginning DATE NOT NULL, -- Дата начала трудоустройста
emp_ch_rowid VARCHAR -- Копроративная электропочта рабочего данного трудоустройста
REFERENCES channels (rowid),
emp_ending DATE DEFAULT NULL -- Дата конца трудоустройста
);

View file

@ -0,0 +1,24 @@
INSERT INTO communication_channels VALUES
(1, "tg://join?invite=EBIdIqMZb3lhNWYy");
INSERT INTO communication_channels VALUES
(2, "tg://join?invite=I3jgOBd5vYg4Zjhi");
INSERT INTO projects VALUES
(1, "Портал проектов", "https://site.zaboal.ru/", 1);
INSERT INTO projects VALUES
(2, "Сервис аутсорсинга администрирования сайтов", "https://site.aas.zaboal.ru", 2);
INSERT INTO projects VALUES
(3, "Поощрительная рассылка", "https://site.club.zaboal.ru", NULL);
INSERT INTO divisions VALUES
(1, "Проектное бюро", 1, 2, 1);
INSERT INTO people VALUES
(1, "Зажигин Богдан Алексеевич", "+7 992 195-51-27", "za.boal@vk.com", NULL, NULL, 15012007, 0, "59.831453, 30.327681");
INSERT INTO people VALUES
(2, "Хисуми", NULL, "hisumimegu.one", NULL, NULL, NULL, NULL);
INSERT INTO employment_cycles VALUES
(1, 1, 1, 2149501121004, 21102022, NULL, "zaboal@zaboal.ru");
INSERT INTO employment_cycles VALUES
(2, 2, 1, 4006782252204, 21102022, NULL, "hisumi@zaboal.ru");

View file

@ -0,0 +1 @@
PRAGMA foreign_keys = ON;

View file

@ -0,0 +1,5 @@
CREATE TABLE users (
user_per_rowid INT NOT NULL
REFERENCES people (rowid),
user_id INT NOT NULL
);

7
vacancies.sql Normal file
View file

@ -0,0 +1,7 @@
CREATE TABLE vacancies (
vac_div_rowid INT NOT NULL -- Подразделение открывшее вакансию
REFERENCES divisions (rowid),
vac_okpdtr VARCHAR(18) NOT NULL, -- Код информационного блока ОКПДТР вакансии
vac_per_rowid INT -- Человек, проходящий собеседование по ваканасии
REFERENCES people (rowid)
);