sestra
This commit is contained in:
@@ -222,5 +222,9 @@
|
||||
{
|
||||
"original": "435624102 2026-03-31 Hovorková, Eva [PZ ortopedie] [26-31MAR2026, gonartróza l.dx., TEP kolene, Zimmer Nexgen CR F/6/10].pdf",
|
||||
"corrected": "435624102 2026-03-31 Hovorková, Eva [PZ ortopedie] [26-31MAR2026, gonartróza l.dx., TEP kolene].pdf"
|
||||
},
|
||||
{
|
||||
"original": "470629074 2026-04-21 Šebesta, Jaroslav [oznámení ZP správní řízení] [zahájení správního řízení, LRPéče indikace II/3 hypertenzní choroba II-III.st].pdf",
|
||||
"corrected": "470629074 2026-04-21 Šebesta, Jaroslav [oznámení ZP správní řízení] [zahájení správního řízení, návrh lázně, indikace II3 hypertenzní choroba II-III.st].pdf"
|
||||
}
|
||||
]
|
||||
@@ -27,6 +27,7 @@ from pdf2image import convert_from_path
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).parent.parent))
|
||||
from Knihovny.najdi_dropbox import get_dropbox_root
|
||||
from Knihovny.najdi_medicus import get_medicus_config
|
||||
|
||||
POPPLER_PATH = r"C:/Poppler/Library/bin"
|
||||
CORRECTIONS_FILE = Path(__file__).parent / "corrections.json"
|
||||
@@ -97,8 +98,9 @@ def check_duplicates(rc: str, datum: str) -> list[str]:
|
||||
def _medicus_connect():
|
||||
try:
|
||||
import fdb
|
||||
cfg = get_medicus_config()
|
||||
return fdb.connect(
|
||||
dsn=r"localhost:c:\medicus 3\data\medicus.fdb",
|
||||
dsn=cfg.dsn,
|
||||
user="SYSDBA", password="masterkey", charset="win1250"
|
||||
)
|
||||
except Exception as e:
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
import socket
|
||||
from dataclasses import dataclass
|
||||
|
||||
|
||||
@dataclass
|
||||
class MedicusConfig:
|
||||
server: str
|
||||
path: str
|
||||
|
||||
@property
|
||||
def dsn(self) -> str:
|
||||
return f"{self.server}:{self.path}"
|
||||
|
||||
|
||||
def get_medicus_config() -> MedicusConfig:
|
||||
"""
|
||||
Vrátí konfiguraci připojení k databázi Medicus podle jména počítače.
|
||||
|
||||
Logika:
|
||||
- LEKAR → localhost, M:\\Medicus\\Data\\Medicus.fdb (ostrý lokální)
|
||||
- SESTRA → 192.168.1.10, M:\\Medicus\\Data\\Medicus.fdb (ostrý přes síť)
|
||||
- LENOVO → 192.168.1.10, M:\\Medicus\\Data\\Medicus.fdb (testovací přes síť)
|
||||
- ostatní → localhost, C:\\Medicus 3\\Data\\Medicus.fdb (testovací lokální)
|
||||
|
||||
Vrací:
|
||||
MedicusConfig s atributy server, path a vlastností dsn ("server:path").
|
||||
|
||||
Příklad použití:
|
||||
from Knihovny.najdi_medicus import get_medicus_config
|
||||
|
||||
cfg = get_medicus_config()
|
||||
con = fdb.connect(dsn=cfg.dsn, user="SYSDBA", password="masterkey")
|
||||
"""
|
||||
hostname = socket.gethostname().upper()
|
||||
|
||||
if hostname == "LEKAR":
|
||||
return MedicusConfig(server="localhost", path=r"M:\Medicus\Data\Medicus.fdb")
|
||||
elif hostname in ("SESTRA", "LENOVO"):
|
||||
return MedicusConfig(server="192.168.1.10", path=r"M:\Medicus\Data\Medicus.fdb")
|
||||
else:
|
||||
return MedicusConfig(server="localhost", path=r"C:\Medicus 3\Data\Medicus.fdb")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
cfg = get_medicus_config()
|
||||
print(f"Hostname : {socket.gethostname()}")
|
||||
print(f"Server : {cfg.server}")
|
||||
print(f"Path : {cfg.path}")
|
||||
print(f"DSN : {cfg.dsn}")
|
||||
Reference in New Issue
Block a user