支付完成后如何将非vip变成vip

接口使用方法, 支付接口完成后,需要将非vip变成vip,前端捕获支付完成后,修改权限及时长,调用刷新token和refresh_token,前端将localstore中的token和refresh_token替换掉,接口如下:需要注意前端需要定时调用返回值start_scheduled_call的参数

@routes.get('/api/v1/vip/refresh_token/{out_trade_no}')
@app_permission_authentication
async def users_vip_refresh_token(request):
    logger = request.app['logger']
    db = request.app['db']
    username = request.get('id')
    permission = request.get('permission')
    out_trade_no = request.match_info.get("out_trade_no", None)
    # 查询订单信息状态
    order_data = await db['orders'].find_one({'out_trade_no': out_trade_no}, {'_id': 0})
    order_status = order_data.get('trade_status')
    if order_status == "TRADE_SUCCESS" or order_status == "TRADE_FINISHED":
        user_data = await db['users'].find_one({'id': id, "permission": {"$in": [3, 4]}}, {'_id': 0})
        if user_data.get('permission') != permission and user_data.get('permission') == 3:
            token, refresh_token = AppAuthorization(request)._generate_tokens(username,
                                                                                      user_data["permission"],
                                                                                      id,
                                                                                      duration=user_data.get("duration"))
            return get_response(status=True, token=token, refresh_token=refresh_token, user_data=user_data)
        elif user_data.get('permission') == permission and user_data.get('permission') != 3:
            return get_response(False, "start_scheduled_call")
        else:
            return get_response(False, "not_update_token")
    else:
        # 不更新token
        return get_response(False, 'not_update_token')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值