Files
KPK/Milan_mapastolu.py
2026-06-23 15:20:56 +02:00

74 lines
2.6 KiB
Python

#testovaci program pro nahrani mapy stolu
# replace mapa_stolu na jeden request
import api_call
from pydantic import SecretStr
import data
# ---------- vytvoření testovací mapy ----------
def create_tst_mapa():
return data.MapaStolu(
pokladny=["01", "07"],
rooms=[
data.Room(
room_name="Hlavni",
stoly=[
data.Table(id="1", name="Stůl 1", pos_x=50, pos_y=50, width=100, height=100, radius=0),
data.Table(id="2", name="Stůl 2", pos_x=200, pos_y=50, width=100, height=100, radius=1),
data.Table(id="1", name="VIP", pos_x=150, pos_y=500, width=100, height=100, radius=1.0), # kulatý
data.Table(id="2", name="Bar", pos_x=380, pos_y=420, width=100, height=100, radius=0.0), # čtverec
data.Table(id="3", name="Rodina", pos_x= 20, pos_y=280, width=180, height=100, radius=0.2),# obdélník
data.Table(id="R4", name="Personal_dopo", pos_x=900, pos_y=520, width=120, height=120, radius=0.4),
],
),
data.Room(
room_name="Salonek",
stoly=[
data.Table(id="10", name="S1", pos_x=50, pos_y=50, width=80, height=80, radius=0),
data.Table(id="R4", name="Personal_dopo", pos_x=900, pos_y=520, width=120, height=120, radius=0.4),
data.Table(id="12", name="Malý", pos_x=700, pos_y=220, width=90, height=90, radius=0.0),
],
),
],
)
# ---------- API context ----------
def get_ctx():
ctx = api_call.ApiContext(
user="Alto",
base_url="http://127.0.0.1:8000",
refresh_url="http://127.0.0.1:8000",
client_id="99",
id_kas="01",
username="Kobrle",
password=SecretStr("heslo"),
)
return ctx
ctx = get_ctx()
# ---------- login ----------
api_call.login_API(ctx)
# ---------- vytvoření mapy ----------
mapa = create_tst_mapa()
print("\n--- TEST MAPA (CREATE) ---")
for room in mapa.rooms:
print("Room:", room.room_name)
for t in room.stoly:
print(" ", t.id, t.name, t.pos_x, t.pos_y)
# ---------- uložení mapy ----------
api_call.save_mapa_stolu_API(ctx, mapa)
print("\nMapa uložena\n")
# ---------- načtení mapy ----------
mapa_loaded = api_call.load_mapa_stolu_API(ctx)
api_call.logout_API(ctx)
print("\n--- TEST MAPA (LOADED) ---")
for room in mapa_loaded.rooms:
print("Room:", room.room_name)
for t in room.stoly:
print(" ", t.id, t.name, t.pos_x, t.pos_y)