first commit

This commit is contained in:
2026-04-07 16:05:05 +08:00
commit 9d9bdbb1ce
136 changed files with 5103 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
from flask import jsonify, request
from flask_jwt_extended import jwt_required, get_jwt_identity
from . import api_bp
from ..models import User
from ..schemas import UserSchema, UserUpdateSchema
from ..services import UserService
user_schema = UserSchema()
user_update_schema = UserUpdateSchema()
@api_bp.route("/users/me", methods=["GET"])
@jwt_required()
def get_current_user():
user_id = get_jwt_identity()
user = User.query.get(user_id)
if not user:
return jsonify({"error": "用户不存在"}), 404
return jsonify(user_schema.dump(user))
@api_bp.route("/users/me", methods=["PUT"])
@jwt_required()
def update_current_user():
user_id = get_jwt_identity()
user = User.query.get(user_id)
if not user:
return jsonify({"error": "用户不存在"}), 404
data = request.get_json()
errors = user_update_schema.validate(data)
if errors:
return jsonify({"error": errors}), 400
try:
updated_user = UserService.update_user(user, data)
return jsonify(user_schema.dump(updated_user))
except ValueError as e:
return jsonify({"error": str(e)}), 400