from app.api import bp_user from flask import request, jsonify from flasgger import swag_from import app.messages.api_responses.user_responses as response import app.messages.api_errors as errors from app.doc.user_swag import login_swagger from app.services.user import login_service @bp_user.route("/login", methods=["POST"]) @swag_from(login_swagger) def login(): data = request.get_json() if not data: result, status_code = errors.NOT_JSON return jsonify(result), status_code required_fields = ["username", "password"] missing_fields = [field for field in required_fields if field not in data] if missing_fields: result, status_code = errors.MISSING_FIELDS(missing_fields) return jsonify(result), status_code username = data["username"] password = data["password"] result, status_code = login_service.login(username, password) return result, status_code