Skip to content
Vladimír Lahoda edited this page Dec 5, 2019 · 1 revision

Technický popis

Aplikace Razitka je webová aplikace v technologii Java EE využívající framework Aplikator.

K řízení závislostí, kompilaci a sestavení aplikace je použit systém Gradle. Příkazem gradlew clean build se vytvoří distribuční soubor razitka.war, který je možno nainstalovat na aplikační server Tomcat.

Konfigurace

Aplikaci je možné konfigurovat pomocí souboru ~\.razitka\application.conf, výchozí konfigurace je následující:

aplikator {
    home = ${user.home}/.razitka
    jdbc.driver = org.postgresql.Driver
    jdbc.url = "jdbc:postgresql://localhost:5432/razitka"
    jdbc.username = razitka
    jdbc.password = razitka
    binaryDatastore = true
    binaryDatastoreHome = ${aplikator.home}/datastore
    structure = cz.incad.razitka.server.Structure
    searchEnabled = false
}
razitka {
    importFolder = ${aplikator.home}/import
}

Datová struktura

Data jsou ukládána v databázi PostgreSQL v následující datové struktuře:

-- creating sequence for column DLists.DLists_ID --
CREATE SEQUENCE DLists_ID_SQ INCREMENT BY 1 START WITH 1 MINVALUE 0;

-- creating sequence for column Kniha.Kniha_ID --
CREATE SEQUENCE Kniha_ID_SQ INCREMENT BY 1 START WITH 1 MINVALUE 0;

-- creating sequence for column Exemplar.Exemplar_ID --
CREATE SEQUENCE Exemplar_ID_SQ INCREMENT BY 1 START WITH 1 MINVALUE 0;

-- creating sequence for column Accounts.Account_ID --
CREATE SEQUENCE Account_ID_SQ INCREMENT BY 1 START WITH 1 MINVALUE 0;

-- creating table DLists --
CREATE TABLE DLists (
   DLists_ID SERIAL NOT NULL,
   UPDATE_TIMESTAMP TIMESTAMP NOT NULL,
   classType VARCHAR(255),
   value VARCHAR(255),
   cz VARCHAR(255),
   en VARCHAR(255),
   de VARCHAR(255),
   fr VARCHAR(255),
   use BOOLEAN,
   poradi BIGINT,
   poznamka VARCHAR(255),
 PRIMARY KEY (DLists_ID));

CREATE INDEX DLists_classType_DISIDX ON DLists (classType);

-- creating table Kniha --
CREATE TABLE Kniha (
   Kniha_ID SERIAL NOT NULL,
   UPDATE_TIMESTAMP TIMESTAMP NOT NULL,
   signatura VARCHAR(255),
   sys VARCHAR(255),
   Exemplar_ID INT,
 PRIMARY KEY (Kniha_ID));

CREATE INDEX Kniha_Exemplar_ID_REFIDX ON Kniha (Exemplar_ID);

-- creating table Exemplar --
CREATE TABLE Exemplar (
   Exemplar_ID SERIAL NOT NULL,
   UPDATE_TIMESTAMP TIMESTAMP NOT NULL,
   signatura TEXT,
   sys TEXT,
   napis VARCHAR(255),
   obrazek VARCHAR(255),
   obrazek_FULL VARCHAR(255),
   obrazek_MEDIUM VARCHAR(255),
   obrazek_PROPS TEXT,
   obrazek2 VARCHAR(255),
   obrazek2_FULL VARCHAR(255),
   obrazek2_MEDIUM VARCHAR(255),
   obrazek2_PROPS TEXT,
   druh VARCHAR(255),
   prijmeni VARCHAR(255),
   instituce VARCHAR(255),
   obecne VARCHAR(255),
   mesto VARCHAR(255),
   vlastnik VARCHAR(255),
   jazyk VARCHAR(255),
   label VARCHAR(255),
   hidden BOOLEAN,
 PRIMARY KEY (Exemplar_ID));

-- creating table Accounts --
CREATE TABLE Accounts (
   Account_ID SERIAL NOT NULL,
   UPDATE_TIMESTAMP TIMESTAMP NOT NULL,
   principal VARCHAR(128),
   hashedPassword VARCHAR(255),
   fullName VARCHAR(255),
   email VARCHAR(255),
   roles VARCHAR(255),
 PRIMARY KEY (Account_ID));

CREATE UNIQUE INDEX principal_IDX ON Accounts (principal);

-- creating foreign key constraint Kniha_Exemplar_ID_FK --
ALTER TABLE Kniha ADD CONSTRAINT Kniha_Exemplar_ID_FK FOREIGN KEY (Exemplar_ID) REFERENCES Exemplar (Exemplar_ID);

Import dat

Existující data je možné importovat pomocí administrátorské funkce Import razítek ze souboru ~\.razitka\import\razitka.xlsx ve formátu Microsoft Excel, který obsahuje následující sloupce:

SIGNATURA	SYS	UI	NÁPIS	OBRÁZEK	DRUH	PŘÍJMENÍ	INSTITUCE	OBECNÉ	MĚSTO

Obrazové soubory pro import (ve formátu JPG nebo PNG) jsou uloženy ve stejném adresáři, jako importní soubor, jejich názvy musí odpovídat identifikátoru UI pro příslušný řádek.

Clone this wiki locally