Esempio n. 1
0
def users_get(user):
    # 查询全用户信息

    limit, offset, query, sort, code = get_query_parameter(
        request, ['user_id', 'name', 'user_code'], [
            'user_id', 'name', 'user_code', 'join_date', 'rating_ptt',
            'time_played', 'ticket'
        ])
    if code < 0:
        return jsonify({
            'status': 200,
            'code': code,
            'data': {},
            'msg': code_get_msg(code)
        })

    data = api.users.get_users(limit, offset, query, sort)

    if not data:
        return jsonify({
            'status': 200,
            'code': -2,
            'data': {},
            'msg': code_get_msg(-2)
        })

    return jsonify({'status': 200, 'code': 0, 'data': data, 'msg': ''})
Esempio n. 2
0
def songs_get(user):
    # 查询全歌曲信息

    limit, offset, query, sort, code = get_query_parameter(
        request, ['sid', 'name_en', 'name_jp', 'pakset', 'artist'], [
            'sid', 'name_en', 'name_jp', 'pakset', 'artist', 'date',
            'rating_pst', 'rating_prs', 'rating_ftr', 'rating_byn'
        ])
    if code < 0:
        return jsonify({
            'status': 200,
            'code': code,
            'data': {},
            'msg': code_get_msg(code)
        })

    data = api.songs.get_songs(limit, offset, query, sort)

    if not data:
        return jsonify({
            'status': 200,
            'code': -2,
            'data': {},
            'msg': code_get_msg(-2)
        })

    return jsonify({'status': 200, 'code': 0, 'data': data, 'msg': ''})
Esempio n. 3
0
def users_user_r30_get(user, user_id):
    # 查询用户r30

    if user_id == 'me':
        user_id = user.user_id

    if user_id <= 0:
        return jsonify({
            'status': 200,
            'code': -4,
            'data': {},
            'msg': code_get_msg(-4)
        })

    if user_id != user.user_id and not 'select' in user.power and user.user_id != 0:  # 查别人需要select权限
        return jsonify({
            'status': 403,
            'code': -1,
            'data': {},
            'msg': 'No permission'
        })

    data = api.users.get_user_r30(user_id)

    if data['data'] == []:
        return jsonify({
            'status': 200,
            'code': -3,
            'data': {},
            'msg': code_get_msg(-3)
        })

    return jsonify({'status': 200, 'code': 0, 'data': data, 'msg': ''})
Esempio n. 4
0
        def wrapped_view(*args, **kwargs):

            re = Query()

            if 'limit' in request.json:
                try:
                    re.limit = int(request.json['limit'])
                except:
                    return jsonify({
                        'status': 200,
                        'code': -101,
                        'data': {},
                        'msg': code_get_msg(-101)
                    })

            if 'offset' in request.json:
                try:
                    re.offset = int(request.json['offset'])
                except:
                    return jsonify({
                        'status': 200,
                        'code': -101,
                        'data': {},
                        'msg': code_get_msg(-101)
                    })
            if 'query' in request.json:
                re.query = request.json['query']
                for i in re.query:
                    if i not in query_able:
                        return jsonify({
                            'status': 200,
                            'code': -102,
                            'data': {},
                            'msg': code_get_msg(-102)
                        })
            if 'sort' in request.json:
                re.sort = request.json['sort']
                for i in re.sort:
                    if 'column' not in i or i['column'] not in sort_able:
                        return jsonify({
                            'status': 200,
                            'code': -103,
                            'data': {},
                            'msg': code_get_msg(-103)
                        })
                    if not 'order' in i:
                        i['order'] = 'ASC'
                    else:
                        if i['order'] not in ['ASC', 'DESC']:
                            return jsonify({
                                'status': 200,
                                'code': -104,
                                'data': {},
                                'msg': code_get_msg(-104)
                            })

            return view(re, *args, **kwargs)
Esempio n. 5
0
def users_user_best_get(user, user_id):
    # 查询用户所有best成绩

    if user_id == 'me':
        user_id = user.user_id

    if user_id <= 0:
        return jsonify({
            'status': 200,
            'code': -4,
            'data': {},
            'msg': code_get_msg(-4)
        })

    if user_id != user.user_id and not 'select' in user.power and user.user_id != 0:  # 查别人需要select权限
        return jsonify({
            'status': 403,
            'code': -1,
            'data': {},
            'msg': 'No permission'
        })

    limit, offset, query, sort, code = get_query_parameter(
        request, ['song_id', 'difficulty'],
        ['song_id', 'difficulty', 'score', 'time_played', 'rating'])
    if code < 0:
        return jsonify({
            'status': 200,
            'code': code,
            'data': {},
            'msg': code_get_msg(code)
        })

    data = api.users.get_user_best(user_id, limit, offset, query, sort)

    if data['data'] == []:
        return jsonify({
            'status': 200,
            'code': -3,
            'data': {},
            'msg': code_get_msg(-3)
        })

    return jsonify({'status': 200, 'code': 0, 'data': data, 'msg': ''})
Esempio n. 6
0
def songs_song_get(user, song_id):
    # 查询歌曲信息

    data = api.songs.get_song_info(song_id)

    if not data:
        return jsonify({
            'status': 200,
            'code': -2,
            'data': {},
            'msg': code_get_msg(-2)
        })

    return jsonify({'status': 200, 'code': 0, 'data': data, 'msg': ''})
Esempio n. 7
0
def return_encode(code: int = 0,
                  data: dict = {},
                  status: int = 200,
                  msg: str = ''):
    # 构造返回,返回jsonify处理过后的response_class
    if msg == '':
        msg = code_get_msg(code)
    if code < 0:
        return jsonify({
            'status': status,
            'code': code,
            'data': {},
            'msg': msg
        })
    else:
        return jsonify({
            'status': status,
            'code': code,
            'data': data,
            'msg': msg
        })
Esempio n. 8
0
def token_post():
    # 登录,获取token

    if 'auth' in request.json:
        data, code = api.api_auth.login(request.json['auth'],
                                        request.remote_addr)
        if code < 0:
            return jsonify({
                'status': 200,
                'code': code,
                'data': {},
                'msg': code_get_msg(code)
            })
        else:
            return jsonify({'status': 200, 'code': 0, 'data': data, 'msg': ''})
    else:
        return jsonify({
            'status': 401,
            'code': -1,
            'data': {},
            'msg': 'No authentication'
        })