notebookvb
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
Porovnání počtu pacientů:
|
||||
- ACTIVE v Medevio (MySQL)
|
||||
- registrovaní v Medicusu (Firebird)
|
||||
"""
|
||||
|
||||
import sys
|
||||
try:
|
||||
sys.stdout.reconfigure(encoding="utf-8")
|
||||
sys.stderr.reconfigure(encoding="utf-8")
|
||||
except AttributeError:
|
||||
import io
|
||||
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding="utf-8")
|
||||
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding="utf-8")
|
||||
|
||||
sys.path.insert(0, 'U:/OrdinaceProjekt')
|
||||
|
||||
import pymysql
|
||||
from Knihovny.medicus_db import get_medicus_db
|
||||
|
||||
# ==================== CONFIG ====================
|
||||
|
||||
DB_CONFIG = {
|
||||
"host": "192.168.1.76",
|
||||
"port": 3306,
|
||||
"user": "root",
|
||||
"password": "Vlado9674+",
|
||||
"database": "medevio",
|
||||
"charset": "utf8mb4",
|
||||
"cursorclass": pymysql.cursors.DictCursor,
|
||||
}
|
||||
|
||||
# ==================== MAIN ====================
|
||||
|
||||
def main():
|
||||
print("=" * 70)
|
||||
print("KONTROLA SYNCHRONIZACE PACIENTŮ")
|
||||
print("=" * 70)
|
||||
|
||||
# --- Medevio (MySQL) ---
|
||||
print("\n[Medevio — MySQL]")
|
||||
conn = pymysql.connect(**DB_CONFIG)
|
||||
with conn.cursor() as cur:
|
||||
cur.execute("SELECT COUNT(*) as cnt FROM medevio_pacient WHERE status = 'ACTIVE'")
|
||||
medevio_active = cur.fetchone()["cnt"]
|
||||
conn.close()
|
||||
print(f" ACTIVE pacienti: {medevio_active}")
|
||||
|
||||
# --- Medicus (Firebird) ---
|
||||
print("\n[Medicus — Firebird]")
|
||||
db = get_medicus_db()
|
||||
rows = db.get_active_registered_patients()
|
||||
medicus_registered = len(rows)
|
||||
db.close()
|
||||
print(f" Registrovaní pacienti: {medicus_registered}")
|
||||
|
||||
# --- Porovnání ---
|
||||
print("\n" + "=" * 70)
|
||||
diff = medevio_active - medicus_registered
|
||||
if diff == 0:
|
||||
print(f"✓ SHODUJE SE! ({medevio_active} = {medicus_registered})")
|
||||
elif diff > 0:
|
||||
print(f"⚠ Medevio má {diff} VÍCE pacientů ({medevio_active} vs {medicus_registered})")
|
||||
print(f" → Jsou to možná pacienti bez účtu v Medicusu, kandidáti na REMOVED")
|
||||
else:
|
||||
print(f"⚠ Medicús má {-diff} VÍCE pacientů ({medicus_registered} vs {medevio_active})")
|
||||
print(f" → V Medicusu jsou pacienti, co nejsou v Medevio")
|
||||
print("=" * 70)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user