Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
6b6789a
docs(zapytanie): spec wachlarza wyjść dla wyszukiwania zapytaniem
mpasternak Jul 26, 2026
88f13e1
docs(zapytanie): self-review speca — 3 poprawki
mpasternak Jul 26, 2026
019a460
docs(zapytanie): plan wdrożenia w 12 zadaniach
mpasternak Jul 26, 2026
230df96
docs(plan): konwencje testowe repo + mocniejsze asercje
mpasternak Jul 26, 2026
0076d69
refactor(zapytanie): wykonaj_zapytanie() jako jedno źródło prawdy
mpasternak Jul 26, 2026
65945cd
test(zapytanie): test dedupu faktycznie produkuje duplikat wierszy
mpasternak Jul 26, 2026
8c0ed28
refactor(multiseek): document_export_response() jako funkcja
mpasternak Jul 26, 2026
bd30670
docs: postac to identyfikatory ReportType, nie polskie etykiety
mpasternak Jul 26, 2026
ca2d9de
feat(zapytanie): postać wyniku (lista/tabela/punktacja) z partiali mu…
mpasternak Jul 26, 2026
6927c62
docs(plan): pivot wchodzi do <select> dopiero gdy działa
mpasternak Jul 26, 2026
c4b7f71
feat(zapytanie): eksport CSV/XLSX/HTML/DOCX/BibTeX z zapytania DjangoQL
mpasternak Jul 26, 2026
e04a4e5
fix(zapytanie): review fixes — usun niedzialajacy pivot, uzyj partial…
mpasternak Jul 26, 2026
68300a5
fix(zapytanie): chowaj martwy przycisk kopiowania BibTeX poza multise…
mpasternak Jul 26, 2026
1f840eb
fix(zapytanie): eksport — 400 jako text/plain + escape() błędu Django…
mpasternak Jul 26, 2026
5e40e87
feat(zapytanie): pasek eksportu w UI + newsfragment
mpasternak Jul 26, 2026
f60911e
docs(plan): zadanie 11 przywraca pasek eksportu dla autorów
mpasternak Jul 26, 2026
ed411c4
fix(zapytanie): poprawki z końcowego review — asercja 403, martwe re-…
mpasternak Jul 26, 2026
eaca661
feat(zapytanie): tabela krzyżowa rekordów na stronie zapytania
mpasternak Jul 26, 2026
b6b7cbc
refactor(pivot): silnik do bpp/pivot/, multiseek_registry re-eksportuje
mpasternak Jul 26, 2026
1d3a24b
feat(pivot): rejestr autorski, baza kadrowa (liczba autorów)
mpasternak Jul 26, 2026
504d345
feat(zapytanie): tabela krzyżowa autorów w UI + presety
mpasternak Jul 26, 2026
179fe48
feat(pivot): metryki bibliometryczne autorów (liczba prac, Σ slotów, …
mpasternak Jul 26, 2026
124d317
feat(zapytanie): eksport autorów CSV/XLSX z metrykami dorobku
mpasternak Jul 26, 2026
34135b2
test(zapytanie): test Playwright postaci wyniku + dokumentacja
mpasternak Jul 26, 2026
2a59fea
fix(zapytanie): poprawki z końcowego review faz 2-4
mpasternak Jul 27, 2026
b92d945
Merge remote-tracking branch 'origin/dev' into feat/zapytanie-tabela-…
mpasternak Jul 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions docs/redaktor/wyszukiwanie-redagowanie.md
Original file line number Diff line number Diff line change
Expand Up @@ -238,3 +238,77 @@ Analogicznie w przykładzie matematycznym:
``` python
(10 + 20) * 30 * 40 # wynik to 36000
```

## Samodzielna strona "Wyszukiwanie zapytaniem" (`/zapytanie/`)

Oprócz filtru DjangoQL wbudowanego w listy modułu Redagowanie, dla
zalogowanych redaktorów dostępna jest osobna strona pod adresem
`/zapytanie/` (w menu **szukaj → zapytaniem**). Różni się od filtru
listy tym, że:

- zapytanie wpisuje się raz, niezależnie od konkretnej tabeli — wybiera
się tylko model (**rekord** albo **autor**), a samo zapytanie DjangoQL
działa tak samo jak opisano wyżej,
- wynik można pokazać w kilku **postaciach**, wyeksportować w kilku
formatach oraz zestawić jako **tabelę krzyżową** — czego filtr listy
w Redagowaniu nie oferuje.

### Postać wyniku

Nad wynikami znajduje się rozwijana lista **Postać wyniku**. Wybór jedzie
razem z zapytaniem — po kliknięciu "Szukaj" URL zawiera parametr
`postac`, więc wynik da się też przesłać jako link czy zapisać w
zakładkach.

Dla modelu **rekord** dostępne są:

- **rekordy (ID + akcje)** — domyślna, dzisiejsza tabela z ID rekordu
i linkami "Zobacz" / "Edytuj",
- **lista** — numerowana lista opisów bibliograficznych,
- **tabela** — tabela z sumami (impact factor, liczba cytowań, punkty
KBN, punktacja wewnętrzna),
- **punktacja z wewnętrzną** / **punktacja sumaryczna** — warianty
tabeli z innym zestawem kolumn punktowych,
- **BibTeX** — lista opisów jako brama do eksportu pliku `.bib`,
- **tabela krzyżowa** — patrz niżej.

Dla modelu **autor** dostępne są tylko **autorzy (ID + akcje)**
(domyślna) i **tabela krzyżowa**.

### Eksport wyników

Pod nagłówkiem wyników pojawia się pasek **Eksport** z linkami do
formatów sensownych dla wybranej postaci i modelu:

- **rekord**: CSV i XLSX zawsze; HTML i DOCX dla postaci innych niż
tabela krzyżowa; BibTeX (`.bib`) tylko przy postaci **BibTeX**,
- **autor**: CSV i XLSX — kartoteka kadrowa (jednostka, tytuł, stopień,
ORCID, PBN UID i inne) wraz z metrykami dorobku (liczba prac, Σ
slotów, Σ pkdaut).

Eksport zawsze obejmuje **cały** wynik zapytania, nie tylko widoczną
stronę wyników. Ze względu na to jest ograniczony limitami: eksport
danych (CSV/XLSX) — maksymalnie 25 000 rekordów, eksport dokumentu
(HTML/DOCX) — maksymalnie 5 000 rekordów. Po przekroczeniu limitu
strona pokazuje komunikat z liczbą trafień i prośbą o zawężenie
zapytania.

### Tabela krzyżowa

Wybranie postaci **tabela krzyżowa** odsłania dodatkowe pola wyboru
wiersza, kolumny i miary macierzy — działa to tak samo, jak tabela
krzyżowa znana z wyszukiwania precyzyjnego (formularzowego), ale liczy
się na wyniku zapytania DjangoQL. Dostępna jest zarówno dla rekordów
(np. rok × charakter formalny, liczba prac albo suma punktów), jak i
dla autorów — w dwóch rodzinach wymiarów:

- **kadrowej** — jednostka, tytuł, stopień, funkcja, płeć, kompletność
ORCID/PBN/e-mail,
- **bibliometrycznej** — liczba prac, Σ slotów, Σ pkdaut wg roku
publikacji, dyscypliny, jednostki przy pracy, typu odpowiedzialności
i charakteru formalnego.

W sekcji pomocy nad formularzem znajdują się gotowe **presety** —
linki, które od razu dokładają wiersz/kolumnę/miarę do bieżącego
zapytania i przełączają postać wyniku na tabelę krzyżową. Samą macierz
(bez surowych wyników) można wyeksportować do CSV i XLSX.
Loading