feat: add gender field
continuous-integration/drone/push Build is passing Details

This commit is contained in:
BryantHe 2023-08-26 12:40:23 +08:00
parent c34f1a4fed
commit 5a10303133
2 changed files with 8 additions and 3 deletions

View File

@ -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)

View File

@ -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