Fix admin QR generation flow
This commit is contained in:
17
web_app.py
17
web_app.py
@@ -2,9 +2,10 @@ import os
|
||||
|
||||
from flask import Flask, jsonify, render_template, request
|
||||
|
||||
from miniapp_qr_poc import generate_member_qr, load_found_ids
|
||||
from miniapp_qr_poc import generate_member_qr
|
||||
|
||||
app = Flask(__name__)
|
||||
ADMIN_MEMBER_ID = 104891
|
||||
|
||||
|
||||
@app.get("/")
|
||||
@@ -17,24 +18,18 @@ 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
|
||||
member_id = ADMIN_MEMBER_ID
|
||||
if payload and payload.get("member_id") not in (None, "", ADMIN_MEMBER_ID, str(ADMIN_MEMBER_ID)):
|
||||
return jsonify({"ok": False, "error": f"only member_id={ADMIN_MEMBER_ID} is supported"}), 400
|
||||
|
||||
try:
|
||||
result = generate_member_qr(int(member_id), include_data_url=True)
|
||||
result = generate_member_qr(member_id, include_data_url=True)
|
||||
except ValueError as exc:
|
||||
return jsonify({"ok": False, "error": str(exc)}), 400
|
||||
except Exception as exc:
|
||||
|
||||
Reference in New Issue
Block a user