From 9e35a1c099c76d176ef51fd5bf4d3df9b4af1548 Mon Sep 17 00:00:00 2001 From: Thomas Hooge Date: Thu, 20 Aug 2026 11:09:00 +0200 Subject: [PATCH] Database fixes and improvements --- db/mariadb.sql | 2 +- db/minimal.sql | 2 +- db/minimal_en.sql | 6 ++- db/{mariadb_sample.sql => sample.sql} | 63 +++++++++++++++++++-------- 4 files changed, 50 insertions(+), 23 deletions(-) rename db/{mariadb_sample.sql => sample.sql} (59%) diff --git a/db/mariadb.sql b/db/mariadb.sql index 58d5c35..30d8a24 100644 --- a/db/mariadb.sql +++ b/db/mariadb.sql @@ -220,7 +220,7 @@ CREATE TABLE inventory ( FOREIGN KEY fk_inventory_box (boxid) REFERENCES box(boxid), FOREIGN KEY fk_inventory_equipment (eid) - REFERENCES equipment(eid) + REFERENCES equipment(eid), CHECK ( (sid IS NOT NULL AND boxid IS NULL) OR diff --git a/db/minimal.sql b/db/minimal.sql index 80225f2..ba161de 100644 --- a/db/minimal.sql +++ b/db/minimal.sql @@ -53,7 +53,7 @@ INSERT INTO settings (userid, sno, valstr) VALUES (-1, 211, 'cable filter json'), (-1, 212, 'fuse filter json'); -/* Liste der Listen wird immer benötigt */ +/* List of lists is always required */ INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (0, 0, 'Liste der Listen'), (0, 1, 'Rumpftypen'), diff --git a/db/minimal_en.sql b/db/minimal_en.sql index 4849c77..4500033 100644 --- a/db/minimal_en.sql +++ b/db/minimal_en.sql @@ -22,6 +22,7 @@ INSERT INTO settings (userid, sno, valint) VALUES INSERT INTO settings (userid, sno, valstr) VALUES (-1, 1, 'vessel id'), (-1, 2, 'date format'), +(-1, 3, 'user menu'), (-1, 10, 'rows in table'), (-1, 20, 'maximum image width'), (-1, 21, 'maximum image height'), @@ -52,7 +53,7 @@ INSERT INTO settings (userid, sno, valstr) VALUES (-1, 211, 'cable filter json'), (-1, 212, 'fuse filter json'); -/* list of lists always needed */ +/* List of lists is always required */ INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (0, 0, 'list of lists'), (0, 1, 'hull type'), @@ -75,4 +76,5 @@ INSERT INTO dropdown (ddid, ddval, ddtext, flags) VALUES INSERT INTO dropdown (ddid, ddval, ddtext, flags) VALUES (3, 0, 'Generic storage', 'fixed'), -(3, 1, 'Tank', 'fixed'); +(3, 1, 'Tank', 'fixed'), +(3, 2, 'External', 'fixed'); diff --git a/db/mariadb_sample.sql b/db/sample.sql similarity index 59% rename from db/mariadb_sample.sql rename to db/sample.sql index b571033..0d8dc5f 100644 --- a/db/mariadb_sample.sql +++ b/db/sample.sql @@ -2,6 +2,9 @@ * SPDX-License-Identifier: WTFPL */ +-- minimal vessel +INSERT INTO vessel (vid, vesselname) VALUES (1, 'Generic vessel'); + INSERT INTO user (userid, login, pass, displayname, role) VALUES (2, 'helmsman', '$2y$10$4keuVm.WD/JeRmAqp2h4MeSxxKITsKv2q07XZrxPUuT/V80CTPbje', 'Helmsman', 'helmsman'), (3, 'sailor', '$2y$10$4keuVm.WD/JeRmAqp2h4MeSxxKITsKv2q07XZrxPUuT/V80CTPbje', 'Sailor', 'sailor'); @@ -16,37 +19,48 @@ INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (1, 3, 'Trimaran'); INSERT INTO dropdown (ddid, ddval, ddtext) VALUES -(2, 3, 'Dienstleister'), -- Service -(2, 4, 'Werft'), -- Shipyard +(2, 4, 'Dienstleister'), -- Service (2, 5, 'Segelmacher'), -- Sailmaker -(2, 6, 'Yachthafen'), -- Marina +(2, 6, 'Yachthafen'); -- Marina INSERT INTO dropdown (ddid, ddval, ddtext) VALUES -(3, 2, 'Bilge'), -(3, 3, 'Schwalbennest'); +(3, 3, 'Bilge'), +(3, 4, 'Schwalbennest'); INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (4, 1, 'Rumpf'), -(4, 2, 'Decks'), +(4, 2, 'Deck'), (4, 3, 'Rigg'), (4, 4, 'Segel'), (4, 5, 'Motor'), (4, 6, 'Elektrik'), (4, 7, 'Elektronik'), (4, 8, 'Navigation'), -(4, 9, 'Pantry'); +(4, 9, 'Pantry'), +(4, 10, 'Solar'), +(4, 11, 'Sicherheit'), +(4, 12, 'lfd. Gut'); INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (5, 1, 'Allgemein'), -(5, 2, 'Getränke'); +(5, 2, 'Getränke'), +(5, 3, 'Naschkram'), +(5, 4, 'Konserven'), +(5, 5, 'Frischware'), +(5, 6, 'Trockenware'), +(5, 7, 'Gefriergetrocknet'), +(5, 8, 'Snacks (salzig)'); -INSERT INTO dropdown (ddid, ddval, ddtext) VALUES -(6, 1, 'kg'), -(6, 2, 'Liter'), -(6, 3, 'Stück'), -(6, 4, 'Packung'), -(6, 5, 'Dose'), -(6, 6, 'Flasche'); +INSERT INTO dropdown (ddid, ddval, ddtext, ddshort) VALUES +(6, 1, 'kg', 'kg'), +(6, 2, 'Liter', 'L'), +(6, 3, 'Stück', 'St'), +(6, 4, 'Packung', 'Pkg'), +(6, 5, 'Dose', 'Ds'), +(6, 6, 'Flasche', 'Fl'), +(6, 7, 'Tüte', 'Tue'), +(6, 8, 'Tafel', 'Ta'), +(6, 9, 'Glas', 'Gl'); INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (7, 1, 'ATO'), @@ -55,11 +69,22 @@ INSERT INTO dropdown (ddid, ddval, ddtext) VALUES (7, 4, 'Torpedosicherung'), (7, 5, 'T-Sicherung'); +INSERT INTO dropdown (ddid, ddval, ddshort, ddtext) VALUES +(8, 1, 'mm', 'Millimeter'), +(8, 2, 'cm', 'Zentimeter'), +(8, 3, 'g', 'Gramm'), +(8, 4, 'kg', 'Kilogramm'), +(8, 5, 'm', 'Meter'), +(8, 6, 'kW', 'Kilowatt'), +(8, 7, 'A', 'Ampere'), +(8, 8, 'l', 'Liter'); + INSERT INTO dropdown (ddid, ddval, ddtext) VALUES -(8, 1, 'mm'), -(8, 2, 'cm'), -(8, 3, 'g'), -(8, 4, 'kg'); +(9, 1, 'Plastikbox, klein'), +(9, 2, 'Plastikbox, groß'), +(9, 3, 'Sortimentskasten'), +(9, 4, 'Werkzeugkiste'); + INSERT INTO storage (sid, vid, sname, stype, x, y, z, remarks) VALUES (0, 1, 'An Bord', 0, 0, 0, 0, 'Alles wo der Ort nicht spezifiziert werden kann');