@extends('layouts.site') @section('title','Baza Wiedzy - Panel Administratora') @section('content')

Dokumentacja panelu administratora

Zakładka obejmuje obsługę slownikow, kont użytkowników, struktury organizacyjnej, komponentów tabeli i modalnych formularzy oraz standardy eksportu.

1. Zakres i role

  • Panel administratora jest przeznaczony dla osób z rolami administracyjnymi.
  • Dostęp do funkcji jest kontrolowany uprawnieniami i zakresem odpowiedzialnosci.
  • Brak uprawnień oznacza ukrycie opcji menu i brak dostępu do danych.

2. Nawigacja i layout

  • Menu po lewej stronie grupuje widoki administratora i slowniki aplikacji.
  • W naglowku widoku widoczne są akcje eksportu, filtracji i zamknięcia strony.
  • Tabele i modale dzialaja wedlug wspolnego standardu komponentów globalnych.

Miejsce na zrzut: menu panelu administratora

Sugerowany plik: admin-01-menu.png

3. Slowniki i tabele AJAX

  • Widoki slownikowe dzialaja na komponencie tabeli globalnej (DataGrid).
  • Dostępne są: filtrowanie, wyszukiwanie, paginacja, wybor kolumn i eksport.
  • Ustawienia tabeli moga być zapamietywane per użytkownik i per tabela.

4. Operacje CRUD i modale

  • Dodawanie, edycja i usuwanie realizowane są przez globalne komponenty modalne.
  • Walidacja i komunikaty są ujednolicone we wszystkich formularzach.
  • Po zapisie rekord może zostać podswietlony jako ostatnio edytowany.

5. Użytkownicy, role i uprawnienia

  • Lista użytkowników umożliwia przypisywanie rol i zarzadzanie statusem kont.
  • Role aplikacyjne definiuja zakres dostępu do funkcji i modułów.
  • Zmiany uprawnień powinny być wykonywane ostrożnie i testowane po zapisie.

6. Struktura organizacyjna

  • Widok drzewa prezentuje zaleznosci między komorkami organizacyjnymi.
  • Dostępne są formularze add/edit/delete oraz powiązania z pracownikami.
  • Usuwanie jest blokowane przy aktywnych powiazaniach i zwraca komunikat.

7. Eksporty i raporty

  • Wspierane formaty: DOC, PDF, PNG, HTML oraz wydruk.
  • Eksport odzwierciedla ustawienia widoku (filtry, kolumny, sortowanie).
  • Dla tabel szerokich stosowany jest uklad poziomy (landscape).

8. Dobre praktyki i bezpieczenstwo

  • Przed usunięciem rekordu sprawdzaj powiązania z innymi tabelami.
  • Przetestuj zmiany uprawnień na koncie testowym.
  • Po duzych zmianach wykonuj eksport kontrolny i weryfikacje danych.
Zakładka Panel Administratora jest widoczna tylko dla użytkowników z uprawnieniami administracyjnymi.

9. Mapa widoków administratora

Widok / trasa Zakres Najwazniejsze funkcje
m_admin_tree_struktura_graph Graficzne drzewo struktury organizacyjnej. Rozwijanie/zwijanie galezi, szybka edycja, eksport i wydruk grafu.
m_admin_struktura_index_component Lista komorek organizacyjnych. Tabela AJAX, CRUD modalny, filtrowanie, eksport i podgląd szczegółów.
m_admin_osoby_list_component Lista osób i powiązań. Zarzadzanie rekordami osób, przypisania działów i kont APP.
m_admin_users_list Konta aplikacyjne. CRUD kont, role, statusy i relacje z osobami.
admin/app-settings Ustawienia aplikacji (panel administratora). Zarzadzanie globalna polityka 2FA: disabled / optional / required.
2fa* Konfiguracja i challenge 2FA użytkownika. Włączenie TOTP, potwierdzenie kodu, challenge logowania i kody awaryjne.
m_admin_role_app_list Role aplikacyjne. Dodawanie/usuwanie rol i kontrola powiązań z funkcjami.
m_slownik_ajax_* Slowniki aplikacji (globalny DataGrid). Filtry, kolumny, wyszukiwanie, paginacja, eksport i zapamietywanie ustawien.
m_slownik_ajax_index_component/{tabela} Widok generyczny slownika. Konfiguracja etykiet, filtrów i mapowania wartości (np. TAK/NIE, nazwy zamiast ID).

Miejsce na zrzut: menu panelu admin i aktywny widok

Sugerowany plik: admin-02-mapa-widoków.png

10. Komponenty i konfiguracja

Panel administratora korzysta z tych samych komponentów globalnych co ODO, rozszerzonych o konfiguracje tabel slownikowych.

Komponent Co konfiguruje Uwagi wdrozeniowe
ajax-crud-table Kolumny, akcje, endpoint listy i CRUD. Domyslnie sortowanie: ID ASC, domyslna liczba rekordów na strone zgodna z konfiguracja globalna.
ajax-filters Filtry slownikowe (wiele na jednym widoku). Tryb auto-bind i stan filtrów: aktywne/nieaktywne.
column-visibility-selector Widoczność i kolejnosc kolumn. Kolumna Lp zawsze pierwsza, Akcje zawsze ostatnia.
search-columns-selector Wybor kolumn do wyszukiwania. Nie przeszukuje kolumn ukrytych.
ajax-table-export-buttons Eksport tabeli zgodnie z aktualnym filtrem i kolumnami. Eksportuje tylko aktualnie odfiltrowane dane i kolumny widoczne na widoku.
global-form-modal Standard modal add/edit/delete/status/info. Oddzielenie wygladu od logiki - zmiana stylu nie narusza logiki zapisu.

11. Scenariusze operacyjne

Scenariusz 1 - Dodanie rekordu slownika: wejdz na wybrany widok slownika AJAX, kliknij add, uzupełnij dane, zapisz i sprawdź podswietlenie nowego rekordu.
Scenariusz 2 - Zmiana widoku tabeli: ukryj część kolumn, zmien kolejnosc drag&drop i przeladuj widok - ustawienia powinny być zachowane.
Scenariusz 3 - Praca na filtrach: ustaw filtry i wyszukiwanie, sprawdź licznik rekordów oraz eksport aktualnego wyniku.
Scenariusz 4 - Operacje na strukturze: sproboj usunąć rekord powiązany - system powinien pokazac komunikat i zamknac modal.
Scenariusz 5 - Włączenie i weryfikacja 2FA: ustaw politykę optional/required w admin/app-settings, włącz TOTP na koncie testowym, wyloguj się i sprawdź challenge kodem TOTP oraz recovery code.

Miejsce na zrzut: scenariusz 1

Sugerowany plik: admin-03-dodanie-slownika.png

Miejsce na zrzut: scenariusz 2

Sugerowany plik: admin-04-kolumny-tabeli.png

Miejsce na zrzut: scenariusz 3

Sugerowany plik: admin-05-filtry-i-eksport.png

Miejsce na zrzut: scenariusz 4

Sugerowany plik: admin-06-walidacja-usuwania.png

12. Uwierzytelnianie 2FA

System obsluguje 2FA z metoda TOTP i kodami awaryjnymi oraz jest przygotowany do przyszlej metody SMS.

  • Globalna polityka 2FA jest konfigurowana w widoku admin/app-settings.
  • Tryby polityki: disabled, optional, required.
  • W trybie required użytkownik bez skonfigurowanego 2FA po loginie haslem jest kierowany do wymuszonej konfiguracji.
  • W trybie optional challenge wystepuje tylko dla kont z aktywnym 2FA.
  • Kody awaryjne są jednorazowe i po uzyciu są usuwane z puli.
  • Sekret TOTP i kody awaryjne są przechowywane w formie szyfrowanej.
Na obecnym etapie integracja SMSAPI nie jest aktywna. Architektura zawiera placeholder pod metode SMS 2FA.
Obszar Trasa / widok Opis
Ustawienia globalne admin/app-settings Zarzadzanie polityka 2FA dla całej aplikacji.
Ustawienia użytkownika 2fa Włączenie, potwierdzenie, wylaczenie 2FA i regeneracja kodow awaryjnych.
Challenge logowania 2fa/challenge, 2fa/verify Drugi etap logowania: kod TOTP albo recovery code.
Wymuszona konfiguracja 2fa/required-setup Flow aktywowany przy polityce required, gdy konto nie ma 2FA.

13. Lista screenshotow panelu admin

  • Menu admin i grupy modułów.
  • Widok DataGrid z aktywnymi filtrami.
  • Komponent wyboru kolumn i wyboru kolumn do wyszukiwania.
  • Modal add / edit / delete / status / info.
  • Widok struktury organizacyjnej (lista + graf).
  • Widok kont APP i zarzadzanie rolami.
  • Komunikaty walidacji i komunikaty błędów operacji.
  • Eksport tabeli i raportu grafu.
  • Widok Ustawienia aplikacji z polityka 2FA.
  • Widok challenge 2FA i wymuszonej konfiguracji 2FA.
Kazdy screenshot dodawaj z podpisem: "co widzimy", "jakie działanie wykonano", "jaki efekt uzyskano".
@endsection @section('menu') @include('sites.admin.menu_admin') @endsection @section('navbar') @include('sites.admin._navbar_m_admin_site') Baza Wiedzy @endsection @push('scripts') @endpush