From 3f8da5d9d263523b715f3e3e9cc7ffb2c2021245 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 15:03:17 +0200 Subject: [PATCH 01/28] feat(section 3): add sections and subsections --- Mafia-the-Game.tex | 1 + src/design/entities/index.tex | 3 +++ src/design/index.tex | 4 ++++ src/design/logical-description.tex | 7 +++++++ 4 files changed, 15 insertions(+) create mode 100644 src/design/entities/index.tex create mode 100644 src/design/index.tex create mode 100644 src/design/logical-description.tex diff --git a/Mafia-the-Game.tex b/Mafia-the-Game.tex index 079543e..5522713 100644 --- a/Mafia-the-Game.tex +++ b/Mafia-the-Game.tex @@ -130,6 +130,7 @@ \input{./src/legends.tex} \input{./src/description/index.tex} \input{./src/requirements/index.tex} +\input{./src/design/index.tex} % \input{./src/test.tex} \end{document} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex new file mode 100644 index 0000000..ae7242d --- /dev/null +++ b/src/design/entities/index.tex @@ -0,0 +1,3 @@ +\subsection{Datu bāzes tabulu apraksts} +Datubāzes tabulu lauku, datu tipi, lauka atribūti - obligātums, noklusētās vērtības, primārā atslēga, unikalitāte - ir aprakstītas atsevišķās tabulās (skat. x.1, x.2, … , x.n tab. % TODO: add all table references). +Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kodējums. diff --git a/src/design/index.tex b/src/design/index.tex new file mode 100644 index 0000000..afcec3b --- /dev/null +++ b/src/design/index.tex @@ -0,0 +1,4 @@ +\section{Programmatūras projektējuma apraksts} +\subsection{Datu bāzes projektējums} +\input{./src/design/logical-description.tex} +\input{./src/design/entities/index.tex} diff --git a/src/design/logical-description.tex b/src/design/logical-description.tex new file mode 100644 index 0000000..2ef5d6e --- /dev/null +++ b/src/design/logical-description.tex @@ -0,0 +1,7 @@ +\subsection{Datu bāzes loģiskais ER modelis} +\begin{figure}[htbp] + \centering + \includegraphics[width=\linewidth]{./src/img/KonceptualaisERModelis.png} % TODO: replace with correct picture + \caption{Datu bāzes loģiskais ER modelis} + \label{fig:logical-model} +\end{figure} From 1ad1d9222a654d4bd4cd01fa8c096f364bf55ef3 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:15:08 +0200 Subject: [PATCH 02/28] feat(env): add entity table env --- src/utils/entity-table.tex | 27 +++++++++++++++++++++++++++ src/utils/index.tex | 1 + 2 files changed, 28 insertions(+) create mode 100644 src/utils/entity-table.tex diff --git a/src/utils/entity-table.tex b/src/utils/entity-table.tex new file mode 100644 index 0000000..a0f403a --- /dev/null +++ b/src/utils/entity-table.tex @@ -0,0 +1,27 @@ +\newenvironment{entityTable}[2]{% + \tabularx{\linewidth}{|X|X|X|X|} + \caption{#1} \label{tab:#2} \\ + + \hline + \textbf{Lauks} & \textbf{Datu tips} & \textbf{Lauka atribūti} & \textbf{Apraksts} \\ \hline + \endfirsthead + + \hline \multicolumn{4}{r}{Turpinājums no iepriekšējās lapas} \\ \hline + \textbf{Lauks} & \textbf{Datu tips} & \textbf{Lauka atribūti} & \textbf{Apraksts} \\ \hline + \endhead + + \hline \multicolumn{4}{r}{Turpinājums nākamajā lapā} \\ \hline + \endfoot + + \hline + \endlastfoot + + \entityTableRow{id}{serial8}{primary key, not null}{Unikālais identifikators} +}{ + \endtabularx +} + + +\newcommand{\entityTableRow}[4]{ + #1 & \uppercase{\texttt{#2}} & \uppercase{\texttt{#3}} & #4 \\ \hline +} diff --git a/src/utils/index.tex b/src/utils/index.tex index 1f0f58d..31620d9 100644 --- a/src/utils/index.tex +++ b/src/utils/index.tex @@ -1 +1,2 @@ \input{./src/utils/function-table.tex} +\input{./src/utils/entity-table.tex} From e23be14b3dc9b5c915a530158888a6ba9282e4f0 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:15:28 +0200 Subject: [PATCH 03/28] feat(RoleAction): add RoleAction table --- src/design/entities/index.tex | 5 ++++- src/design/entities/role-action.tex | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 src/design/entities/role-action.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index ae7242d..d924434 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -1,3 +1,6 @@ \subsection{Datu bāzes tabulu apraksts} -Datubāzes tabulu lauku, datu tipi, lauka atribūti - obligātums, noklusētās vērtības, primārā atslēga, unikalitāte - ir aprakstītas atsevišķās tabulās (skat. x.1, x.2, … , x.n tab. % TODO: add all table references). +Datubāzes tabulu lauku, datu tipi, lauka atribūti - obligātums, noklusētās vērtības, primārā atslēga, +unikalitāte - ir aprakstītas atsevišķās tabulās (skat. x.1, x.2, … , x.n tab. % TODO: add all table references). Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kodējums. + +\input{./src/design/entities/role-action.tex} diff --git a/src/design/entities/role-action.tex b/src/design/entities/role-action.tex new file mode 100644 index 0000000..af291fb --- /dev/null +++ b/src/design/entities/role-action.tex @@ -0,0 +1,4 @@ +\begin{entityTable}{LomasDarbiba}{entity-role-action} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Lomas darbības nosaukums} + \entityTableRow{is\_nekavejoties}{bool}{default false, not null}{Vai lomas darbība ir tūlītēja} +\end{entityTable} From 06c9bc4394044029b1a62f5fd58120643e036728 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:19:14 +0200 Subject: [PATCH 04/28] feat(RoleDisadvantage): add RoleDisadvantage table --- src/design/entities/index.tex | 1 + src/design/entities/role-disadvantage.tex | 4 ++++ 2 files changed, 5 insertions(+) create mode 100644 src/design/entities/role-disadvantage.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index d924434..ec515f2 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -4,3 +4,4 @@ unikalitāte - ir aprakstītas atsevišķās tabulās (skat. x.1, x.2, … , x.n Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kodējums. \input{./src/design/entities/role-action.tex} +\input{./src/design/entities/role-disadvantage.tex} diff --git a/src/design/entities/role-disadvantage.tex b/src/design/entities/role-disadvantage.tex new file mode 100644 index 0000000..f4bbf46 --- /dev/null +++ b/src/design/entities/role-disadvantage.tex @@ -0,0 +1,4 @@ +\begin{entityTable}{LomasTrukums}{entity-role-disadvantage} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Lomas trūkuma nosaukums} + \entityTableRow{apraksts}{text}{default '', not null}{Lomas trūkuma apraksts} +\end{entityTable} From 325776f93caa638a02cc05eca4772ad8e970515f Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:33:36 +0200 Subject: [PATCH 05/28] feat(Image): add Image table --- src/design/entities/image.tex | 4 ++++ src/design/entities/index.tex | 1 + src/sql/Mafia.sql | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 src/design/entities/image.tex diff --git a/src/design/entities/image.tex b/src/design/entities/image.tex new file mode 100644 index 0000000..4003ea4 --- /dev/null +++ b/src/design/entities/image.tex @@ -0,0 +1,4 @@ +\begin{entityTable}{Attels}{entity-image} + \entityTableRow{datnes\_adrese}{varchar(255)}{unique, not null}{Saglabātā attēla adrese operētājsistēmā} + \entityTableRow{pievienosanas\_laiks}{timestamp}{default current\_timestamp, not null}{Laiks, kad tika izveidots/saglabāts dotais attēls datubāzē} +\end{entityTable} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index ec515f2..f3de813 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -5,3 +5,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/role-action.tex} \input{./src/design/entities/role-disadvantage.tex} +\input{./src/design/entities/image.tex} diff --git a/src/sql/Mafia.sql b/src/sql/Mafia.sql index a665e8f..84bad19 100644 --- a/src/sql/Mafia.sql +++ b/src/sql/Mafia.sql @@ -15,7 +15,7 @@ CREATE TABLE CREATE TABLE "Attels" ( "id" SERIAL8 PRIMARY KEY NOT NULL, - "datnes_adrese" VARCHAR(255) UNIQUE, + "datnes_adrese" VARCHAR(255) UNIQUE NOT NULL, "pievienosanas_laiks" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL ); From 315db9f809770700cb92c0d1cb3e4f4d07ed99ee Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:42:12 +0200 Subject: [PATCH 06/28] feat(SubscriptionPrice): add SubscriptionPrice table --- src/design/entities/index.tex | 1 + src/design/entities/subscription-price.tex | 5 +++++ 2 files changed, 6 insertions(+) create mode 100644 src/design/entities/subscription-price.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index f3de813..2826d11 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -6,3 +6,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/role-action.tex} \input{./src/design/entities/role-disadvantage.tex} \input{./src/design/entities/image.tex} +\input{./src/design/entities/subscription-price.tex} diff --git a/src/design/entities/subscription-price.tex b/src/design/entities/subscription-price.tex new file mode 100644 index 0000000..b174aed --- /dev/null +++ b/src/design/entities/subscription-price.tex @@ -0,0 +1,5 @@ +\begin{entityTable}{AbonementaCena}{entity-subscription-price} + \entityTableRow{cena}{decimal(16,2)}{default 0, not null, check (cena >= 0)}{Abonementa cena, kuras garums var būt līdz 16 simboliem un tiek noapaļots līdz 2 cipariem aiz komata} % FIX: `cena` should be in lowercase + \entityTableRow{pievienosanas\_laiks}{timestamp}{default current\_timestamp, not null}{Laiks, kad tika izveidots/saglabāts dotā cena datubāzē} + \entityTableRow{aktivizesanas\_laiks}{timestamp}{not null, check (aktivizesanas\_laiks >= pievienosanas\_laiks)}{Laiks, no kura ši cena ir aktīva} % FIX: should be in lowercase +\end{entityTable} From e93118e1fae23fbc6e59ce641d4d7fad983477d3 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:45:26 +0200 Subject: [PATCH 07/28] feat(PasswordRecovery): add PasswordRecovery table --- src/design/entities/index.tex | 1 + src/design/entities/password-recovery.tex | 4 ++++ 2 files changed, 5 insertions(+) create mode 100644 src/design/entities/password-recovery.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 2826d11..6c8dd0f 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -7,3 +7,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/role-disadvantage.tex} \input{./src/design/entities/image.tex} \input{./src/design/entities/subscription-price.tex} +\input{./src/design/entities/password-recovery.tex} diff --git a/src/design/entities/password-recovery.tex b/src/design/entities/password-recovery.tex new file mode 100644 index 0000000..f60c309 --- /dev/null +++ b/src/design/entities/password-recovery.tex @@ -0,0 +1,4 @@ +\begin{entityTable}{ParolesAtjaunosana}{entity-role-password-recovery} + \entityTableRow{markieris}{varchar(255)}{unique, not null}{Ģenerēts marķieris epasta lietotājaparoles atjaunošanai} + \entityTableRow{deriguma\_termins}{timestamp}{not null}{Laiks, līdz kurams paroles atjaunošana ir iespējama} +\end{entityTable} From c655a238d7a2826a3ef61d2d5daf3a9315abcea3 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 16:48:04 +0200 Subject: [PATCH 08/28] feat(EmailConfirmation): add EmailConfirmation table --- src/design/entities/email-confirmation.tex | 4 ++++ src/design/entities/index.tex | 1 + 2 files changed, 5 insertions(+) create mode 100644 src/design/entities/email-confirmation.tex diff --git a/src/design/entities/email-confirmation.tex b/src/design/entities/email-confirmation.tex new file mode 100644 index 0000000..20b41aa --- /dev/null +++ b/src/design/entities/email-confirmation.tex @@ -0,0 +1,4 @@ +\begin{entityTable}{EpastaApstiprinajums}{entity-role-email-confirmation} + \entityTableRow{markieris}{varchar(255)}{unique, not null}{Ģenerēts marķieris epasta lietotāja apstiprināšanai} + \entityTableRow{deriguma\_termins}{timestamp}{not null}{Laiks, līdz kuram e-pasta apstiprināša ir iespējama} +\end{entityTable} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 6c8dd0f..976e2b8 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -8,3 +8,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/image.tex} \input{./src/design/entities/subscription-price.tex} \input{./src/design/entities/password-recovery.tex} +\input{./src/design/entities/email-confirmation.tex} From 2033a7a4088f99388f6a00b9f458c0776458dfcc Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:00:22 +0200 Subject: [PATCH 09/28] feat(GameRole): add GameRole table --- src/design/entities/game-role.tex | 8 ++++++++ src/design/entities/index.tex | 1 + 2 files changed, 9 insertions(+) create mode 100644 src/design/entities/game-role.tex diff --git a/src/design/entities/game-role.tex b/src/design/entities/game-role.tex new file mode 100644 index 0000000..9b730f2 --- /dev/null +++ b/src/design/entities/game-role.tex @@ -0,0 +1,8 @@ +\begin{entityTable}{SpelesLoma}{entity-game-role} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Lomas nosaukums} + \entityTableRow{apraksts}{text}{default '', not null}{Lomas apraksts} + \entityTableRow{max\_speletaju\_skaits}{int4}{default 1, not null, check (max\_speletaju\_skaits > 0)}{Maksimālais spēlētāju skaiks spēlē ar doto lomu} + \entityTableRow{ir\_pamata}{bool}{default false, not null}{Vai loma ir spēles pamatā vai lietotāju izveidots?} + \entityTableRow{ir\_mafija}{bool}{default false, not null}{Vai loma ir mafija?} + \entityTableRow{attels}{int8}{}{Lomas attēls, FOREING KEY uz \hyperref[tab:entity-image]{Attels} tabulas id kolonnu} +\end{entityTable} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 976e2b8..d46622e 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -9,3 +9,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/subscription-price.tex} \input{./src/design/entities/password-recovery.tex} \input{./src/design/entities/email-confirmation.tex} +\input{./src/design/entities/game-role.tex} From 545c295e39e7b618d0de7aba42fda413c970f96e Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:01:28 +0200 Subject: [PATCH 10/28] fix: label typo --- src/design/entities/email-confirmation.tex | 2 +- src/design/entities/password-recovery.tex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/design/entities/email-confirmation.tex b/src/design/entities/email-confirmation.tex index 20b41aa..d61882b 100644 --- a/src/design/entities/email-confirmation.tex +++ b/src/design/entities/email-confirmation.tex @@ -1,4 +1,4 @@ -\begin{entityTable}{EpastaApstiprinajums}{entity-role-email-confirmation} +\begin{entityTable}{EpastaApstiprinajums}{entity-email-confirmation} \entityTableRow{markieris}{varchar(255)}{unique, not null}{Ģenerēts marķieris epasta lietotāja apstiprināšanai} \entityTableRow{deriguma\_termins}{timestamp}{not null}{Laiks, līdz kuram e-pasta apstiprināša ir iespējama} \end{entityTable} diff --git a/src/design/entities/password-recovery.tex b/src/design/entities/password-recovery.tex index f60c309..4f2e5f9 100644 --- a/src/design/entities/password-recovery.tex +++ b/src/design/entities/password-recovery.tex @@ -1,4 +1,4 @@ -\begin{entityTable}{ParolesAtjaunosana}{entity-role-password-recovery} +\begin{entityTable}{ParolesAtjaunosana}{entity-password-recovery} \entityTableRow{markieris}{varchar(255)}{unique, not null}{Ģenerēts marķieris epasta lietotājaparoles atjaunošanai} \entityTableRow{deriguma\_termins}{timestamp}{not null}{Laiks, līdz kurams paroles atjaunošana ir iespējama} \end{entityTable} From 3ec223da65239b9af447c1a52023ad5b695273ff Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:03:39 +0200 Subject: [PATCH 11/28] feat(AccountStatus): add AccountStatus table --- src/design/entities/account-status.tex | 3 +++ src/design/entities/index.tex | 1 + 2 files changed, 4 insertions(+) create mode 100644 src/design/entities/account-status.tex diff --git a/src/design/entities/account-status.tex b/src/design/entities/account-status.tex new file mode 100644 index 0000000..b0c8bdb --- /dev/null +++ b/src/design/entities/account-status.tex @@ -0,0 +1,3 @@ +\begin{entityTable}{KontaStavoklis}{entity-account-status} + \entityTableRow{teksts}{varchar(255)}{unique, not null}{Konta stāvokļa apraksts} +\end{entityTable} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index d46622e..6ca774c 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -10,3 +10,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/password-recovery.tex} \input{./src/design/entities/email-confirmation.tex} \input{./src/design/entities/game-role.tex} +\input{./src/design/entities/account-status.tex} From 4ceace7c322d160179343e213c7ea1e00df0c1dc Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:05:44 +0200 Subject: [PATCH 12/28] feat(SubscriptionStatus): add SubscriptionStatus table --- src/design/entities/index.tex | 1 + src/design/entities/subscription-status.tex | 3 +++ 2 files changed, 4 insertions(+) create mode 100644 src/design/entities/subscription-status.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 6ca774c..9035eca 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -11,3 +11,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/email-confirmation.tex} \input{./src/design/entities/game-role.tex} \input{./src/design/entities/account-status.tex} +\input{./src/design/entities/subscription-status.tex} diff --git a/src/design/entities/subscription-status.tex b/src/design/entities/subscription-status.tex new file mode 100644 index 0000000..ed527b5 --- /dev/null +++ b/src/design/entities/subscription-status.tex @@ -0,0 +1,3 @@ +\begin{entityTable}{AbonementaStavoklis}{entity-subscription-status} + \entityTableRow{teksts}{varchar(255)}{unique, not null}{Abonementa stāvokļa apraksts} +\end{entityTable} From 80bd3afa2699a96a8d6d4e283f633d35e2fd77f9 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:07:16 +0200 Subject: [PATCH 13/28] feat(RoomStatus): add RoomStatus table --- src/design/entities/index.tex | 1 + src/design/entities/room-status.tex | 3 +++ 2 files changed, 4 insertions(+) create mode 100644 src/design/entities/room-status.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 9035eca..c02296b 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -12,3 +12,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/game-role.tex} \input{./src/design/entities/account-status.tex} \input{./src/design/entities/subscription-status.tex} +\input{./src/design/entities/room-status.tex} diff --git a/src/design/entities/room-status.tex b/src/design/entities/room-status.tex new file mode 100644 index 0000000..d82f3f5 --- /dev/null +++ b/src/design/entities/room-status.tex @@ -0,0 +1,3 @@ +\begin{entityTable}{IstabasStavoklis}{entity-room-status} + \entityTableRow{teksts}{varchar(255)}{unique, not null}{Istabas stāvokļa apraksts} +\end{entityTable} From a0a41f0bb22aed551301c7bf6c3a12d6d558d39e Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:19:08 +0200 Subject: [PATCH 14/28] feat(User): add User table --- src/design/entities/index.tex | 1 + src/design/entities/user.tex | 14 ++++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 src/design/entities/user.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index c02296b..0b8d3ef 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -13,3 +13,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/account-status.tex} \input{./src/design/entities/subscription-status.tex} \input{./src/design/entities/room-status.tex} +\input{./src/design/entities/user.tex} diff --git a/src/design/entities/user.tex b/src/design/entities/user.tex new file mode 100644 index 0000000..7ef862a --- /dev/null +++ b/src/design/entities/user.tex @@ -0,0 +1,14 @@ +\begin{entityTable}{Lietotajs}{entity-user} + \entityTableRow{segvards}{varchar(255)}{unique, not null}{Lietotājvārds} + \entityTableRow{epasts}{varchar(255)}{unique, not null}{Lietotāja e-pasts} + \entityTableRow{parole}{varchar(255)}{not null}{Šifrēta lietotāja parole} + \entityTableRow{vards}{varchar(255)}{default '', not null}{Lietotāja vārds} + \entityTableRow{uzvards}{varchar(255)}{default '', not null}{Lietotāja uzvārds} + \entityTableRow{dzimsanas\_datums}{date}{}{Lietotāja dzimšanas datums} + \entityTableRow{bio\_info}{text}{default ''}{Lietotāja apraksts par sevi} + \entityTableRow{izveidosanas\_laiks}{timestamp}{not null, default current\_timestamp}{Laiks, kad tika izveidots/saglabāts dotais lietotājs datubāzē} + \entityTableRow{attels}{int8}{}{Lietotāja profila attēls, \texttt{FOREING KEY} uz \hyperref[tab:entity-image]{Attels} tabulas id kolonnu} + \entityTableRow{konta\_stavoklis}{int8}{}{Lietotāja konta stāvoklis, \texttt{FOREING KEY} uz \hyperref[tab:entity-account-status]{KontaStavoklis} tabulas id kolonnu} + \entityTableRow{epasta\_apstiprinajums}{int8}{}{Lietotāja e-pasta apstiprinājums, \texttt{FOREING KEY} uz \hyperref[tab:entity-email-confirmation]{EpastaApstiprinajums} tabulas id kolonnu} + \entityTableRow{paroles\_atjaunosana}{int8}{}{Lietotāja paroles atjaunošana, \texttt{FOREING KEY} uz \hyperref[tab:entity-password-recovery]{ParolesAtjaunojana} tabulas id kolonnu} +\end{entityTable} From beef94e046562b663662f2c34e0ba08f8899a493 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:19:38 +0200 Subject: [PATCH 15/28] reformat: FK in monospace --- src/design/entities/game-role.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/design/entities/game-role.tex b/src/design/entities/game-role.tex index 9b730f2..b805124 100644 --- a/src/design/entities/game-role.tex +++ b/src/design/entities/game-role.tex @@ -4,5 +4,5 @@ \entityTableRow{max\_speletaju\_skaits}{int4}{default 1, not null, check (max\_speletaju\_skaits > 0)}{Maksimālais spēlētāju skaiks spēlē ar doto lomu} \entityTableRow{ir\_pamata}{bool}{default false, not null}{Vai loma ir spēles pamatā vai lietotāju izveidots?} \entityTableRow{ir\_mafija}{bool}{default false, not null}{Vai loma ir mafija?} - \entityTableRow{attels}{int8}{}{Lomas attēls, FOREING KEY uz \hyperref[tab:entity-image]{Attels} tabulas id kolonnu} + \entityTableRow{attels}{int8}{}{Lomas attēls, \texttt{FOREING KEY} uz \hyperref[tab:entity-image]{Attels} tabulas id kolonnu} \end{entityTable} From c70717b2ddfacded65d55c9970aa755e5c228955 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:31:39 +0200 Subject: [PATCH 16/28] feat(GameSetup): add GameSetup table --- src/design/entities/game-setup.tex | 7 +++++++ src/design/entities/index.tex | 1 + 2 files changed, 8 insertions(+) create mode 100644 src/design/entities/game-setup.tex diff --git a/src/design/entities/game-setup.tex b/src/design/entities/game-setup.tex new file mode 100644 index 0000000..95ca693 --- /dev/null +++ b/src/design/entities/game-setup.tex @@ -0,0 +1,7 @@ +\begin{entityTable}{SpelesKonfiguracija}{enity-game-setup} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Konfigurācijas nosaukums} + \entityTableRow{apraksts}{text}{default '', not null}{Konfigurācijas apraksts} + \entityTableRow{ir\_pamata}{bool}{default false, not null}{Vai spēles konfigurācijas ir spēles pamatā vai lietotāju izveidots} + \entityTableRow{izveidosanas\_laiks}{timestamp}{not null, default current\_timestamp}{Laiks, kad dotais uzstādījums tika izveidots/saglabāts datubāzē} + \entityTableRow{autors}{int8}{not null}{Konfigurācijas autors, \texttt{FOREING KEY} uz \hyperref[tab:entity-user]{Lietotajs} tabulas id kolonnu} +\end{entityTable} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 0b8d3ef..882b51c 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -14,3 +14,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/subscription-status.tex} \input{./src/design/entities/room-status.tex} \input{./src/design/entities/user.tex} +\input{./src/design/entities/game-setup.tex} From c45634bc8cbdcf68fb5795f0661ee2890a3d4e68 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:32:20 +0200 Subject: [PATCH 17/28] refactor: rename `uzstadijums` to `konfiguracija` --- src/sql/Mafia.sql | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/sql/Mafia.sql b/src/sql/Mafia.sql index 84bad19..6a55454 100644 --- a/src/sql/Mafia.sql +++ b/src/sql/Mafia.sql @@ -93,7 +93,7 @@ CREATE TABLE ); CREATE TABLE - "SpelesUzstadijums" ( + "SpelesKonfiguracija" ( "id" SERIAL8 PRIMARY KEY NOT NULL, "nosaukums" VARCHAR(255) UNIQUE NOT NULL, "apraksts" TEXT DEFAULT '' NOT NULL, @@ -113,9 +113,9 @@ CREATE TABLE "piekluves_kods" CHAR(6) UNIQUE, "vai_rada_miruso_lomu" BOOL DEFAULT FALSE NOT NULL, "izveidosanas_laiks" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, - "speles_uzstadijums" INT8 NOT NULL, + "speles_konfiguracija" INT8 NOT NULL, FOREIGN KEY ("stavoklis") REFERENCES "IstabasStavoklis" ("id"), - FOREIGN KEY ("speles_uzstadijums") REFERENCES "SpelesUzstadijums" ("id") + FOREIGN KEY ("speles_konfiguracija") REFERENCES "SpelesKonfiguracija" ("id") ); CREATE TABLE @@ -189,10 +189,10 @@ CREATE TABLE CREATE TABLE "SpelesUzstatijumuLomas" ( - "speles_uzstadijums" INT8 NOT NULL, + "speles_konfiguracija" INT8 NOT NULL, "speles_loma" INT8 NOT NULL, - PRIMARY KEY ("speles_uzstadijums", "speles_loma"), - FOREIGN KEY ("speles_uzstadijums") REFERENCES "SpelesUzstadijums" ("id"), + PRIMARY KEY ("speles_konfiguracija", "speles_loma"), + FOREIGN KEY ("speles_konfiguracija") REFERENCES "SpelesKonfiguracija" ("id"), FOREIGN KEY ("speles_loma") REFERENCES "SpelesLoma" ("id") ); From 274642b6f4c0bffee9172a930068c18f2d1b069f Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:42:38 +0200 Subject: [PATCH 18/28] feat(Room): add Room table --- src/design/entities/index.tex | 1 + src/design/entities/room.tex | 10 ++++++++++ 2 files changed, 11 insertions(+) create mode 100644 src/design/entities/room.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 882b51c..9d01119 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -15,3 +15,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/room-status.tex} \input{./src/design/entities/user.tex} \input{./src/design/entities/game-setup.tex} +\input{./src/design/entities/room.tex} diff --git a/src/design/entities/room.tex b/src/design/entities/room.tex new file mode 100644 index 0000000..f5020cb --- /dev/null +++ b/src/design/entities/room.tex @@ -0,0 +1,10 @@ +\begin{entityTable}{Istaba}{entity-room} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Istabas Nosaukums} + \entityTableRow{speles\_saksanas\_laiks}{timestamp}{}{Laiks, kad spēle sākas} + \entityTableRow{speles\_beigsanas\_laiks}{timestamp}{}{Laiks, kad spēle beidzas} + \entityTableRow{stavoklis}{int8}{not null}{Pašreizējais spēles stāvoklis, \texttt{FOREING KEY} uz \hyperref[tab:entity-room-status]{IstabasStavoklis} tabulas id kolonnu} + \entityTableRow{piekluves\_kods}{char(6)}{unique}{Unikāls istabas piekļuves kods, 6 lielie burtcipari} + \entityTableRow{vai\_rada\_miruso\_lomu}{bool}{default false, not null}{Vai pēc spēlētāja nāves var atklāt viņa lomu?} + \entityTableRow{izveidosanas\_laiks}{timestamp}{default current\_timestamp, not null}{Laiks, kad dotā spēles istaba tika izveidota/saglabāta datubāzē} + \entityTableRow{epeles\_konfiguracija}{int8}{not null}{Spēles uzstādījumi, kurus izmanto dotā istaba, \texttt{FOREING KEY} uz \hyperref[tab:entity-game-setup]{SpelesKonfiguracija} tabulas id kolonnu} +\end{entityTable} From 79a2ba4a6b20181368544f593c1ba44b6123fe3d Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:42:43 +0200 Subject: [PATCH 19/28] fix: typo --- src/design/entities/game-setup.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/design/entities/game-setup.tex b/src/design/entities/game-setup.tex index 95ca693..559db70 100644 --- a/src/design/entities/game-setup.tex +++ b/src/design/entities/game-setup.tex @@ -1,4 +1,4 @@ -\begin{entityTable}{SpelesKonfiguracija}{enity-game-setup} +\begin{entityTable}{SpelesKonfiguracija}{entity-game-setup} \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Konfigurācijas nosaukums} \entityTableRow{apraksts}{text}{default '', not null}{Konfigurācijas apraksts} \entityTableRow{ir\_pamata}{bool}{default false, not null}{Vai spēles konfigurācijas ir spēles pamatā vai lietotāju izveidots} From 2e0ce7df90b237d175210eccc0e683ff2ca0cd50 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:50:52 +0200 Subject: [PATCH 20/28] feat(GameEvent): add GameEvent table --- src/design/entities/game-event.tex | 6 ++++++ src/design/entities/index.tex | 1 + 2 files changed, 7 insertions(+) create mode 100644 src/design/entities/game-event.tex diff --git a/src/design/entities/game-event.tex b/src/design/entities/game-event.tex new file mode 100644 index 0000000..a9fdd54 --- /dev/null +++ b/src/design/entities/game-event.tex @@ -0,0 +1,6 @@ +\begin{entityTable}{SpelesNotikums}{entity-game-event} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Notikuma nosaukums} + \entityTableRow{nakts\_pk}{int2}{default 0, not null, check (nakts\_pk >= 0)}{Spēles nakts pēc kārtas} % FIX: + \entityTableRow{ir\_redzams}{bool}{default false, not null}{Vai notikums ir redzams spēlētājiem procesa laikā?} + \entityTableRow{izveidosanas\_laiks}{timestamp}{not null, default current\_timestamp}{Laiks, kad dotais spēles notikums tika izveidots/saglabāts datubāzē} +\end{entityTable} diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 9d01119..c882d24 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -16,3 +16,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/user.tex} \input{./src/design/entities/game-setup.tex} \input{./src/design/entities/room.tex} +\input{./src/design/entities/game-event.tex} From 19da7af777e94907c5e76ebfe1ea85b79f173827 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:51:31 +0200 Subject: [PATCH 21/28] feat(GameEvent sql): add check clause --- src/sql/Mafia.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sql/Mafia.sql b/src/sql/Mafia.sql index 6a55454..da029ff 100644 --- a/src/sql/Mafia.sql +++ b/src/sql/Mafia.sql @@ -122,7 +122,7 @@ CREATE TABLE "SpelesNotikums" ( "id" SERIAL8 PRIMARY KEY NOT NULL, "nosaukums" VARCHAR(255) UNIQUE NOT NULL, - "nakts_pk" INT2 DEFAULT 0 NOT NULL, + "nakts_pk" INT2 DEFAULT 0 NOT NULL CHECK ("nakts_pk" >= 0), "veids" VARCHAR(255), "ir_redzams" BOOL DEFAULT FALSE NOT NULL, "izveidosanas_laiks" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, From 781fe6dde47b5ead6812abf7f1ea933d8c74d7f6 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 17:57:48 +0200 Subject: [PATCH 22/28] feat(Player): add Player table --- src/design/entities/index.tex | 1 + src/design/entities/player.tex | 10 ++++++++++ 2 files changed, 11 insertions(+) create mode 100644 src/design/entities/player.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index c882d24..8b142c7 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -17,3 +17,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/game-setup.tex} \input{./src/design/entities/room.tex} \input{./src/design/entities/game-event.tex} +\input{./src/design/entities/player.tex} diff --git a/src/design/entities/player.tex b/src/design/entities/player.tex new file mode 100644 index 0000000..26ec59b --- /dev/null +++ b/src/design/entities/player.tex @@ -0,0 +1,10 @@ +\begin{entityTable}{Speletajs}{entity-player} + \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Notikuma nosaukums} + \entityTableRow{ir\_noslepkavots}{bool}{default false, not null}{Vai dotais spēlētājs ir noslepkavots?} + \entityTableRow{ir\_izbalsots}{bool}{default false, not null}{Vai dotais spēlētājs ir izbalsots?} + \entityTableRow{ir\_izslegts}{bool}{default false, not null}{Vai dotais spēlētājs ir izslēgts?} + \entityTableRow{ir\_aktivs}{bool}{default true, not null}{Vai dotais spēlētājs ir aktīvs?} + \entityTableRow{redz\_mafijas\_sakarus}{bool}{default false, not null}{Vai dotais spēlētājs ir redz mafijas sakarus?} + \entityTableRow{istaba}{int8}{}{Istaba, kurā spēlē dotais spēlētājs, \texttt{FOREING KEY} uz \hyperref[tab:entity-room]{Istaba} tabulas id kolonnu} + \entityTableRow{speles\_loma}{int8}{not null}{Loma, kuru spēlē dotais spēlētājs, \texttt{FOREING KEY} uz \hyperref[tab:entity-game-role]{SpelesLoma} tabulas id kolonnu} +\end{entityTable} From d638a1a04356cbab9cab02c75ee929be67c55470 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 18:06:19 +0200 Subject: [PATCH 23/28] feat(PaidSubscription): add PaidSubscription table --- src/design/entities/index.tex | 1 + src/design/entities/paid-subscription.tex | 9 +++++++++ 2 files changed, 10 insertions(+) create mode 100644 src/design/entities/paid-subscription.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 8b142c7..9a9e4cc 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -18,3 +18,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/room.tex} \input{./src/design/entities/game-event.tex} \input{./src/design/entities/player.tex} +\input{./src/design/entities/paid-subscription.tex} diff --git a/src/design/entities/paid-subscription.tex b/src/design/entities/paid-subscription.tex new file mode 100644 index 0000000..c39c2fa --- /dev/null +++ b/src/design/entities/paid-subscription.tex @@ -0,0 +1,9 @@ +\begin{entityTable}{MaksasAbonements}{entity-paid-subscription} + \entityTableRow{stripe\_id}{varchar(255)}{unique, not null}{Unikālais identifikators, kurš tiek iegūts no maksājuma procesora klienta - \hyperref[https://stripe.com]{Stripe}} % FIX: use correct url function + \entityTableRow{stavoklis}{int8}{not null}{Abonementa stāvoklis, \texttt{FOREING KEY} uz \hyperref[tab:entity-subscription-status]{AbonementaStavoklis} tabulas id kolonnu} + \entityTableRow{sakuma\_laiks}{timestamp}{not null, default current\_timestamp}{Laiks, kad abonements ir aktivizēts} + \entityTableRow{periods}{interval}{not null}{Laika periods dienās, cik ilgi abonements ir aktīvs} + \entityTableRow{atteikums\_laiks}{timestamp}{}{Laiks, kad lietotājs atteicās no abonementa} + \entityTableRow{lietotajs}{int8}{not null}{Abonementa lietotājs, \texttt{FOREING KEY} uz \hyperref[tab:entity-user]{Lietotajs} tabulas id kolonnu} + \entityTableRow{abonementa\_cena}{int8}{not null}{Abonementa cena, \texttt{FOREING KEY} uz \hyperref[tab:entity-subscription-price]{AbonementaCena} tabulas id kolonnu} +\end{entityTable} From 514937853c4d0d0d2f7e5ca8c13ab8b19c5aca9d Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 18:09:42 +0200 Subject: [PATCH 24/28] feat(Message): add Message table --- src/design/entities/index.tex | 1 + src/design/entities/message.tex | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 src/design/entities/message.tex diff --git a/src/design/entities/index.tex b/src/design/entities/index.tex index 9a9e4cc..3fec4d7 100644 --- a/src/design/entities/index.tex +++ b/src/design/entities/index.tex @@ -19,3 +19,4 @@ Visām tabulām, \texttt{VARCHAR} un \texttt{TEXT} laukiem tiek lietots UTF8 kod \input{./src/design/entities/game-event.tex} \input{./src/design/entities/player.tex} \input{./src/design/entities/paid-subscription.tex} +\input{./src/design/entities/message.tex} diff --git a/src/design/entities/message.tex b/src/design/entities/message.tex new file mode 100644 index 0000000..f754fe0 --- /dev/null +++ b/src/design/entities/message.tex @@ -0,0 +1,6 @@ +\begin{entityTable}{Iszina}{entity-message} + \entityTableRow{teksts}{text}{not null}{Īsziņas teksts} + \entityTableRow{if\_mafijas_iszina}{bool}{default false, not null}{Vai īsziņas sūtītājs ir mafija?} + \entityTableRow{ir\_izmainita}{bool}{default false, not null}{Vai īsziņas staurs ir izmainīts?} + \entityTableRow{autors}{int8}{not null}{Īsziņas sūtītājs, \texttt{FOREING KEY} uz \hyperref[tab:entity-user]{Lietotajs} tabulas id kolonnu} +\end{entityTable} From 6f52db7b93ff34624676654924697286d7b29561 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 18:14:07 +0200 Subject: [PATCH 25/28] fix: typo --- src/design/entities/room.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/design/entities/room.tex b/src/design/entities/room.tex index f5020cb..26ee0d7 100644 --- a/src/design/entities/room.tex +++ b/src/design/entities/room.tex @@ -6,5 +6,5 @@ \entityTableRow{piekluves\_kods}{char(6)}{unique}{Unikāls istabas piekļuves kods, 6 lielie burtcipari} \entityTableRow{vai\_rada\_miruso\_lomu}{bool}{default false, not null}{Vai pēc spēlētāja nāves var atklāt viņa lomu?} \entityTableRow{izveidosanas\_laiks}{timestamp}{default current\_timestamp, not null}{Laiks, kad dotā spēles istaba tika izveidota/saglabāta datubāzē} - \entityTableRow{epeles\_konfiguracija}{int8}{not null}{Spēles uzstādījumi, kurus izmanto dotā istaba, \texttt{FOREING KEY} uz \hyperref[tab:entity-game-setup]{SpelesKonfiguracija} tabulas id kolonnu} + \entityTableRow{speles\_konfiguracija}{int8}{not null}{Spēles uzstādījumi, kurus izmanto dotā istaba, \texttt{FOREING KEY} uz \hyperref[tab:entity-game-setup]{SpelesKonfiguracija} tabulas id kolonnu} \end{entityTable} From 918766fc8fa16d03f2c7515120f5ba67d8937c3c Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 18:15:50 +0200 Subject: [PATCH 26/28] fix: typo --- src/design/entities/message.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/design/entities/message.tex b/src/design/entities/message.tex index f754fe0..576bafd 100644 --- a/src/design/entities/message.tex +++ b/src/design/entities/message.tex @@ -1,6 +1,6 @@ \begin{entityTable}{Iszina}{entity-message} \entityTableRow{teksts}{text}{not null}{Īsziņas teksts} - \entityTableRow{if\_mafijas_iszina}{bool}{default false, not null}{Vai īsziņas sūtītājs ir mafija?} + \entityTableRow{if\_mafijas\_iszina}{bool}{default false, not null}{Vai īsziņas sūtītājs ir mafija?} \entityTableRow{ir\_izmainita}{bool}{default false, not null}{Vai īsziņas staurs ir izmainīts?} \entityTableRow{autors}{int8}{not null}{Īsziņas sūtītājs, \texttt{FOREING KEY} uz \hyperref[tab:entity-user]{Lietotajs} tabulas id kolonnu} \end{entityTable} From 4d7785f3e2146dffda1b942173e77378a8e91c45 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 18:39:09 +0200 Subject: [PATCH 27/28] fix: lowercase variables in checks --- src/design/entities/game-event.tex | 2 +- src/design/entities/game-role.tex | 2 +- src/design/entities/paid-subscription.tex | 2 +- src/design/entities/room.tex | 6 ++--- src/design/entities/subscription-price.tex | 4 +-- src/utils/entity-table.tex | 30 +++++++++++----------- 6 files changed, 23 insertions(+), 23 deletions(-) diff --git a/src/design/entities/game-event.tex b/src/design/entities/game-event.tex index a9fdd54..2cd5d7b 100644 --- a/src/design/entities/game-event.tex +++ b/src/design/entities/game-event.tex @@ -1,6 +1,6 @@ \begin{entityTable}{SpelesNotikums}{entity-game-event} \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Notikuma nosaukums} - \entityTableRow{nakts\_pk}{int2}{default 0, not null, check (nakts\_pk >= 0)}{Spēles nakts pēc kārtas} % FIX: + \entityTableRow{nakts\_pk}{int2}{default 0, not null, check (\lowercase{nakts\_pk} >= 0)}{Spēles nakts pēc kārtas} \entityTableRow{ir\_redzams}{bool}{default false, not null}{Vai notikums ir redzams spēlētājiem procesa laikā?} \entityTableRow{izveidosanas\_laiks}{timestamp}{not null, default current\_timestamp}{Laiks, kad dotais spēles notikums tika izveidots/saglabāts datubāzē} \end{entityTable} diff --git a/src/design/entities/game-role.tex b/src/design/entities/game-role.tex index b805124..a27a3c1 100644 --- a/src/design/entities/game-role.tex +++ b/src/design/entities/game-role.tex @@ -1,7 +1,7 @@ \begin{entityTable}{SpelesLoma}{entity-game-role} \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Lomas nosaukums} \entityTableRow{apraksts}{text}{default '', not null}{Lomas apraksts} - \entityTableRow{max\_speletaju\_skaits}{int4}{default 1, not null, check (max\_speletaju\_skaits > 0)}{Maksimālais spēlētāju skaiks spēlē ar doto lomu} + \entityTableRow{max\_speletaju\_ skaits}{int4}{default 1, not null, check (\lowercase{max\_speletaju\_ skaits} > 0)}{Maksimālais spēlētāju skaiks spēlē ar doto lomu} \entityTableRow{ir\_pamata}{bool}{default false, not null}{Vai loma ir spēles pamatā vai lietotāju izveidots?} \entityTableRow{ir\_mafija}{bool}{default false, not null}{Vai loma ir mafija?} \entityTableRow{attels}{int8}{}{Lomas attēls, \texttt{FOREING KEY} uz \hyperref[tab:entity-image]{Attels} tabulas id kolonnu} diff --git a/src/design/entities/paid-subscription.tex b/src/design/entities/paid-subscription.tex index c39c2fa..996ca01 100644 --- a/src/design/entities/paid-subscription.tex +++ b/src/design/entities/paid-subscription.tex @@ -1,5 +1,5 @@ \begin{entityTable}{MaksasAbonements}{entity-paid-subscription} - \entityTableRow{stripe\_id}{varchar(255)}{unique, not null}{Unikālais identifikators, kurš tiek iegūts no maksājuma procesora klienta - \hyperref[https://stripe.com]{Stripe}} % FIX: use correct url function + \entityTableRow{stripe\_id}{varchar(255)}{unique, not null}{Unikālais identifikators, kurš tiek iegūts no maksājuma procesora klienta - \href{https://stripe.com}{Stripe}} % FIX: use correct url function \entityTableRow{stavoklis}{int8}{not null}{Abonementa stāvoklis, \texttt{FOREING KEY} uz \hyperref[tab:entity-subscription-status]{AbonementaStavoklis} tabulas id kolonnu} \entityTableRow{sakuma\_laiks}{timestamp}{not null, default current\_timestamp}{Laiks, kad abonements ir aktivizēts} \entityTableRow{periods}{interval}{not null}{Laika periods dienās, cik ilgi abonements ir aktīvs} diff --git a/src/design/entities/room.tex b/src/design/entities/room.tex index 26ee0d7..71d79b0 100644 --- a/src/design/entities/room.tex +++ b/src/design/entities/room.tex @@ -1,10 +1,10 @@ \begin{entityTable}{Istaba}{entity-room} \entityTableRow{nosaukums}{varchar(255)}{unique, not null}{Istabas Nosaukums} - \entityTableRow{speles\_saksanas\_laiks}{timestamp}{}{Laiks, kad spēle sākas} - \entityTableRow{speles\_beigsanas\_laiks}{timestamp}{}{Laiks, kad spēle beidzas} + \entityTableRow{speles\_saksanas\_ laiks}{timestamp}{}{Laiks, kad spēle sākas} + \entityTableRow{speles\_beigsanas\_ laiks}{timestamp}{}{Laiks, kad spēle beidzas} \entityTableRow{stavoklis}{int8}{not null}{Pašreizējais spēles stāvoklis, \texttt{FOREING KEY} uz \hyperref[tab:entity-room-status]{IstabasStavoklis} tabulas id kolonnu} \entityTableRow{piekluves\_kods}{char(6)}{unique}{Unikāls istabas piekļuves kods, 6 lielie burtcipari} - \entityTableRow{vai\_rada\_miruso\_lomu}{bool}{default false, not null}{Vai pēc spēlētāja nāves var atklāt viņa lomu?} + \entityTableRow{vai\_rada\_miruso\_ lomu}{bool}{default false, not null}{Vai pēc spēlētāja nāves var atklāt viņa lomu?} \entityTableRow{izveidosanas\_laiks}{timestamp}{default current\_timestamp, not null}{Laiks, kad dotā spēles istaba tika izveidota/saglabāta datubāzē} \entityTableRow{speles\_konfiguracija}{int8}{not null}{Spēles uzstādījumi, kurus izmanto dotā istaba, \texttt{FOREING KEY} uz \hyperref[tab:entity-game-setup]{SpelesKonfiguracija} tabulas id kolonnu} \end{entityTable} diff --git a/src/design/entities/subscription-price.tex b/src/design/entities/subscription-price.tex index b174aed..c9de634 100644 --- a/src/design/entities/subscription-price.tex +++ b/src/design/entities/subscription-price.tex @@ -1,5 +1,5 @@ \begin{entityTable}{AbonementaCena}{entity-subscription-price} - \entityTableRow{cena}{decimal(16,2)}{default 0, not null, check (cena >= 0)}{Abonementa cena, kuras garums var būt līdz 16 simboliem un tiek noapaļots līdz 2 cipariem aiz komata} % FIX: `cena` should be in lowercase + \entityTableRow{cena}{decimal(16,2)}{default 0, not null, check (\lowercase{cena} >= 0)}{Abonementa cena, kuras garums var būt līdz 16 simboliem un tiek noapaļots līdz 2 cipariem aiz komata} \entityTableRow{pievienosanas\_laiks}{timestamp}{default current\_timestamp, not null}{Laiks, kad tika izveidots/saglabāts dotā cena datubāzē} - \entityTableRow{aktivizesanas\_laiks}{timestamp}{not null, check (aktivizesanas\_laiks >= pievienosanas\_laiks)}{Laiks, no kura ši cena ir aktīva} % FIX: should be in lowercase + \entityTableRow{aktivizesanas\_laiks}{timestamp}{not null, check (\lowercase{aktivizesanas\_ laiks} >= \lowercase{pievienosanas\_ laiks})}{Laiks, no kura ši cena ir aktīva} \end{entityTable} diff --git a/src/utils/entity-table.tex b/src/utils/entity-table.tex index a0f403a..3616004 100644 --- a/src/utils/entity-table.tex +++ b/src/utils/entity-table.tex @@ -1,27 +1,27 @@ \newenvironment{entityTable}[2]{% - \tabularx{\linewidth}{|X|X|X|X|} - \caption{#1} \label{tab:#2} \\ +\tabularx{\linewidth}{|p{4cm}|p{2.7cm}|X|X|} +\caption{#1} \label{tab:#2} \\ - \hline - \textbf{Lauks} & \textbf{Datu tips} & \textbf{Lauka atribūti} & \textbf{Apraksts} \\ \hline - \endfirsthead +\hline +\textbf{Lauks} & \textbf{Datu tips} & \textbf{Lauka atribūti} & \textbf{Apraksts} \\ \hline +\endfirsthead - \hline \multicolumn{4}{r}{Turpinājums no iepriekšējās lapas} \\ \hline - \textbf{Lauks} & \textbf{Datu tips} & \textbf{Lauka atribūti} & \textbf{Apraksts} \\ \hline - \endhead +\hline \multicolumn{4}{r}{Turpinājums no iepriekšējās lapas} \\ \hline +\textbf{Lauks} & \textbf{Datu tips} & \textbf{Lauka atribūti} & \textbf{Apraksts} \\ \hline +\endhead - \hline \multicolumn{4}{r}{Turpinājums nākamajā lapā} \\ \hline - \endfoot +\hline \multicolumn{4}{r}{Turpinājums nākamajā lapā} \\ \hline +\endfoot - \hline - \endlastfoot +\hline +\endlastfoot - \entityTableRow{id}{serial8}{primary key, not null}{Unikālais identifikators} +\entityTableRow{id}{serial8}{primary key, not null}{Unikālais identifikators} }{ - \endtabularx +\endtabularx } \newcommand{\entityTableRow}[4]{ - #1 & \uppercase{\texttt{#2}} & \uppercase{\texttt{#3}} & #4 \\ \hline + #1 & \texttt{\uppercase{#2}} & \texttt{\uppercase{#3}} & #4 \\ \hline } From 33ff0af74a7aa2680d1e21d7e7e570a458bc3c02 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Mon, 30 Oct 2023 18:39:30 +0200 Subject: [PATCH 28/28] fead(url): change url color --- Mafia-the-Game.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Mafia-the-Game.tex b/Mafia-the-Game.tex index 5522713..1d57780 100644 --- a/Mafia-the-Game.tex +++ b/Mafia-the-Game.tex @@ -8,6 +8,7 @@ \usepackage{geometry} \usepackage{graphicx} \usepackage{hyperref} +\usepackage{array} \usepackage{indentfirst} \usepackage{multicol} \usepackage{multirow} @@ -32,11 +33,10 @@ % \usepackage{mdframed} \usetikzlibrary{positioning} - \hypersetup{ colorlinks=true, linkcolor=black, - urlcolor=blue + urlcolor=black } \urlstyle{rm}