přidána sdílená MySQL knihovna, paměť Claude a oprava připojení Medicus.fdb

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
michaela.buzalkova
2026-04-18 07:28:23 +02:00
parent 66e10b60c3
commit 4354285625
7 changed files with 91 additions and 23 deletions
@@ -15,6 +15,7 @@ import time
import logging
from Knihovny.medicus_db import MedicusDB
from Knihovny.vzpb2b_client import VZPB2BClient
from Knihovny.mysql_db import connect_mysql
import pymysql
from datetime import date
@@ -45,15 +46,7 @@ def log_error(msg):
# ==========================================
# MYSQL CONNECTION
# ==========================================
mysql = pymysql.connect(
host="192.168.1.76",
port=3306,
user="root",
password="Vlado9674+",
database="medevio",
charset="utf8mb4",
autocommit=True
)
mysql = connect_mysql()
# ==========================================
# SAVE RESULT
@@ -94,8 +87,8 @@ def save_insurance_status(mysql_conn, rc, prijmeni, jmeno, k_datu, result, xml_t
# con = fdb.connect(
# host='192.168.1.10', database=r'm:\MEDICUS\data\medicus.FDB',
# user='sysdba', password='masterkey',charset='WIN1250')
HOST = "192.168.1.4"
DB_PATH = r"c:\Medicus 3\data\MEDICUS.FDB"
HOST = "192.168.1.10"
DB_PATH = r"M:\Medicus\Data\Medicus.fdb"
PFX_PATH = Path(__file__).resolve().parent / "Certificates" / "picka.pfx"
# PFX_PATH = PROJECT_ROOT / "certificates" / "MBcert.pfx"
@@ -132,19 +125,15 @@ today = date.today()
# ==========================================
# FILTER: ONLY PATIENTS NOT CHECKED TODAY
# ==========================================
patients_to_check = []
with mysql.cursor() as cur:
cur.execute("SELECT DISTINCT rc FROM vzp_stav_pojisteni WHERE k_datu = %s", (today,))
already_checked = {row[0] for row in cur.fetchall()}
with mysql.cursor(pymysql.cursors.DictCursor) as cur:
for rc, prijmeni, jmeno, poj in patients:
cur.execute(
"SELECT MAX(k_datu) AS last_check FROM vzp_stav_pojisteni WHERE rc = %s",
(rc,)
)
row = cur.fetchone()
last_check = row["last_check"]
if last_check is None or last_check < today:
patients_to_check.append((rc, prijmeni, jmeno))
patients_to_check = [
(rc, prijmeni, jmeno)
for rc, prijmeni, jmeno, poj in patients
if rc not in already_checked
]
log_info(f"Incremental run: {len(patients_to_check)} patients to check today\n")