notebookvb
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# KdoJeLekarApp – Registrující lékař z VZP B2B
|
||||
|
||||
## Přehled
|
||||
|
||||
Aplikace zobrazí registrujícího lékaře pacienta (praktický lékař, gynekolog, stomatolog a další) dotazem na VZP B2B API. Spouští se z Medicusu nad vybraným pacientem.
|
||||
|
||||
## Soubory
|
||||
|
||||
| Soubor | Popis |
|
||||
|--------|-------|
|
||||
| `KdoJeLekarApp.py` | Hlavní skript (customtkinter GUI) |
|
||||
| `KdoJeLekarApp.spec` | PyInstaller konfigurace |
|
||||
| `KdoJeLekarApp.ico` | Ikona EXE (konvertována z icons8-physician-60.png) |
|
||||
| `dist/KdoJeLekarApp.exe` | Spustitelný EXE |
|
||||
|
||||
## Konfigurace v Medicusu
|
||||
|
||||
V menu **Konfigurace > Externí programy**:
|
||||
|
||||
| Položka | Hodnota |
|
||||
|---------|---------|
|
||||
| **Program** | `U:\OrdinaceProjekt\Medicus\Externi\KdoJeLekar\dist\KdoJeLekarApp.exe` |
|
||||
| **Příkazový řádek** | `"U:\OrdinaceProjekt\Medicus\Externi\KdoJeLekar\dist\KdoJeLekarApp.exe" %JMENO% %PRIJMENI% %RODCIS%` |
|
||||
| **Pacient** | ✓ |
|
||||
| **Menu** | Kdo je lékař |
|
||||
|
||||
## VZP B2B API
|
||||
|
||||
- **Endpoint:** `https://prod.b2b.vzp.cz/B2BProxy/HttpProxy/RegistracePojistencePZSB2B`
|
||||
- **Certifikát:** `U:\OrdinaceProjekt\Insurance\Certificates\picka.pfx` / heslo viz `KdoJeLekarApp.py`
|
||||
- **Knihovna:** `Knihovny/vzpb2b_client.py` → metody `registrace_lekare()` a `parse_registrace_lekare()`
|
||||
- VZP B2B je **centrální endpoint pro všechny pojišťovny** — vrací pojištěnce VZP i ostatních pojišťoven (ČPZP, OZP atd.) na základě mezipojišťovnické dohody
|
||||
|
||||
## Důležité technické detaily
|
||||
|
||||
### Rodné číslo
|
||||
Medicus předává RC **s lomítkem** (např. `730928/104`). Skript lomítko automaticky odstraní před odesláním do API:
|
||||
```python
|
||||
RODCIS = sys.argv[3].replace("/", "")
|
||||
```
|
||||
|
||||
### Cesta k certifikátu
|
||||
Cesta k PFX je **absolutní natvrdo** — PyInstaller při spuštění EXE mění `Path(__file__)` na temp adresář, relativní cesta by nefungovala:
|
||||
```python
|
||||
PFX_PATH = Path(r"U:\OrdinaceProjekt\Insurance\Certificates\picka.pfx")
|
||||
```
|
||||
|
||||
### Argumenty z Medicusu
|
||||
```python
|
||||
JMENO = sys.argv[1]
|
||||
PRIJMENI = sys.argv[2]
|
||||
RODCIS = sys.argv[3].replace("/", "")
|
||||
```
|
||||
|
||||
## Zobrazená data
|
||||
|
||||
| Pole VZP | Zobrazeno jako |
|
||||
|----------|---------------|
|
||||
| `nazevSZZ` | Lékař |
|
||||
| `nazevICP` | Pracoviště |
|
||||
| `ICZ` + `ICP` | ICZ / ICP |
|
||||
| `datumRegistrace` | Registrace |
|
||||
| `datumZahajeni` | Platí od |
|
||||
| `datumUkonceni` | Platí do (3000-01-01 = bez omezení) |
|
||||
| `poj_zkratka` | Pojišťovna (zobrazena jednou v kartě pacienta) |
|
||||
|
||||
## Error handling
|
||||
|
||||
Jakákoliv výjimka zobrazí dialog a pošle email na `vladimir.buzalka@buzalka.cz` s traceback a údaji pacienta. Implementováno přes `Knihovny/EmailMessagingGraph.py`.
|
||||
|
||||
## Rebuild EXE
|
||||
|
||||
```
|
||||
cd U:\OrdinaceProjekt\Medicus\Externi\KdoJeLekar
|
||||
pyinstaller KdoJeLekarApp.spec
|
||||
```
|
||||
Reference in New Issue
Block a user