refactor: user module (incomplete)

This commit is contained in:
Kristofers Solo 2023-10-30 22:46:47 +02:00
parent 6ac3a34127
commit 8f06d81a69
2 changed files with 67 additions and 49 deletions

View File

@ -4,45 +4,51 @@
{Lietotāju profilu pārskats}
{LAMF01}
{
Funkcijas mērķis ir lietotājiem rādīt citu lietotāju profilu publisku informāciju (profilu).
Funkcijas ietvaros var tikt veikta neobligāta meklēšana pēc noteiktiem lietotāja profilu atribūtiem.
Funkcijas mērķis ir lietotājiem sniegt citu lietotāju profilu publisku informāciju. Funkcijas ietvaros var tikt veikta neobligāta meklēšana pēc noteiktiem lietotāja profilu atribūtiem.
}
{
Ievades datus iegūst no veicamās darbības.
Ievades datus iegūst no lietotāja neobligāti uzstādītiem filtriem, kārtošanas izvēles un lappuses numura un meklēšanas uzvednes.
Parametri atbilst attiecīgām saitēm un ievades laukam lietotāja saskarnē un izvēlnēm pārskata lapās.
Parametru vērtības tiek iegūtas no vietrādes parametriem.
Neobligātie parametri:
\begin{enumerate}
\item Meklēšanas uzvedne - simbolu virkne ar garumu līdz 50 simboliem bez atļauto simbolu ierobežojumiem.
\item Lappuses numurs - vesels pozitīvs skaitlis;
\item Meklēšanas uzvedne - simbolu virkne ar garumu līdz 50 simboliem bez atļauto simbolu ierobežojumiem;
\item Kārtošanas vārdnīcu saraksts, kas sastāv no vārdnīcām: datu bāzes atribūta nosaukums (atbilst \hyperref[tab:IIDP12]{IIDP12}) - kārtošanas kods (atbilst \hyperref[tab:IIDP11]{IIDP11});
\item Filtru vārdnīcu saraksts, kas sastāv no vārdnīcām: datu bāzes atribūta nosaukums (atbilst \hyperref[tab:IIDP12]{IIDP12}) - filtra vērtība (vesels skaitlis) un filtra veids (0 - Būla mainīgā filtrs, 1 - entitātes identifikatora filtrs).
\end{enumerate}
}
{
\begin{enumerate}
\item Sagatavo datubāzes pieprasījumu no lietotāju tabulas.
\item Ja meklēšanas uzvedne nav tukša simbolu virkne, tad pieprasījumam pievieno meklēšanas nosacījumu meklēšanai pēc pilna vārda, segvārda un biogrāfijas.
\item Pieprasa ierakstu saskaitīšanu, izmantojot sagatavoto pieprasījumu.
Ja rezultātu skaits ir $0$, tad parāda 1. paziņojumu.
\item Aprēķina lappušu skaitu ar formulu: $L = ceil(Q / Q_l)$, $Q$ - rezultātu skaits, $Q_l$ - ierakstu skaits vienā lappusē.
\item Ja ievaddatos nav lappuses numurs vai tā pārsniedz aprēķināto lappušu skaitu, tad turpmāk lappuses numurs būs 1.
\item Aprēķina ierakstu nobīdi ar formulu: $O = (N - 1) * Q_l$, kur $O$ - nobīde; $N$ - lappuses numurs, $Q_l$ - ierakstu skaits vienā lappusē.
\item Pievieno pieprasījumam nobīdi pēc aprēķinātās lappuses.
\item Veic sagatavoto pieprasījumu, iegūstot abonementa segvārdu, izveidošanas laiku (lietotāja pievienošanās laiku), attēla datnes adreses.
Ja pieprasījums neizdodas, parāda 2. paziņojumu.
\item Ja attēls datnes adrese neeksistē, tad iegūst noklusētā attēla datnes adresi.
\item Sāk gatavot datubāzes pieprasījumu no lietotāju tabulas;
\item Sagatavo pārskata pieprasījumu un iegūst lappuses numuru un kopējo lappušu skaitu, izmantojot \hyperref[tab:KPR07]{KPR07} ar lappuses numuru, meklēšanas uzvedni, kārtošanas vārdnīcu sarakstu, filtru vārdnīcu sarakstu, šos parametrus iesniedzot, ja tie ir iesniegti funkcijā;
\begin{enumerate}
\item Ja lappušu skaits ir 0, tad parāda 1. paziņojumu. Beidz apstrādi.
\end{enumerate}
\item Veic sagatavoto pieprasījumu, iegūstot lietotāja segvārdu, lietotāja konta izveidošanas laiku (lietotāja pievienošanās laiku), lietotāja attēla datnes adreses;
\begin{enumerate}
\item Ja pieprasījums neizdodas, parāda 2. paziņojumu. Beidz apstrādi.
\end{enumerate}
\item Katram ierakstam no rezultāta, iegūst sameklē attēla datnes adresi no attēlu tabulas pēc attēla identifikatora.
\begin{enumerate}
\item Ja attēla datnes adrese neeksistē ierakstam, tad iegūst noklusētā attēla datnes adresi un pamaina ieraksta datnes adresi izvades datos uz noklusētā datnes attēla adresi.
\end{enumerate}
\end{enumerate}
}
{
Izvades datu mērķis ir parādīt pārskata, ņemot meklēšanas uzvedni, ja tā tukša.
Izvades dati:
Izvades datu mērķis ir parādīt rezultāta pārskatu lietotāja saskarnē.
\begin{enumerate}
\item Pārskata ieraksta dati: vairāki ieraksti, kas sastāv no segvārda, lietotāja konta izveidošanas laika (lietotāja pievienošanās laiku).
\item Lapu skaits - pozitīvs skaitlis.
\item Tekošā lappuse - pozitīvs skaitlis, kas ir mazāks vai vienāds par lapu skaitu.
\item Pārskata ierakstu saraksts: ierakstu saraksts, kas sastāv no: lietotāja identifikatora, segvārda, lietotāja konta izveidošanas laika (lietotāja pievienošanās laiku);
\item Kopējais lapu skaits - vesels pozitīvs skaitlis;
\item Tekošā lappuse - vesels pozitīvs skaitlis, kas ir mazāks vai vienāds par lapu skaitu;
\item Kārtošanas vārdnīcu saraksts, kas sastāv no vārdnīcām: datu bāzes atribūta nosaukums (atbilst \hyperref[tab:IIDP12]{IIDP12}) - kārtošanas kods (atbilst \hyperref[tab:IIDP11]{IIDP11});
\item Filtru vārdnīcu saraksts, kas sastāv no vārdnīcām: datu bāzes atribūta nosaukums (atbilst \hyperref[tab:IIDP12]{IIDP12}) - filtra vērtība (vesels skaitlis) un filtra veids ($0$ - Būla mainīgā filtrs, $1$ - entitātes identifikatora filtrs).
\end{enumerate}
}
{
\begin{enumerate}
\item Pēc jūsu meklēšanas uzvednes netika atrasts neviens lietotājs!
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
\item Netika atrasts neviens lietotājs!;
\item Sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
\end{enumerate}
}

View File

@ -4,49 +4,61 @@
{Lietotāja konta detaļas}
{LAMF02}
{
Funkcijas mērķis ir reģistrētiem lietotājiem iegūt konta savu informāciju, kas ietver gan publisko informāciju, gan privāto.
Administratoriem informācija ir iegūstamā par jebkuru lietotāju.
Funkcijas mērķis ir reģistrētiem lietotājiem saņemt savu informāciju, kas ietver gan publisko informāciju, gan privāto. Administratoriem informācija ir iegūstama par jebkuru lietotāju.
}
{
Ievades datus iegūst no vietrāža parametriem, caur kuru tiek piekļūts funkcijai.
Alternatīvi, dati tiek iegūti no konteksta.
Ievades datus iegūst no vietrāža parametriem, caur kuru tiek piekļūts funkcijai. Alternatīvi, dati (lietotāja identifikators) tiek iegūti no konteksta.
Obligātie parametri:
Neobligātie parametri:
\begin{enumerate}
\item Konta datu lietotāja identifikators - pozitīvs skaitlis.
Noklusētā vērtība - no konteksta lietotāja (kas piekļūst funkciju) iegūtais identifikators.
\item Apskatāmo konta datu lietotāja identifikators - atbilst IIDP10. Noklusētā vērtība - no konteksta lietotāja (kas piekļūst funkciju) iegūtais identifikators.
\end{enumerate}
}
{
\begin{enumerate}
\item Sagatavo datubāzes pieprasījumu no lietotāju tabulas.
\item Iegūst lietotāja lomu sistēmā.
Ja lietotājs nav administrators, pieprasījumam pievieno nosacījumu, ka abonementa ierakstiem jābūt saistītiem ar lietotāju.
\item Ja apskatāmo datu kontu lietotāja identifikators nesakrīt ar lietotāja identifikatoru, tad parāda 1. paziņojumu.
\item Pieprasījumam pievieno atlasīšanu pēc lietotāja identifikatora.
\item Sagatavo pieprasīto lauku sarakstu.
Saraksta pamatā ir pilns vārds, segvārds, biogrāfijas informācija, konta izveidošanas laiks, attēls (datnes adrese).
Ja pieprasītajā lietotājs ir administrators, tad pie šī saraksta pievieno arī e-pasta adresi, e-pasta apstiprinājuma informāciju, konta stāvokli.
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu, attēla datnes adreses.
Ja pieprasījums neizdodas, parāda 2. paziņojumu.
Ja lietotājs netika atrasts, parāda 3. paziņojumu.
\item Ja attēls datnes adrese neeksistē, tad iegūst noklusētā attēla datnes adresi.
\item Sagatavo datubāzes pieprasījumu no lietotāju tabulas;
\item Iegūst lietotāja lomu sistēmā;
\begin{enumerate}
\item Ja lietotājs nav administrators, pieprasījumam pievieno nosacījumu, ka abonementa ierakstiem jābūt saistītiem ar lietotāju.
\end{enumerate}
\item Ja apskatāmo datu kontu lietotāja identifikators sakrīt ar lietotāja identifikatoru, tad parāda X paziņojumu. Beidz apstrādi;
\item Pieprasījumam pievieno atlasīšanu pēc lietotāja identifikatora;
\item Sagatavo pieprasīto lauku sarakstu. Saraksta pamatā ir pilns vārds, segvārds, biogrāfijas informācija, konta izveidošanas laiks, attēls (datnes adrese);
\begin{enumerate}
\item Ja pieprasītājs lietotājs ir administrators, tad pie šī saraksta pievieno arī e-pasta adresi, e-pasta apstiprinājuma informāciju, konta stāvokli.
\end{enumerate}
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu, attēla datnes adreses;
\begin{enumerate}
\item Ja pieprasījums neizdodas, parāda 2. paziņojumu. Beidz apstrādi.
\item Ja lietotājs netika atrasts, parāda 3. paziņojumu. Beidz apstrādi.
\end{enumerate}
\item Ja attēla datnes adrese neeksistē, tad iegūst noklusētā attēla datnes adresi.
\end{enumerate}
}
{
Izvades datu mērķis ir lietotāja konta datu izvadīšana.
To saturs ir atkarīgs no pieprasītāja lietotāja lomas sistēmā.
Izvades datu mērķis ir lietotāja konta datu parādīšana.
Ja pieprasītājs lietotājs nav administrators:
\begin{enumerate}
\item Vārdnīca - pilns vārds - simbolu virkne, segvārds - simbolu virkne, biogrāfijas informācija - simbolu virkne, konta izveidošanas laiks - datums simbolu virknes formātā, attēls - datnes adrese.
Ja pieprasītais lietotājs ir administrators, tad vārdnīca ir arī e-pasta adrese - simbolu virkne, e-pasta apstiprinājuma stāvoklis - simbolu virkne, konta stāvoklis - simbolu virkne.
\item Vārdnīca:
\begin{enumerate}
\item pilns vārds - simbolu virkne;
\item segvārds - simbolu virkne;
\item biogrāfijas informācija - simbolu virkne;
\item konta izveidošanas laiks - datums simbolu virknes formātā;
\item attēls - datnes adrese
\end{enumerate}
\item Papildus vārdnīcas dati, ja pieprasītājs lietotājs ir administrators:
\begin{enumerate}
\item e-pasta adrese - IIDP05;
\item e-pasta apstiprinājuma stāvoklis - skaitlisks kods (0 - neapstiprināts; 1- apstiprinājuma vēstule ir aizsūtīta; 1 - apstiprināts );
\item konta stāvoklis - IIDP10
\end{enumerate}
\end{enumerate}
}
{
\begin{enumerate}
\item Darbība nav autorizēta!
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
\item Sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
\item Tāds lietotājs nav atrasts! Mēģiniet vēlreiz!
\end{enumerate}
}