import datetime
import json
import cv2
from pyzbar.pyzbar import decode
def validar_qr_camera():
cap = cv2.VideoCapture(0)
print("\n📷 Posicione o QR Code na frente da câmera...")
while True:
_, frame = cap.read()
for code in decode(frame):
qr_data = code.data.decode("utf-8")
dados_qr = json.loads(qr_data)
data_expiracao = datetime.datetime.strptime(dados_qr["Data de vencimento"], "%Y-%m-%d")
hoje = datetime.datetime.now()
dias_restantes = (data_expiracao - hoje).days
if dias_restantes > 0:
print(f"\n✅ QR Code válido! Faltam {dias_restantes} dias para expirar.")
else:
print("\n⚠️ O QR Code expirou! Você deve devolver o item imediatamente.")
cap.release()
cv2.destroyAllWindows()
return
cv2.imshow("Leitor de QR Code", frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
validar_qr_camera()