notebook
This commit is contained in:
96
Testy/03 Testt.py
Normal file
96
Testy/03 Testt.py
Normal file
@@ -0,0 +1,96 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import json
|
||||
import requests
|
||||
from pathlib import Path
|
||||
|
||||
# ============================
|
||||
# CONFIG
|
||||
# ============================
|
||||
TOKEN_PATH = Path("token.txt")
|
||||
|
||||
# vlož libovolný existující request ID
|
||||
REQUEST_ID = "3fc9b28c-ada2-4d21-ab2d-fe60ad29fd8f"
|
||||
|
||||
GRAPHQL_NOTES_QUERY = r"""
|
||||
query ClinicRequestNotes_Get($patientRequestId: String!) {
|
||||
notes: getClinicPatientRequestNotes(requestId: $patientRequestId) {
|
||||
id
|
||||
content
|
||||
createdAt
|
||||
updatedAt
|
||||
createdBy {
|
||||
id
|
||||
name
|
||||
surname
|
||||
}
|
||||
}
|
||||
}
|
||||
"""
|
||||
|
||||
# ============================
|
||||
# TOKEN
|
||||
# ============================
|
||||
def read_token(p: Path) -> str:
|
||||
tok = p.read_text(encoding="utf-8").strip()
|
||||
if tok.startswith("Bearer "):
|
||||
tok = tok.split(" ", 1)[1]
|
||||
return tok
|
||||
|
||||
# ============================
|
||||
# FETCH
|
||||
# ============================
|
||||
def fetch_notes(request_id, token):
|
||||
url = "https://api.medevio.cz/graphql"
|
||||
|
||||
headers = {
|
||||
"Authorization": f"Bearer {token}",
|
||||
"Content-Type": "application/json",
|
||||
"Accept": "application/json",
|
||||
}
|
||||
|
||||
variables = {"patientRequestId": request_id}
|
||||
|
||||
payload = {
|
||||
"operationName": "ClinicRequestNotes_Get",
|
||||
"query": GRAPHQL_NOTES_QUERY,
|
||||
"variables": variables,
|
||||
}
|
||||
|
||||
r = requests.post(url, json=payload, headers=headers)
|
||||
r.raise_for_status()
|
||||
return r.json()
|
||||
|
||||
# ============================
|
||||
# MAIN
|
||||
# ============================
|
||||
def main():
|
||||
token = read_token(TOKEN_PATH)
|
||||
|
||||
print(f"\n🔍 Fetching NOTES for request:\n ID = {REQUEST_ID}\n")
|
||||
|
||||
data = fetch_notes(REQUEST_ID, token)
|
||||
|
||||
print("📄 FULL RAW JSON:\n")
|
||||
print(json.dumps(data, indent=2, ensure_ascii=False))
|
||||
|
||||
print("\n📝 Parsed notes:\n")
|
||||
notes = data.get("data", {}).get("notes") or []
|
||||
if not notes:
|
||||
print(" (no notes found)")
|
||||
return
|
||||
|
||||
for n in notes:
|
||||
author = n.get("createdBy")
|
||||
print(f"--- Note {n.get('id')} ---")
|
||||
print(f"Created: {n.get('createdAt')}")
|
||||
print(f"Updated: {n.get('updatedAt')}")
|
||||
if author:
|
||||
print(f"Author: {author.get('name')} {author.get('surname')}")
|
||||
print("Content:")
|
||||
print(n.get("content"))
|
||||
print()
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user