This commit is contained in:
49
web_app.py
Normal file
49
web_app.py
Normal file
@@ -0,0 +1,49 @@
|
||||
import os
|
||||
|
||||
from flask import Flask, jsonify, render_template, request
|
||||
|
||||
from miniapp_qr_poc import generate_member_qr, load_found_ids
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
|
||||
@app.get("/")
|
||||
def index():
|
||||
return render_template("index.html")
|
||||
|
||||
|
||||
@app.get("/healthz")
|
||||
def healthz():
|
||||
return jsonify({"ok": True})
|
||||
|
||||
|
||||
@app.get("/api/found-ids")
|
||||
def api_found_ids():
|
||||
items = load_found_ids()
|
||||
return jsonify({"ok": True, "count": len(items), "items": items})
|
||||
|
||||
|
||||
@app.post("/api/generate")
|
||||
def api_generate():
|
||||
payload = request.get_json(silent=True)
|
||||
if payload is None:
|
||||
payload = request.form
|
||||
|
||||
member_id = payload.get("member_id") if payload else None
|
||||
if member_id is None or str(member_id).strip() == "":
|
||||
return jsonify({"ok": False, "error": "missing member_id"}), 400
|
||||
|
||||
try:
|
||||
result = generate_member_qr(int(member_id), include_data_url=True)
|
||||
except ValueError as exc:
|
||||
return jsonify({"ok": False, "error": str(exc)}), 400
|
||||
except Exception as exc:
|
||||
return jsonify({"ok": False, "error": str(exc)}), 500
|
||||
|
||||
return jsonify({"ok": True, **result})
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
host = os.getenv("HOST", "0.0.0.0")
|
||||
port = int(os.getenv("PORT", "8000"))
|
||||
app.run(host=host, port=port, debug=False)
|
||||
Reference in New Issue
Block a user