From 5a103031332f5b1abf391a7be709dedefb8b1c9d Mon Sep 17 00:00:00 2001 From: BryantHe Date: Sat, 26 Aug 2023 12:40:23 +0800 Subject: [PATCH] feat: add gender field --- app/api/v1/schema/user.py | 2 ++ app/api/v1/user.py | 9 ++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/api/v1/schema/user.py b/app/api/v1/schema/user.py index b83a886..24569b2 100644 --- a/app/api/v1/schema/user.py +++ b/app/api/v1/schema/user.py @@ -4,6 +4,7 @@ from apiflask.fields import String, Float, URL, Boolean class UserInfoIn(Schema): nickname = String() + gender = String() height = Float() is_hidden_weight = Boolean() @@ -15,6 +16,7 @@ class UserIdIn(Schema): class UserInfoOut(Schema): user_id = String(attribute='_id') nickname = String() + gender = String() avatar_id = String() avatar_url = URL() height = Float(allow_nan=True) diff --git a/app/api/v1/user.py b/app/api/v1/user.py index fe24592..b254e5d 100644 --- a/app/api/v1/user.py +++ b/app/api/v1/user.py @@ -11,7 +11,7 @@ user = APIBlueprint('user', __name__) @user.post('/info') -@user.doc(summary='设置用户信息', description='设置用户信息') +@user.doc(summary='设置用户信息', description='设置用户信息。注:gender 1 代表男性,2 代表女性') @user.input(UserInfoIn, location='json') @login_required def set_user_info(json_data): @@ -24,7 +24,8 @@ def set_user_info(json_data): try: rpc.body_record.set_body_info(session['user_id'], height=json_data.get('height', None), - is_hidden_weight=json_data.get('is_hidden_weight', None),) + is_hidden_weight=json_data.get('is_hidden_weight', None), + gender=json_data.get('gender', None)) except Exception as e: raise UserInfoError(extra_data={'error_docs': str(e)}) @@ -32,7 +33,7 @@ def set_user_info(json_data): @user.get('/info') -@user.doc(summary='查询用户信息', description='查询用户信息') +@user.doc(summary='查询用户信息', description='查询用户信息。注:gender 1 代表男性,2 代表女性') @user.input(UserIdIn, location='query') @user.output(UserInfoOut) @login_required @@ -60,6 +61,7 @@ def get_user_info(query_data): result.update(user_dict) if body_info_dict: result['height'] = body_info_dict.get('height', None) + result['gender'] = body_info_dict.get('gender', None) if body_info_dict.get('is_hidden_weight', None): result['is_hidden_weight'] = True else: @@ -67,5 +69,6 @@ def get_user_info(query_data): else: result['height'] = None result['is_hidden_weight'] = False + result['gender'] = None return result