Updated database scheme and added license_categories

This commit is contained in:
Keanu D?lle 2020-09-06 19:23:32 +02:00
parent 16207a762a
commit dec09a910a
4 changed files with 57 additions and 2 deletions

View File

@ -9,7 +9,7 @@ create table vehicles
next_inspection date,
is_operational boolean default true not null,
admissible_total_weight real,
required_license uuid,
required_license text,
constraint vehicles_pk
primary key (entity_id),
constraint vehicles_entities_entity_id_fk

View File

@ -0,0 +1,2 @@
-- This file should undo anything in `up.sql`
drop table license_categories;

View File

@ -0,0 +1,26 @@
-- Your SQL goes here
create table license_categories
(
name text not null
constraint license_categories_pk
primary key,
description text
);
INSERT INTO license_categories (name, description) VALUES ('AM', 'zwei- oder dreirädrige Kraftfahrzeuge mit einer bauartbedingten Höchstgeschwindigkeit von bis zu 45 km/h, bis 4 kW, 50 cm³, bis 270 kg leer. Vierrädrige Leichtkraftfahrzeuge bis 45 km/h, bis 6 kW, bis 50 cm³, bis 425 kg leer.');
INSERT INTO license_categories (name, description) VALUES ('A1', 'Krafträder mit einem Hubraum von bis zu 125 cm³ mit einer Motorleistung von bis zu 11 kW (Leichtkrafträder) und einem Leistungsgewicht bis zu 0,1 kW/kg sowie dreirädrige Kraftfahrzeuge mit einer Leistung von bis zu 15 kW');
INSERT INTO license_categories (name, description) VALUES ('A2', 'Krafträder mit einer Motorleistung von bis zu 35 kW und einem Leistungsgewicht bis zu 0,2 kW/kg, die nicht von einem Fahrzeug mit mehr als der doppelten Motorleistung abgeleitet sind');
INSERT INTO license_categories (name, description) VALUES ('A', 'Krafträder über 50 cm³ oder über 45 km/h, auch mit Beiwagen, sowie dreirädrige Kraftfahrzeuge[4] mit einer Leistung von mehr als 15 kW');
INSERT INTO license_categories (name, description) VALUES ('B1', 'Mehrspurige Kraftfahrzeuge bis 550 kg Leermasse');
INSERT INTO license_categories (name, description) VALUES ('B', 'Mehrspurige Kraftfahrzeuge bis 3,5 t zulässiger Gesamtmasse und maximal 9 Sitzplätzen (einschließlich Fahrer).');
INSERT INTO license_categories (name, description) VALUES ('C1', 'Mehrspuriges Kraftfahrzeug bis 7,5 t zulässiger Gesamtmasse, maximal 9 Sitzplätze (einschließlich Fahrer)');
INSERT INTO license_categories (name, description) VALUES ('C', 'Mehrspurige Kraftfahrzeuge über 7,5 t zulässiger Gesamtmasse, maximal 9 Sitzplätze (einschließlich Fahrer)');
INSERT INTO license_categories (name, description) VALUES ('D1', 'Omnibusse mit bis 16 Sitzplätzen einschließlich Fahrer und höchstens 8 m Länge');
INSERT INTO license_categories (name, description) VALUES ('D', 'Omnibusse mit mehr als 9 Sitzplätzen (einschließlich Fahrer)');
INSERT INTO license_categories (name, description) VALUES ('BE', 'Züge aus B-Zugfahrzeug und Anhänger über 0,75 t zulässiger Gesamtmasse (sofern der Zug nicht unter Klasse B fällt)');
INSERT INTO license_categories (name, description) VALUES ('C1E', 'Züge aus C1-Zugfahrzeug und Anhänger über 0,75 t zulässiger Gesamtmasse, sowie Züge aus B-Zugfahrzeug und Anhänger über 3,5 t zulässiger Gesamtmasse');
INSERT INTO license_categories (name, description) VALUES ('CE', 'Lastzüge und Sattelkraftfahrzeuge');
INSERT INTO license_categories (name, description) VALUES ('D1E', 'Züge aus D1-Zugfahrzeug und Anhänger mit mehr als 0,75 t zulässiger Gesamtmasse');
INSERT INTO license_categories (name, description) VALUES ('DE', 'Züge aus D-Zugfahrzeug und Anhänger mit mehr als 0,75 t zulässiger Gesamtmasse');
INSERT INTO license_categories (name, description) VALUES ('L', '');
INSERT INTO license_categories (name, description) VALUES ('T', '');

View File

@ -15,6 +15,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
addresses_entities (address_id, entitiy_id) {
address_id -> Uuid,
@ -24,6 +25,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
buildings (entity_id) {
entity_id -> Uuid,
@ -34,6 +36,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
communication_targets (id) {
id -> Uuid,
@ -48,6 +51,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
communication_types (id) {
id -> Uuid,
@ -57,6 +61,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
entities (entity_id) {
entity_id -> Uuid,
@ -65,6 +70,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
groups (entity_id) {
entity_id -> Uuid,
@ -75,6 +81,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
groups_entities (group_id, entity_id) {
group_id -> Uuid,
@ -84,6 +91,17 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
license_categories (name) {
name -> Text,
description -> Nullable<Text>,
}
}
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
members (entity_id) {
entity_id -> Uuid,
@ -102,6 +120,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
members_roles (member_id, role_id) {
member_id -> Uuid,
@ -111,6 +130,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
permissions (permission) {
permission -> Text,
@ -120,6 +140,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
roles (id) {
id -> Text,
@ -129,6 +150,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
roles_permissions (role_permission_id) {
role_id -> Text,
@ -139,6 +161,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
roles_permissions_context (role_permission_id, entity) {
role_permission_id -> Uuid,
@ -148,6 +171,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
users (id) {
id -> Uuid,
@ -158,6 +182,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
vehicle_categories (id) {
id -> Uuid,
@ -168,6 +193,7 @@ table! {
table! {
use diesel::sql_types::*;
use diesel_geometry::sql_types::*;
vehicles (entity_id) {
entity_id -> Uuid,
@ -178,7 +204,7 @@ table! {
next_inspection -> Nullable<Date>,
is_operational -> Bool,
admissible_total_weight -> Nullable<Float4>,
required_license -> Nullable<Uuid>,
required_license -> Nullable<Text>,
}
}
@ -210,6 +236,7 @@ allow_tables_to_appear_in_same_query!(
entities,
groups,
groups_entities,
license_categories,
members,
members_roles,
permissions,