Ctrl K
Baza wiedzy

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.

21 tematów

Praca w Veter

Pierwsze kroki i pulpit
Nawigacja, szybkie akcje, statystyki dnia i wyszukiwanie globalne.
  1. 1Pulpit „Dzisiaj” pokazuje statystyki bieżącego dnia, poczekalnię oraz sprawy wymagające uwagi.
  2. 2Menu po lewej prowadzi do wszystkich modułów. Możesz je zwinąć przyciskiem w lewym górnym rogu.
  3. 3Szybkie akcje pozwalają rozpocząć typowe zadania bez szukania ich w menu.
  4. 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.
  5. 5Znak zapytania w górnym pasku otwiera pomoc dotyczącą bieżącego modułu.
Przejdź do modułu →
Klienci i pacjenci
Kartoteka właściciela, historia pacjenta, zgody, ostrzeżenia i zdjęcia.
  1. 1Wyszukaj właściciela lub pacjenta, a przy zakładaniu kartoteki sprawdź propozycje duplikatów.
  2. 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.
  3. 3Na karcie pacjenta dostępne są: oś czasu, podsumowanie kliniczne, wyniki, profilaktyka, recepty, masa ciała, fotografie, właściciele oraz status kartoteki.
  4. 4Gatunek, klasyfikację, grupę, sekcję, rasę i odmianę wybieraj ze słownika; numery chipu i kartoteki muszą pozostać jednoznaczne.
  5. 5Przed zapisem upewnij się, że edytujesz właściwego pacjenta, właściciela i organizację.
Przejdź do modułu →
Terminarz i poczekalnia
Wizyty pojedyncze i cykliczne, lista rezerwowa, rezerwacje online i kalendarze.
  1. 1Wybierz datę, lokalizację i zasób, a następnie wolny przedział. System sprawdza godziny pracy, nieobecności i kolizje.
  2. 2Dodaj pacjenta, typ i powód wizyty. Możesz tworzyć serie wizyt, potwierdzać je, przekładać lub anulować.
  3. 3Poczekalnia obsługuje zgłoszenie przybycia, wywołanie pacjenta i rozpoczęcie wizyty.
  4. 4Lista rezerwowa podpowiada pacjentów pasujących do zwolnionego terminu i zapisuje złożone oferty.
  5. 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.
Przejdź do modułu →
Wizyta i dokumentacja kliniczna
Badanie, rozpoznania, recepty, zlecenia, rozliczenie i historia zmian.
  1. 1Rozpocznij wizytę z terminarza albo z listy wizyt i zweryfikuj kontekst pacjenta oraz właściciela.
  2. 2Uzupełniaj wywiad, badanie, parametry życiowe, rozpoznania, problemy, procedury, leki i zalecenia. Szkic zapisuje się automatycznie i zachowuje rewizje.
  3. 3Możesz używać szablonów tekstu, kopiować dane z poprzedniej wizyty, dodawać pakiety oraz zlecać badania laboratoryjne.
  4. 4Kalkulator dawki wspiera obliczenia, ale nie zastępuje aktualnej ChPL ani decyzji lekarza. Receptę należy wystawić i wydać w kontrolowanym przepływie.
  5. 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.
Przejdź do modułu →
Laboratorium i urządzenia
Zlecenia, próbki, wyniki, importy, trendy oraz integracja aparatów.
  1. 1Utwórz zlecenie z wizyty albo bezpośrednio w laboratorium, wybierając panel lub pojedyncze wskaźniki, priorytet i sposób rozliczenia.
  2. 2Na zleceniu zarejestruj pobranie próbki, wprowadź wynik ręcznie albo użyj zdefiniowanego formularza.
  3. 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.
  4. 4Import przyjmuje pliki CSV, TXT i XML zgodne z aktywnym profilem. Wyniku nie wolno automatycznie przypisywać wyłącznie po podobieństwie nazwy pacjenta.
  5. 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.
Przejdź do modułu →
Hospitalizacja
Oddziały, boksy, pobyty, zlecenia i wykonanie zaplanowanych podań.
  1. 1Zaplanuj pobyt dla pacjenta i opcjonalnie wskaż wolny boks.
  2. 2Przy przyjęciu potwierdź boks; tablica pokazuje aktywne zlecenia i podania przypadające w najbliższych godzinach.
  3. 3Do pobytu dodawaj zlecenia, planowane podania, obserwacje i dokumentację znieczulenia. Wykonanie podania wymaga osobnego potwierdzenia.
  4. 4Przy wypisie uzupełnij podsumowanie i upewnij się, że dokumentacja oraz rozliczenie są kompletne.
Przejdź do modułu →
Magazyn i katalog
Towary, usługi, ceny, magazyny, partie, przesunięcia i rozchody.
  1. 1Katalog przechowuje usługi i produkty, grupy, stawki VAT, ceny, stany minimalne oraz historię zmian. Pozycje nieużywane można archiwizować.
  2. 2Cenniki i kreator zmian cen pozwalają najpierw zobaczyć podgląd, a dopiero potem zastosować zmianę zbiorczą.
  3. 3Widok stanów pokazuje ilości i partie według magazynu, w tym terminy ważności i alerty niskiego stanu.
  4. 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.
  5. 5Integracja Mager synchronizuje mapowania, stany i operacje tylko po skonfigurowaniu przez administratora.
Przejdź do modułu →
Baza produktów leczniczych
Centralny rejestr leków i dodawanie produktów do katalogu lecznicy.
  1. 1Wyszukaj produkt po nazwie handlowej, substancji czynnej, kodzie ATCvet albo identyfikatorze EMA UPD.
  2. 2Użyj filtrów gatunku i bezpieczeństwa, a następnie otwórz szczegóły produktu.
  3. 3Przed zastosowaniem zawsze sprawdź aktualną ChPL w oficjalnej bazie EMA UPD: gatunek, dawkowanie, przeciwwskazania oraz karencję.
  4. 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.
Przejdź do modułu →
Zakupy i inwentaryzacja
Dostawcy, propozycje, zamówienia, przyjęcia dostaw i spis z natury.
  1. 1Uzupełnij dostawców i sprawdź propozycje zamówień wynikające z niedoborów oraz stanów minimalnych.
  2. 2Utwórz zamówienie ręcznie lub z propozycji, zatwierdź je, wyeksportuj albo wyślij do dostawcy.
  3. 3Przyjęcie dostawy można wprowadzić ręcznie lub zaimportować według profilu. Nierozpoznane pozycje wymagają mapowania przed zaksięgowaniem.
  4. 4Inwentaryzacja prowadzi przez utworzenie arkusza, rozpoczęcie liczenia, zapis ilości i zatwierdzenie różnic; protokół pozostaje dostępny do pobrania.
  5. 5Osobny rejestr obejmuje obrót produktami kontrolowanymi.
Przejdź do modułu →
Finanse, sprzedaż i kasa
Rachunki, dokumenty sprzedaży, płatności, fiskalizacja, KSeF i raport kasowy.
  1. 1Koszyk wizyty gromadzi usługi i produkty. Sprawdź ilości, ceny i rabaty przed przyjęciem płatności.
  2. 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.
  3. 3Fiskalizacja i wysyłka do KSeF są dostępne po skonfigurowaniu właściwego dostawcy. Niejednoznaczne operacje wymagają uzgodnienia, a nie ślepego ponowienia.
  4. 4Kasa obsługuje stanowiska, zmiany kasowe, wpłaty i wypłaty oraz raport dobowy.
  5. 5Dodatkowe widoki obejmują eksport sprzedaży, reguły i raport prowizji oraz ustawienia numeracji i podatków.
Przejdź do modułu →
Komunikacja z klientami
SMS, e-mail, listy i portal: wysyłka, odbiór, szablony i historia.
  1. 1Skrzynka pokazuje wiadomości wychodzące i przychodzące wraz ze statusem dostarczenia oraz powiązanym klientem.
  2. 2Nową wiadomość wyślij wybranym, aktywnym kanałem. Adres lub numer odbiorcy zawsze sprawdź przed wysłaniem.
  3. 3Szablony przechowują treści wielokrotnego użycia; administrator może również utworzyć zestaw domyślny.
  4. 4Wiadomości otrzymane poza systemem można zarejestrować ręcznie, aby zachować pełną historię kontaktu.
  5. 5Automatyczne przypomnienia o wizytach i profilaktyce wysyła worker tylko wtedy, gdy administrator jawnie je włączy.
Przejdź do modułu →
Dokumenty i rejestry urzędowe
Szablony, pliki PDF, podpisy, wysyłka oraz wymagane rejestry.
  1. 1Wygeneruj dokument z opublikowanego szablonu i danych klienta, pacjenta albo wizyty. System zachowuje migawkę użytych danych i wersję szablonu.
  2. 2Dokument można otworzyć jako PDF, podpisać, wysłać, zduplikować, ponownie wyrenderować lub anulować — zależnie od statusu i uprawnień.
  3. 3Edytor szablonów wersjonuje treść; wersję roboczą należy opublikować przed użyciem w nowych dokumentach.
  4. 4Rejestry obejmują książkę leczenia zwierząt, rejestr szczepień przeciw wściekliźnie oraz obserwacje z badaniami i zaświadczeniami.
  5. 5Eksport CSV i wydruk wykonuj tylko w uzasadnionym zakresie i zgodnie z zasadami ochrony danych.
Przejdź do modułu →
Raporty i własne zestawienia
Analizy sprzedaży, lekarzy, magazynu, kliniki, klientów i terminarza.
  1. 1Wybierz raport wbudowany i zakres dat. Dostępne są raporty sprzedaży, rozliczenia lekarzy, magazynu, danych klinicznych, klientów oraz terminarza.
  2. 2Parametry raportu pozwalają zmienić grupowanie, horyzont ważności lub liczbę pozycji w rankingach.
  3. 3Własne zestawienie buduje się ze wskazanego zbioru danych, kolumn, filtrów, grupowania i sortowania. Przed zapisem użyj podglądu.
  4. 4Wyniki można eksportować do CSV lub XLSX, jeśli rola ma uprawnienie do eksportu.
Przejdź do modułu →
Profil użytkownika
Dane zawodowe, role, sesje, hasło, powiadomienia i preferencje.
  1. 1Uzupełnij dane zawodowe używane na dokumentach, w tym tytuł i numer prawa wykonywania zawodu.
  2. 2W sekcji „Role i dostęp” sprawdzisz przypisane role i efektywne uprawnienia; zmienia je administrator.
  3. 3W sekcji bezpieczeństwa zmienisz hasło, przejrzysz aktywne sesje i wylogujesz pozostałe urządzenia.
  4. 4Preferencje określają powiadomienia oraz domyślne ustawienia pracy użytkownika.
Przejdź do modułu →
Administracja organizacją
Użytkownicy, role, placówki, RODO, audyt, eksport i kolejka zadań.
  1. 1Administrator tworzy i blokuje konta, resetuje hasła, odbiera sesje oraz przypisuje role oparte na szczegółowych uprawnieniach.
  2. 2Dane organizacji, ustawienia systemowe, lokalizacje i zasoby są wspólne dla danego mandanta.
  3. 3Sekcja RODO obsługuje wnioski, eksport danych klienta, retencję i kontrolowaną anonimizację.
  4. 4Pełny eksport organizacji jest zadaniem asynchronicznym. Dziennik zdarzeń pokazuje działania użytkowników i obiekty, których dotyczyły.
  5. 5Widok kolejki pozwala rozpoznać błędy outboxa i ręcznie ponowić wybrane zdarzenie po usunięciu przyczyny.
Przejdź do modułu →
Bezpieczeństwo konta i danych
Logowanie, izolacja organizacji, sesje i bezpieczna praca z danymi.
  1. 1Podczas logowania podaj identyfikator swojej organizacji i własne dane dostępowe. Nie używaj wspólnych kont.
  2. 2Sesja znajduje się w ciasteczku HttpOnly, wygasa po bezczynności i może zostać unieważniona z profilu lub przez administratora.
  3. 3Uprawnienia sprawdza API, a PostgreSQL dodatkowo izoluje dane organizacji politykami RLS. Zmiana widoczności przycisku nie nadaje dostępu.
  4. 4Blokuj komputer po odejściu od stanowiska. Nie kopiuj danych ani eksportów poza system bez podstawy i odpowiednich uprawnień.
  5. 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.
Przejdź do modułu →

Administracja techniczna

Architektura systemu
Komponenty Veter, przepływ danych, wielomandantowość i integracje lokalne.
  1. 1Veter jest modularnym monolitem. Interfejs to Next.js 16 i React 19, a centralne API to NestJS 11 uruchamiany na Fastify pod prefiksem /api.
  2. 2PostgreSQL 17 jest źródłem prawdy. Dane organizacji są izolowane przez kontekst mandanta i polityki Row Level Security; audyt rejestruje operacje biznesowe.
  3. 3Redis i BullMQ przenoszą zadania asynchroniczne. API zapisuje zdarzenia do transakcyjnego outboxa w PostgreSQL, relay przekazuje je do kolejki, a osobny worker je wykonuje.
  4. 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.
  5. 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.
  6. 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.
  1. 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.
  2. 2Skopiuj główny .env.example do .env oraz apps/api/.env, po czym zastąp przykładowe hasła losowymi wartościami URL-safe.
  3. 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.
  4. 4Uruchom API na porcie 3100 i aplikację webową na porcie 3001. Web musi wskazywać API przez NEXT_PUBLIC_API_URL.
  5. 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 -d
cd apps/api
npm ci
npm run db:migrate
npm run dev
cd apps/web
Copy-Item .env.example .env.local
npm ci
npm run dev
Wdrożenie produkcyjne
Jednohostowy stos Compose z migracjami, healthcheckami, TLS i wolumenami.
  1. 1Kanoniczne wdrożenie znajduje się w katalogu deploy i uruchamia PostgreSQL, Redis, MinIO, migracje, API, worker, Next.js oraz Caddy.
  2. 2Skopiuj deploy/.env.example do deploy/.env. Ustaw unikalne sekrety, publiczny adres HTTPS, WEB_ORIGIN i COOKIE_SECURE=true.
  3. 3Najpierw zweryfikuj rozwiniętą konfigurację Compose, następnie zbuduj i uruchom usługi. Start API czeka na migracje i inicjalizację bucketu.
  4. 4Po wdrożeniu sprawdź status wszystkich kontenerów, endpoint /api/health oraz podstawowe przepływy logowania, kartoteki i zapisu.
  5. 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 ps
Konfiguracja środowiska
Najważniejsze grupy zmiennych, sekrety, sesje, integracje i harmonogramy.
  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 5Automatyzacja: przypomnienia działają wyłącznie w workerze po REMINDERS_ENABLED=true. Interwały i wyprzedzenia ustawiaj dopiero po skonfigurowaniu kanałów wysyłki.
  6. 6Diagnostyka: ENABLE_API_DOCS udostępnia /api/docs tylko po jawnym włączeniu. VETER_VERSION ustala wersję widoczną w stopce.
  7. 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.
  1. 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.
  2. 2Sekrety są przekazywane jako pliki. Klucz spool ma dokładnie 32 bajty, a katalog lokalnego rejestru SQLite musi być chroniony przed innymi użytkownikami.
  3. 3Agent buforuje transmisje przy utracie łączności, cyklicznie wysyła heartbeat i pobiera komendy z centralnego gatewaya.
  4. 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.
  5. 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.