Ctrl K
Online
Centrum pomocy Veter
Instrukcje pracy z modułami Veter oraz informacje dla administratora o architekturze, instalacji i konfiguracji systemu.
Tematy pomocy
Wybierz temat, przeczytaj instrukcję lub przejdź do modułu.
Praca w Veter
Pierwsze kroki i pulpit
Nawigacja, szybkie akcje, statystyki dnia i wyszukiwanie globalne.
- 1Pulpit „Dzisiaj” pokazuje statystyki bieżącego dnia, poczekalnię oraz sprawy wymagające uwagi.
- 2Menu po lewej prowadzi do wszystkich modułów. Możesz je zwinąć przyciskiem w lewym górnym rogu.
- 3Szybkie akcje pozwalają rozpocząć typowe zadania bez szukania ich w menu.
- 4Wyszukiwarka na górze odnajduje klientów i pacjentów po nazwie, telefonie, e-mailu, numerze kartoteki lub chipie. Otworzysz ją skrótem Ctrl+K albo Cmd+K.
- 5Znak zapytania w górnym pasku otwiera pomoc dotyczącą bieżącego modułu.
Klienci i pacjenci
Kartoteka właściciela, historia pacjenta, zgody, ostrzeżenia i zdjęcia.
- 1Wyszukaj właściciela lub pacjenta, a przy zakładaniu kartoteki sprawdź propozycje duplikatów.
- 2Na karcie klienta uzupełnij kontakty, adresy, zgody, flagi obsługowe i historię komunikacji. Uprawniony użytkownik może również połączyć zduplikowane kartoteki.
- 3Na karcie pacjenta dostępne są: oś czasu, podsumowanie kliniczne, wyniki, profilaktyka, recepty, masa ciała, fotografie, właściciele oraz status kartoteki.
- 4Gatunek, klasyfikację, grupę, sekcję, rasę i odmianę wybieraj ze słownika; numery chipu i kartoteki muszą pozostać jednoznaczne.
- 5Przed zapisem upewnij się, że edytujesz właściwego pacjenta, właściciela i organizację.
Terminarz i poczekalnia
Wizyty pojedyncze i cykliczne, lista rezerwowa, rezerwacje online i kalendarze.
- 1Wybierz datę, lokalizację i zasób, a następnie wolny przedział. System sprawdza godziny pracy, nieobecności i kolizje.
- 2Dodaj pacjenta, typ i powód wizyty. Możesz tworzyć serie wizyt, potwierdzać je, przekładać lub anulować.
- 3Poczekalnia obsługuje zgłoszenie przybycia, wywołanie pacjenta i rozpoczęcie wizyty.
- 4Lista rezerwowa podpowiada pacjentów pasujących do zwolnionego terminu i zapisuje złożone oferty.
- 5W konfiguracji ustawisz typy wizyt, godziny pracy, nieobecności i prywatne tokeny kalendarza iCalendar. Osobny widok służy do akceptowania lub odrzucania próśb z rezerwacji online.
Wizyta i dokumentacja kliniczna
Badanie, rozpoznania, recepty, zlecenia, rozliczenie i historia zmian.
- 1Rozpocznij wizytę z terminarza albo z listy wizyt i zweryfikuj kontekst pacjenta oraz właściciela.
- 2Uzupełniaj wywiad, badanie, parametry życiowe, rozpoznania, problemy, procedury, leki i zalecenia. Szkic zapisuje się automatycznie i zachowuje rewizje.
- 3Możesz używać szablonów tekstu, kopiować dane z poprzedniej wizyty, dodawać pakiety oraz zlecać badania laboratoryjne.
- 4Kalkulator dawki wspiera obliczenia, ale nie zastępuje aktualnej ChPL ani decyzji lekarza. Receptę należy wystawić i wydać w kontrolowanym przepływie.
- 5Przed zamknięciem sprawdź dokumentację i pozycje rachunku. Zamknięcie rezerwuje lub rozchoduje właściwe partie zgodnie z FEFO; późniejsze uzupełnienia są zapisywane jako aneksy.
Laboratorium i urządzenia
Zlecenia, próbki, wyniki, importy, trendy oraz integracja aparatów.
- 1Utwórz zlecenie z wizyty albo bezpośrednio w laboratorium, wybierając panel lub pojedyncze wskaźniki, priorytet i sposób rozliczenia.
- 2Na zleceniu zarejestruj pobranie próbki, wprowadź wynik ręcznie albo użyj zdefiniowanego formularza.
- 3Skrzynka wyników zawiera wyniki wstępne, transmisje z aparatów i zadania wymagające ręcznego dopasowania. Zweryfikowany wynik można później skorygować z zachowaniem historii.
- 4Import przyjmuje pliki CSV, TXT i XML zgodne z aktywnym profilem. Wyniku nie wolno automatycznie przypisywać wyłącznie po podobieństwie nazwy pacjenta.
- 5Konfiguracja obejmuje wskaźniki, panele, normy referencyjne, profile importu, mapowania urządzeń, formularze oraz agentów. Centrum urządzeń pokazuje heartbeat, stan aparatów i incydenty.
Hospitalizacja
Oddziały, boksy, pobyty, zlecenia i wykonanie zaplanowanych podań.
- 1Zaplanuj pobyt dla pacjenta i opcjonalnie wskaż wolny boks.
- 2Przy przyjęciu potwierdź boks; tablica pokazuje aktywne zlecenia i podania przypadające w najbliższych godzinach.
- 3Do pobytu dodawaj zlecenia, planowane podania, obserwacje i dokumentację znieczulenia. Wykonanie podania wymaga osobnego potwierdzenia.
- 4Przy wypisie uzupełnij podsumowanie i upewnij się, że dokumentacja oraz rozliczenie są kompletne.
Magazyn i katalog
Towary, usługi, ceny, magazyny, partie, przesunięcia i rozchody.
- 1Katalog przechowuje usługi i produkty, grupy, stawki VAT, ceny, stany minimalne oraz historię zmian. Pozycje nieużywane można archiwizować.
- 2Cenniki i kreator zmian cen pozwalają najpierw zobaczyć podgląd, a dopiero potem zastosować zmianę zbiorczą.
- 3Widok stanów pokazuje ilości i partie według magazynu, w tym terminy ważności i alerty niskiego stanu.
- 4Przesunięcia przenoszą zapas pomiędzy magazynami, a rozchody wymagają przyczyny. Dostępne są również rejestry sprzedaży leków i produktów kontrolowanych.
- 5Integracja Mager synchronizuje mapowania, stany i operacje tylko po skonfigurowaniu przez administratora.
Baza produktów leczniczych
Centralny rejestr leków i dodawanie produktów do katalogu lecznicy.
- 1Wyszukaj produkt po nazwie handlowej, substancji czynnej, kodzie ATCvet albo identyfikatorze EMA UPD.
- 2Użyj filtrów gatunku i bezpieczeństwa, a następnie otwórz szczegóły produktu.
- 3Przed zastosowaniem zawsze sprawdź aktualną ChPL w oficjalnej bazie EMA UPD: gatunek, dawkowanie, przeciwwskazania oraz karencję.
- 4Dodając lek do katalogu lecznicy, ustaw lokalne opakowanie, jednostkę sprzedaży, cenę, VAT i stan minimalny. Dane rejestrowe pozostają oddzielone od danych handlowych kliniki.
Zakupy i inwentaryzacja
Dostawcy, propozycje, zamówienia, przyjęcia dostaw i spis z natury.
- 1Uzupełnij dostawców i sprawdź propozycje zamówień wynikające z niedoborów oraz stanów minimalnych.
- 2Utwórz zamówienie ręcznie lub z propozycji, zatwierdź je, wyeksportuj albo wyślij do dostawcy.
- 3Przyjęcie dostawy można wprowadzić ręcznie lub zaimportować według profilu. Nierozpoznane pozycje wymagają mapowania przed zaksięgowaniem.
- 4Inwentaryzacja prowadzi przez utworzenie arkusza, rozpoczęcie liczenia, zapis ilości i zatwierdzenie różnic; protokół pozostaje dostępny do pobrania.
- 5Osobny rejestr obejmuje obrót produktami kontrolowanymi.
Finanse, sprzedaż i kasa
Rachunki, dokumenty sprzedaży, płatności, fiskalizacja, KSeF i raport kasowy.
- 1Koszyk wizyty gromadzi usługi i produkty. Sprawdź ilości, ceny i rabaty przed przyjęciem płatności.
- 2Z rachunków można tworzyć dokumenty sprzedaży pojedynczo lub zbiorczo, wystawiać korekty, przyjmować i alokować płatności oraz anulować dokument zgodnie z jego stanem.
- 3Fiskalizacja i wysyłka do KSeF są dostępne po skonfigurowaniu właściwego dostawcy. Niejednoznaczne operacje wymagają uzgodnienia, a nie ślepego ponowienia.
- 4Kasa obsługuje stanowiska, zmiany kasowe, wpłaty i wypłaty oraz raport dobowy.
- 5Dodatkowe widoki obejmują eksport sprzedaży, reguły i raport prowizji oraz ustawienia numeracji i podatków.
Komunikacja z klientami
SMS, e-mail, listy i portal: wysyłka, odbiór, szablony i historia.
- 1Skrzynka pokazuje wiadomości wychodzące i przychodzące wraz ze statusem dostarczenia oraz powiązanym klientem.
- 2Nową wiadomość wyślij wybranym, aktywnym kanałem. Adres lub numer odbiorcy zawsze sprawdź przed wysłaniem.
- 3Szablony przechowują treści wielokrotnego użycia; administrator może również utworzyć zestaw domyślny.
- 4Wiadomości otrzymane poza systemem można zarejestrować ręcznie, aby zachować pełną historię kontaktu.
- 5Automatyczne przypomnienia o wizytach i profilaktyce wysyła worker tylko wtedy, gdy administrator jawnie je włączy.
Dokumenty i rejestry urzędowe
Szablony, pliki PDF, podpisy, wysyłka oraz wymagane rejestry.
- 1Wygeneruj dokument z opublikowanego szablonu i danych klienta, pacjenta albo wizyty. System zachowuje migawkę użytych danych i wersję szablonu.
- 2Dokument można otworzyć jako PDF, podpisać, wysłać, zduplikować, ponownie wyrenderować lub anulować — zależnie od statusu i uprawnień.
- 3Edytor szablonów wersjonuje treść; wersję roboczą należy opublikować przed użyciem w nowych dokumentach.
- 4Rejestry obejmują książkę leczenia zwierząt, rejestr szczepień przeciw wściekliźnie oraz obserwacje z badaniami i zaświadczeniami.
- 5Eksport CSV i wydruk wykonuj tylko w uzasadnionym zakresie i zgodnie z zasadami ochrony danych.
Raporty i własne zestawienia
Analizy sprzedaży, lekarzy, magazynu, kliniki, klientów i terminarza.
- 1Wybierz raport wbudowany i zakres dat. Dostępne są raporty sprzedaży, rozliczenia lekarzy, magazynu, danych klinicznych, klientów oraz terminarza.
- 2Parametry raportu pozwalają zmienić grupowanie, horyzont ważności lub liczbę pozycji w rankingach.
- 3Własne zestawienie buduje się ze wskazanego zbioru danych, kolumn, filtrów, grupowania i sortowania. Przed zapisem użyj podglądu.
- 4Wyniki można eksportować do CSV lub XLSX, jeśli rola ma uprawnienie do eksportu.
Profil użytkownika
Dane zawodowe, role, sesje, hasło, powiadomienia i preferencje.
- 1Uzupełnij dane zawodowe używane na dokumentach, w tym tytuł i numer prawa wykonywania zawodu.
- 2W sekcji „Role i dostęp” sprawdzisz przypisane role i efektywne uprawnienia; zmienia je administrator.
- 3W sekcji bezpieczeństwa zmienisz hasło, przejrzysz aktywne sesje i wylogujesz pozostałe urządzenia.
- 4Preferencje określają powiadomienia oraz domyślne ustawienia pracy użytkownika.
Administracja organizacją
Użytkownicy, role, placówki, RODO, audyt, eksport i kolejka zadań.
- 1Administrator tworzy i blokuje konta, resetuje hasła, odbiera sesje oraz przypisuje role oparte na szczegółowych uprawnieniach.
- 2Dane organizacji, ustawienia systemowe, lokalizacje i zasoby są wspólne dla danego mandanta.
- 3Sekcja RODO obsługuje wnioski, eksport danych klienta, retencję i kontrolowaną anonimizację.
- 4Pełny eksport organizacji jest zadaniem asynchronicznym. Dziennik zdarzeń pokazuje działania użytkowników i obiekty, których dotyczyły.
- 5Widok kolejki pozwala rozpoznać błędy outboxa i ręcznie ponowić wybrane zdarzenie po usunięciu przyczyny.
Bezpieczeństwo konta i danych
Logowanie, izolacja organizacji, sesje i bezpieczna praca z danymi.
- 1Podczas logowania podaj identyfikator swojej organizacji i własne dane dostępowe. Nie używaj wspólnych kont.
- 2Sesja znajduje się w ciasteczku HttpOnly, wygasa po bezczynności i może zostać unieważniona z profilu lub przez administratora.
- 3Uprawnienia sprawdza API, a PostgreSQL dodatkowo izoluje dane organizacji politykami RLS. Zmiana widoczności przycisku nie nadaje dostępu.
- 4Blokuj komputer po odejściu od stanowiska. Nie kopiuj danych ani eksportów poza system bez podstawy i odpowiednich uprawnień.
- 5Zgłaszając błąd, podaj czas i wykonywaną czynność, ale nie przesyłaj haseł, tokenów ani pełnych danych medycznych w niezabezpieczonym kanale.
Administracja techniczna
Architektura systemu
Komponenty Veter, przepływ danych, wielomandantowość i integracje lokalne.
- 1Veter jest modularnym monolitem. Interfejs to Next.js 16 i React 19, a centralne API to NestJS 11 uruchamiany na Fastify pod prefiksem /api.
- 2PostgreSQL 17 jest źródłem prawdy. Dane organizacji są izolowane przez kontekst mandanta i polityki Row Level Security; audyt rejestruje operacje biznesowe.
- 3Redis i BullMQ przenoszą zadania asynchroniczne. API zapisuje zdarzenia do transakcyjnego outboxa w PostgreSQL, relay przekazuje je do kolejki, a osobny worker je wykonuje.
- 4API domyślnie zapisuje zdjęcia, dokumenty i eksporty w lokalnym systemie plików. Produkcyjny Compose jawnie używa zgodnego z S3 MinIO jako wspólnego magazynu API i workera. Caddy kończy TLS i kieruje ruch do aplikacji webowej oraz API.
- 5Veter Device Agent działa w sieci lecznicy przy aparatach laboratoryjnych i fiskalnych. Używa szyfrowanego spool SQLite, pracy offline, heartbeatów i mTLS do komunikacji z osobnym device gatewayem.
- 6Przeglądarka nie łączy się bezpośrednio z bazą, Redis ani MinIO i nie otrzymuje sekretów usługowych.
Instalacja deweloperska
Lokalne uruchomienie infrastruktury, migracji, API i interfejsu.
- 1Wymagane są Node.js 22.13 lub nowszy, npm oraz Docker z obsługą Compose. Dla Device Agenta obowiązuje Node.js 22.13–22.x.
- 2Skopiuj główny .env.example do .env oraz apps/api/.env, po czym zastąp przykładowe hasła losowymi wartościami URL-safe.
- 3Uruchom PostgreSQL, Redis i Mailpit z lokalnego pliku Compose, zainstaluj zależności API i zastosuj wszystkie migracje. MinIO jest potrzebne tylko po jawnym wybraniu STORAGE_DRIVER=s3.
- 4Uruchom API na porcie 3100 i aplikację webową na porcie 3001. Web musi wskazywać API przez NEXT_PUBLIC_API_URL.
- 5Utwórz pierwszą organizację i administratora poleceniem tenant:create, przekazując administracyjny URL bazy i hasło nowego konta poza historią powłoki.
Copy-Item .env.example .env
Copy-Item .env.example apps/api/.env
docker compose --env-file .env -f infrastructure/compose/docker-compose.yml up -dcd apps/api
npm ci
npm run db:migrate
npm run devcd apps/web
Copy-Item .env.example .env.local
npm ci
npm run devWdrożenie produkcyjne
Jednohostowy stos Compose z migracjami, healthcheckami, TLS i wolumenami.
- 1Kanoniczne wdrożenie znajduje się w katalogu deploy i uruchamia PostgreSQL, Redis, MinIO, migracje, API, worker, Next.js oraz Caddy.
- 2Skopiuj deploy/.env.example do deploy/.env. Ustaw unikalne sekrety, publiczny adres HTTPS, WEB_ORIGIN i COOKIE_SECURE=true.
- 3Najpierw zweryfikuj rozwiniętą konfigurację Compose, następnie zbuduj i uruchom usługi. Start API czeka na migracje i inicjalizację bucketu.
- 4Po wdrożeniu sprawdź status wszystkich kontenerów, endpoint /api/health oraz podstawowe przepływy logowania, kartoteki i zapisu.
- 5Przed aktualizacją wykonaj spójny, zaszyfrowany backup PostgreSQL i MinIO. Używaj niezmiennych tagów lub digestów obrazów i zachowaj dane potrzebne do rollbacku.
cd deploy
Copy-Item .env.example .env
docker compose --env-file .env config
docker compose --env-file .env up -d --build
docker compose --env-file .env psKonfiguracja środowiska
Najważniejsze grupy zmiennych, sekrety, sesje, integracje i harmonogramy.
- 1Adresy: VETER_SITE_ADDRESS określa publiczny adres Caddy, WEB_ORIGIN dozwolone źródło przeglądarki, a NEXT_PUBLIC_API_URL adres API w buildzie interfejsu.
- 2Dane: POSTGRES_PASSWORD jest sekretem operatora, VETER_API_DB_PASSWORD osobnym ograniczonym kontem aplikacji, a REDIS_PASSWORD chroni kolejkę. Domyślny STORAGE_DRIVER=local zapisuje pliki w LOCAL_STORAGE_PATH; klucze S3 są wymagane dopiero po jawnym wybraniu STORAGE_DRIVER=s3.
- 3Sesje i sieć: w produkcji ustaw COOKIE_SECURE=true i precyzyjne TRUST_PROXY. SESSION_TTL_HOURS, SESSION_IDLE_MINUTES oraz SESSION_TOUCH_INTERVAL_SECONDS sterują czasem życia sesji.
- 4Integracje: osobne klucze szyfrują konfigurację Mager i tokeny KSeF; listę hostów Mager ogranicza MAGER_ALLOWED_HOSTS. SMTP i bramka SMS wymagają rzeczywistych dostawców w produkcji.
- 5Automatyzacja: przypomnienia działają wyłącznie w workerze po REMINDERS_ENABLED=true. Interwały i wyprzedzenia ustawiaj dopiero po skonfigurowaniu kanałów wysyłki.
- 6Diagnostyka: ENABLE_API_DOCS udostępnia /api/docs tylko po jawnym włączeniu. VETER_VERSION ustala wersję widoczną w stopce.
- 7Nie zapisuj plików .env, tokenów, kluczy prywatnych ani kopii bazy w Git. Po zmianie sekretu wykonaj kontrolowaną rotację i test dostępu.
Veter Device Agent
Bezpieczne połączenie centralnego Veter z urządzeniami w sieci placówki.
- 1Agent instaluj wyłącznie na kontrolowanym hoście w sieci urządzeń. Jego API powinno używać HTTPS i certyfikatu klienta mTLS; tryb bez mTLS jest ograniczonym wyjątkiem pilotażowym.
- 2Sekrety są przekazywane jako pliki. Klucz spool ma dokładnie 32 bajty, a katalog lokalnego rejestru SQLite musi być chroniony przed innymi użytkownikami.
- 3Agent buforuje transmisje przy utracie łączności, cyklicznie wysyła heartbeat i pobiera komendy z centralnego gatewaya.
- 4Import plików wymaga jawnego katalogu, kodu urządzenia, formatu oraz — dla CSV, TXT i XML — profilu parsera. Limity liczby i rozmiaru plików chronią hosta przed zapełnieniem.
- 5Stan ambiguous, kwarantannę, trwały fence adaptera lub niejednoznaczny wydruk rozstrzyga operator po sprawdzeniu stanu urządzenia i systemu. Nie należy ich ponawiać automatycznie.
Dobre praktyki
Przed zapisem zawsze sprawdź pacjenta, właściciela i organizację.
Nie używaj wspólnych kont — działania powinny mieć autora.
Nie ponawiaj automatycznie niejednoznacznych operacji urządzeń.
Przed aktualizacją sprawdź backup, migracje, healthchecki i plan rollbacku.