feat: feedback, and add mpdf gen

This commit is contained in:
2023-03-21 17:52:19 +01:00
parent 4679d06da6
commit 857340c635
14 changed files with 198 additions and 141 deletions

View File

@@ -4,25 +4,25 @@ Infolge der Anforderungsanalyse befasst sich das Kapitel \enquote{Umsetzung} mit
Brown-Field Projekt \cite{bib:schwarzer-vorlesung-swa} in Form einer TYPO3-Extension.
\section{Setup einer TYPO3-Extension}
TYPO3-Extension werden via Composer installiert \cite{bib:typo3-docs-managing-extensions}.
Um eine TYPO3-Extension zu erstellen muss also ein Composer-Paket erstellt werden.
Um vermeidbare Komplexität zu verhindern wird das Composer-Paket das eine die hier betrachtete
TYPO3-Extensions werden via Composer installiert \cite{bib:typo3-docs-managing-extensions}.
Um eine TYPO3-Extension zu erstellen, muss also ein Composer-Paket erstellt werden.
Um vermeidbare Komplexität zu verhindern, wird das Composer-Paket, welches die hier betrachtete
TYPO3-Extension darstellt, lokal in den versionierten Ordner \enquote{packages} gelegt.
Dieses Verzeichnis wird als Quelle für Composer-Pakete in der
Haupt-composer.json-Datei hinterlegt.
Somit wird ein Composer-Paket nur für dieses Projekt bereitgestellt,
ohne den Aufwand, der mit dem Bereitstellen eines Paketes einhergeht, zu haben.
ohne den Aufwand zu haben, der üblicherweise mit dem Bereitstellen eines Paketes einhergeht.
\\
\\
Um das grundlegende Setup einer Extension effizient durchzuführen wurde eine
existierende Extension vergleichbarem Funktionsumfanges kopiert, umbenannt, und eingefügt.
Spezifisch ist der \enquote{vergleichbare Funktionsumfang}, dass es Datenmodelle und Plugins
gibt.
Um das grundlegende Setup einer Extension effizient durchzuführen, wurde eine
existierende Extension mit vergleichbarem Funktionsumfang kopiert, umbenannt und eingefügt.
Spezifisch ist der \enquote{vergleichbare Funktionsumfang}, dass es Datenmodelle und hochpersonalisierte
Frontendlogik in Bezug auf die zuvor genannten Datenmodelle gibt.
\section{Digitization}
Die Phase der Digitazion befasst sich mit der digitalen Abbildung von Objekten der realen Welt
in einer Art und Weise sodass diese elektronisch weiterverarbeitet werden können \cite{bib:dougherty, bib:loebbecke}.
Das bedeutet, dass in diese Phase Datenobjekte definiert und implementiert werden.
in einer Art und Weise, sodass diese elektronisch weiterverarbeitet werden können \cite{bib:dougherty, bib:loebbecke}.
Das bedeutet, dass in dieser Phase Datenobjekte definiert und implementiert werden.
Ein Datenobjekt besteht nach firmeninternen Konventionen aus zumindest
vier Komponenten:
\begin{description}
@@ -40,8 +40,8 @@ vier Komponenten:
\end{description}
\cite{bib:typo3-docs-extbase-reference}.
Im Folgenden wurde ein semiformales Diagramm der Objekte und ihren Relationen nach dem
Pflichtenheft angefertigt und in Rücksprache mit dem \ac{PO} finalisiert.
Im Folgenden wurde ein semiformales Diagramm der Objekte und ihren Relationen
angefertigt und in Rücksprache mit dem \ac{PO} finalisiert.
\begin{nicepic}
\includegraphics[width=1\textwidth]{images/objektrelationen-weinlandmosel-einlieferungswerkzeug.png}
@@ -56,11 +56,11 @@ formalen Klassendiagramm festgehalten und in Rücksprache mit dem \ac{PO}
weiter bis zu festen Datentypen und Auswahlmöglichkeiten konkretisiert.
Beispielsweise, dass Wettbewerbskategorien durch TYPO3-Categories repräsentiert werden sollen.
Das hat den Vorteil, dass TYPO3-Categories bereits native Bestandteile eines TYPO3-Redaktionssystemes sind
und bereits alle relevanten Attribute anbieten. Diese sind ein Titel,
und alle relevanten Attribute anbieten. Diese sind ein Titel,
eine Parentkategorie und eine Beschreibung.
Das Parent-Attribut ist benötigt, da $n$ dieser Attribute einen Attributbaum bilden
\cite{bib:typo3-docs-sys-category}.
Somit ist es möglich Unterkategorien zu erstellen. Beispiele hierfür sind die
Somit ist es möglich, Unterkategorien zu erstellen. Beispiele hierfür sind die
Unterkategorien \enquote{Trockener Riesling} und \enquote{Halbtrockener Riesling} für die Überkategorie
\enquote{Riesling}.
Rebsorten, Geschmack, Weineigenschaften und Qualität sollen eigene Datentypen
@@ -92,7 +92,8 @@ Mit Abschluss der Digitization können alle Datenstrukturen im TYPO3-Backend hä
eingesehen, gelöscht und bearbeitet werden.
\section{Teilnehmerregistrierung}
\section{Digitalization}
\subsection{Teilnehmerregistrierung}
Ein essenzieller Teil des Jahresauswahlprobenwerkzeuges ist die Registrierung von Teilnehmern.
Dieses Modul repräsentiert den ersten Berührungspunkt der Winzer mit dem System.
Dem Pflichtenheft ist zu entnehmen, dass es zwei Kategorien von Teilnehmerregistrierungen gibt:
@@ -137,7 +138,7 @@ Grundlegend gibt es drei relevante Nutzerzustände vor der Registrierung:
\end{enumerate}
Diese Prozesse sehen wie folgt aus:
\subsection*{Kein Mitglied}
\subsubsection*{Kein Mitglied}
Ist ein Nutzer kein Mitglied, so muss er zunächst einen Account erstellen.
Anfangs wählt dieser Nutzer \enquote{Ich bin kein Mitglied} auf der Registrierungsseite aus.
Daraufhin navigiert der Browser zu einem Registrierungs-Formular.
@@ -148,13 +149,13 @@ Nach erfolgreichem Login wird der Nutzer mit einem
Stammdatenformular konfrontiert. Dabei handelt es sich um Angaben zum teilnehmenden Weingut.
Wird dieses Formular abgeschickt, ist die Teilnehmerregistrierung abgeschlossen.
\subsection*{Mitglied, mit Konto}
\subsubsection*{Mitglied, mit Konto}
Ist ein Nutzer ein Mitglied und hat bereits ein Mitgliedskonto, muss dieser auf der Registrierungsseite
\enquote{Ich bin ein Mitglied} auswählen. An dieser Stelle navigiert der Browser zu einem Login-Formular.
Hier kann sich das Mitglied nun anmelden. Tut er dies erfolgreich, ist die Teilnehmerregistrierung
abgeschlossen.
\subsection*{Mitglied, ohne Konto}
\subsubsection*{Mitglied, ohne Konto}
Ist ein Nutzer ein Mitglied und hat noch kein Mitgliedskonto, muss dieser auf der Registrierungsseite
\enquote{Ich bin ein Mitglied} auswählen. An dieser Stelle navigiert der Browser zu einem Login-Formular.
Auf diesem Login-Formular existiert ein Button \enquote{Jetzt registrieren}, sowie ein Hinsweistext dazu.
@@ -166,7 +167,7 @@ freigegeben und es öffnet sich ein Login-Formular.
Nach erfolgreichem Login wird das Mitgliedskonto um die notwendingen Teilnehmereigenschaften erweitert
und ist somit erfolgreich als Teilnehmer registriert.
\subsection*{Umsetzung}
\subsubsection*{Umsetzung}
Um das umzusetzen wurde zunächst ein simples Weichen-Content-Element erstellt.
Dieses Content-Element hat die Parameter \enquote{question}, \enquote{answ-1-link}, \enquote{answ-1-text},
\enquote{answ-2-link} sowie \enquote{answ-2-text}.