from flask import Blueprint, request, jsonify
from bot.tasks import process_topup

api_bp = Blueprint('api', __name__)

@api_bp.route('/topup', methods=['POST'])
def topup():
    data = request.json

    # تحقق بسيط
    if not data or not data.get('player_id') or not data.get('category'):
        return jsonify({"error": "Missing player_id or category"}), 400

    # أرسل الطلب لـ Celery queue
    task = process_topup.delay(data)
    return jsonify({"status": "queued", "task_id": task.id}), 202

@api_bp.route('/status/<task_id>', methods=['GET'])
def task_status(task_id):
    from bot.tasks import process_topup
    task = process_topup.AsyncResult(task_id)
    return jsonify({"task_id": task_id, "status": task.state, "result": task.result})
