[Cards] Change all instances of uuid to key

This commit is contained in:
2026-06-27 15:06:05 +02:00
parent 17b99041db
commit eec575c619
7 changed files with 16 additions and 16 deletions

View File

@@ -18,7 +18,7 @@ def register_card(group_id: int):
if key == None:
logger.info("No card registered. Check logs!")
raise HTTPException(status.HTTP_417_EXPECTATION_FAILED, detail="No card registered. Check logs!")
card = Card(group_id=group_id, uuid=key)
card = Card(group_id=group_id, key=key)
return card
@card_router.post("/{group_id}", response_model=Card)
@@ -31,7 +31,7 @@ def del_card(*, db: Session = Depends(get_session), admin: bool = Depends(auth_i
key = DeleteCard()
logger.info(key)
try:
card = db.exec(select(Card).where(Card.uuid == key)).one()
card = db.exec(select(Card).where(Card.key == key)).one()
except NoResultFound:
logger.info(f"The key:'{key}' was not found in db!")
raise HTTPException(status_code=500, detail="Key on card not found in DB. Please tell an admin about this. KEY={key}")

View File

@@ -16,14 +16,14 @@ debug_router = APIRouter(
def add_card_manually(groupid: int, card_key: str, db: Session=Depends(get_session)):
"""Add cards manually (you also have to delete them manually)"""
logger.critical(f"Manual db change: adding a card with key: {card_key} to group: {groupid}")
card = Card(group_id=groupid, uuid=card_key)
card = Card(group_id=groupid, key=card_key)
add_and_refresh(db, card)
return card
@debug_router.get("/rmcard/{card_key}")
def remove_card_manually(card_key: str, db: Session = Depends(get_session)):
logger.critical(f"Manual db change: removing a card with key: {card_key}")
card = db.exec(select(Card).where(Card.uuid == card_key)).one()
card = db.exec(select(Card).where(Card.key == card_key)).one()
add_and_refresh(db, card)
@debug_router.put("/getcards")
@@ -33,5 +33,5 @@ def list_all_cards(db: Session = Depends(get_session)):
print(cards)
out = []
for i in cards:
out.append({i.uuid: i.group.name})
out.append({i.key: i.group.name})
return out

View File

@@ -84,7 +84,7 @@ class AccessAuthorizationUpdate(Base):
#### Card
class Card(Base, table=True):
id: int | None = Field(default=None, primary_key=True)
uuid: str
key: str
group_id: int | None = Field(default=None, foreign_key="groupdb.id")
group: GroupDB | None = Relationship(back_populates="cards")

View File

@@ -28,11 +28,11 @@ def closeDoor():
def isDoorOpen():
return doorIsOpen
def checkAccess(uuid: str, db: Session):
def checkAccess(key: str, db: Session):
try:
current_weekday = datetime.datetime.weekday(datetime.date.today())
current_time = datetime.datetime.now()
card = db.exec(select(Card).where(Card.uuid == uuid)).one()
card = db.exec(select(Card).where(Card.key == key)).one()
for auth in card.group.accessauths:
logger.info(f"checking auth: {auth.name}")
for timetable in auth.timetables:

View File

@@ -99,7 +99,7 @@ def test_group(db_session):
@pytest.fixture
def test_card(db_session, test_group):
"""Create a test card."""
card = Card(uuid="test-uuid-123", group_id=test_group.id)
card = Card(key="test-key-123", group_id=test_group.id)
db_session.add(card)
db_session.commit()
db_session.refresh(card)

View File

@@ -59,8 +59,8 @@ def test_access_authorization_models():
def test_card_model():
"""Test card model creation and validation."""
card = Card(uuid="test-uuid", group_id=1)
assert card.uuid == "test-uuid"
card = Card(key="test-key", group_id=1)
assert card.key == "test-key"
assert card.group_id == 1

View File

@@ -9,7 +9,7 @@ def test_check_access_with_valid_timetable(db_session):
db_session.add(group)
db_session.commit()
card = Card(uuid="test-uuid-123", group_id=group.id)
card = Card(key="test-key-123", group_id=group.id)
db_session.add(card)
timetable = Timetable(
@@ -27,7 +27,7 @@ def test_check_access_with_valid_timetable(db_session):
db_session.commit()
# Test: access should be granted within time window
result = checkAccess("test-uuid-123", db_session)
result = checkAccess("test-key-123", db_session)
assert result == True
def test_check_access_outside_hours(db_session):
@@ -36,7 +36,7 @@ def test_check_access_outside_hours(db_session):
db_session.add(group)
db_session.commit()
card = Card(uuid="test-uuid-123", group_id=group.id)
card = Card(key="test-key-123", group_id=group.id)
db_session.add(card)
timetable = Timetable(
@@ -52,10 +52,10 @@ def test_check_access_outside_hours(db_session):
group.accessauths = [aa]
db_session.commit()
result = checkAccess("test-uuid-123", db_session)
result = checkAccess("test-key-123", db_session)
assert result == False
def test_check_access_invalid_card(db_session):
# Should raise exception for non-existent card
with pytest.raises(Exception):
checkAccess("non-existent-uuid", db_session)
checkAccess("non-existent-key", db_session)