from apiflask import APIBlueprint from flask import session from app import rpc from app.api.v1.exception.interaction import AddInteractionError from app.api.v1.schema.interaction import InteractionIn from app.util.auth import login_required interaction = APIBlueprint('interaction', __name__) @interaction.post('/') @interaction.doc(summary='添加交互记录', description='添加交互记录,category 类型int,1:点赞,2:加油,3:评论') @interaction.input(InteractionIn, location='json') @login_required def add_interaction(json_data): try: rpc.interaction.add(**{ 'sender': session['user_id'], 'receiver': json_data['receiver_id'], 'category': json_data['category'], 'related_party': json_data.get('related_party_id'), 'comment': json_data.get('comment') }) except Exception as e: raise AddInteractionError(extra_data={'error_docs': str(e)}) return {'msg': 'add interaction successfully'}