import sys, os, requests
sys.stdout.reconfigure(encoding='utf-8')
from dotenv import load_dotenv
load_dotenv(os.path.join(os.path.dirname(__file__), '../.env'))

KOD     = 'N006/19/V00036432'
API_URL = 'https://nen.nipez.cz/api/datarows?className=Zadavaci_postup_hist'
CONDITION = "Kod=@0 AND aktualni = true and not exists(Zadavaci_postup_hist,Hist = &Hist and create_cas>&create_cas and aktualni = true)"

session = requests.Session()
session.headers.update({'User-Agent': 'Mozilla/5.0'})
session.get('https://nen.nipez.cz/en/verejne-zakazky', timeout=30)
xsrf = session.cookies.get('XSRF-TOKEN-Client', '')
print(f'XSRF: {xsrf[:20]}...')

payload = {
    'className': 'Zadavaci_postup_hist',
    'attributes': [
        {'clientName': 'id',          'serverName': 'ID'},
        {'clientName': 'kod',         'serverName': 'Kod'},
        {'clientName': 'nazev',       'serverName': 'Nazev'},
        {'clientName': 'podaniLhuta', 'serverName': 'Podani_nabidka.Lhuta'},
        {'clientName': 'stavZP',      'serverName': 'Stav_ZP'},
    ],
    'condition': CONDITION,
    'conditionParams': [KOD]
}

r = session.post(API_URL, json=payload, headers={
    'X-XSRF-TOKEN': xsrf,
    'Content-Type': 'application/json',
    'Origin': 'https://nen.nipez.cz',
}, timeout=30)

print(f'HTTP: {r.status_code}')
data = r.json()
print(f'Records returned: {len(data)}')
if data:
    obj = data[0]
    print(f'  kod         : {obj.get("kod")}')
    print(f'  nazev       : {obj.get("nazev")}')
    print(f'  stavZP      : {obj.get("stavZP")}')
    print(f'  podaniLhuta : {obj.get("podaniLhuta")}')
