Esempio n. 1
0
def patch_delete_qq_numbers(number_id):
    """
    patch /filter/qq_numbers/number_id
        更新一个QQ号码
    delete /filter/qq_numbers/number_id
        删除一个QQ号码
    """
    # 获取所有请求参数
    req_dict = request.values

    # 封装响应字段
    resp_data = {"code": 0, "count": 0, "msg": "操作成功~", "data": []}

    if not number_id:
        resp_data["msg"] = "缺少参数"
        resp_data["code"] = -1
        response = make_response(json.dumps(resp_data), 404)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    try:
        number_id = int(number_id)
    except:
        resp_data["msg"] = "参数错误"
        resp_data["code"] = -1
        response = make_response(json.dumps(resp_data), 406)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    number_model = SecondFilterQqnumber.query.filter_by(id=number_id).first()
    if not number_model:
        resp_data["msg"] = "资源不存在"
        resp_data["code"] = -1
        response = make_response(json.dumps(resp_data), 404)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    if "PATCH" == request.method:
        qq_number = req_dict.get("qq_number", None)
        if not qq_number:
            req_dict = request.get_json()
            qq_number = req_dict.get("qq_number", None)
        if not qq_number:
            resp_data["msg"] = "缺少参数"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 404)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response

        number_model.qq_number = qq_number
        db.session.add(number_model)
        db.session.commit()
        resp_data["data"].append({
            "id": number_model.id,
            "qq_number": number_model.qq_number
        })
        resp_data["count"] = 1
        response = make_response(json.dumps(resp_data), 200)
        response.headers["Content-Type"] = "application/json;charset=utf-8"

        # 更新消息记录表
        MessagesService.update_messages()

        return response

    if "DELETE" == request.method:
        db.session.delete(number_model)
        db.session.commit()
        response = make_response(json.dumps(resp_data), 200)
        response.headers["Content-Type"] = "application/json;charset=utf-8"

        # 更新消息记录表
        MessagesService.update_messages()

        return response
Esempio n. 2
0
def patch_delete_keys(key_id):
    """
    patch /message/filter/keys/key_id
        更新一个关键词
    delete /message/filter/keys/key_id
        删除一个关键词         
    """
    # 获取所有请求参数
    req_dict = request.values

    # 封装响应字段
    resp_data = {"code": 0, "count": 0, "msg": "操作成功~", "data": []}

    if not key_id:
        resp_data["msg"] = "缺少参数"
        resp_data["code"] = -1
        response = make_response(json.dumps(resp_data), 404)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    try:
        key_id = int(key_id)
    except:
        resp_data["msg"] = "参数错误"
        resp_data["code"] = -1
        response = make_response(json.dumps(resp_data), 406)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    key_model = FirstFilterKey.query.filter_by(id=key_id).first()
    if not key_model:
        resp_data["msg"] = "资源不存在"
        resp_data["code"] = -1
        response = make_response(json.dumps(resp_data), 404)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    if "PATCH" == request.method:
        key_name = req_dict.get("key_name", None)
        if not key_name:
            req_dict = request.get_json()
            key_name = req_dict.get("key_name", None)
        if not key_name:
            resp_data["msg"] = "缺少参数"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 404)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response

        key_model.key_name = key_name
        db.session.add(key_model)
        db.session.commit()
        resp_data["data"].append({
            "id": key_model.id,
            "key_name": key_model.key_name
        })
        resp_data["count"] = 1
        response = make_response(json.dumps(resp_data), 200)
        response.headers["Content-Type"] = "application/json;charset=utf-8"

        # 更新消息记录表
        MessagesService.update_messages()

        return response

    if "DELETE" == request.method:
        db.session.delete(key_model)
        db.session.commit()
        response = make_response(json.dumps(resp_data), 200)
        response.headers["Content-Type"] = "application/json;charset=utf-8"

        # 更新消息记录表
        MessagesService.update_messages()

        return response
Esempio n. 3
0
def get_post_qq_numbers():
    """
    get /message/filter/qq_numbers
        获取过滤QQ号码列表
    post /message/filter/qq_numbers
        新增一个QQ号码       
    """
    # 获取所有请求参数
    req_dict = request.values

    # 封装响应字段
    resp_data = {"code": 0, "count": 0, "msg": "操作成功~", "data": []}

    if "GET" == request.method:
        # 实现分页加载
        page = req_dict.get("page", 1)
        try:
            page = int(page)
        except:
            resp_data["msg"] = "参数错误"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 406)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response
        if page < 1:
            page = 1
        page_size = req_dict.get("limit", 10)
        try:
            page_size = int(page_size)
        except:
            resp_data["msg"] = "参数错误"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 406)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
        offset = (page - 1) * page_size

        number_model_list = SecondFilterQqnumber.query.order_by(
            SecondFilterQqnumber.id.desc()).offset(offset).limit(
                page_size).all()

        number_data_list = []

        if number_model_list:
            for model in number_model_list:
                number_data_list.append({
                    "id": model.id,
                    "qq_number": model.qq_number
                })

        resp_data["data"] = number_data_list
        resp_data["count"] = db.session.query(
            func.count(SecondFilterQqnumber.id)).scalar()

        response = make_response(json.dumps(resp_data), 200)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    if "POST" == request.method:
        qq_number = req_dict.get("qq_number", None)
        if not qq_number:
            req_dict = request.get_json()
            qq_number = req_dict.get("qq_number", None)
        if not qq_number:
            resp_data["msg"] = "参数错误"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 404)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response
        number_model = SecondFilterQqnumber.query.filter_by(
            qq_number=qq_number).first()
        if number_model:
            resp_data["msg"] = "QQ号码已经存在"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 406)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response
        else:
            number_model = SecondFilterQqnumber()
            number_model.qq_number = qq_number
            db.session.add(number_model)
            db.session.commit()
            resp_data["data"].append({
                "id": number_model.id,
                "qq_number": number_model.qq_number
            })
            resp_data["count"] = 1
            response = make_response(json.dumps(resp_data), 200)
            response.headers["Content-Type"] = "application/json;charset=utf-8"

            # 更新消息记录表
            MessagesService.update_messages()

            return response
Esempio n. 4
0
def get_post_keys():
    """
    get /message/filter/keys
        获取过滤关键词列表
    post /message/filter/keys
        新增一个关键词       
    """

    # 获取所有请求参数
    req_dict = request.values

    # 封装响应字段
    resp_data = {"code": 0, "count": 0, "msg": "操作成功~", "data": []}

    if "GET" == request.method:
        # 实现分页加载
        page = req_dict.get("page", 1)
        try:
            page = int(page)
        except:
            resp_data["msg"] = "参数错误"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 406)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response
        if page < 1:
            page = 1
        page_size = req_dict.get("limit", 10)
        try:
            page_size = int(page_size)
        except:
            resp_data["msg"] = "参数错误"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 406)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
        offset = (page - 1) * page_size

        key_model_list = FirstFilterKey.query.order_by(
            FirstFilterKey.id.desc()).offset(offset).limit(page_size).all()

        key_data_list = []

        if key_model_list:
            for model in key_model_list:
                key_data_list.append({
                    "id": model.id,
                    "key_name": model.key_name
                })

        resp_data["data"] = key_data_list
        resp_data["count"] = db.session.query(func.count(
            FirstFilterKey.id)).scalar()

        response = make_response(json.dumps(resp_data), 200)
        response.headers["Content-Type"] = "application/json;charset=utf-8"
        return response

    if "POST" == request.method:
        req_dict = request.get_json()
        key_name = req_dict["key_name"] if "key_name" in req_dict else None
        if not key_name:
            resp_data["msg"] = "参数错误"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 404)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response
        key_model = FirstFilterKey.query.filter_by(key_name=key_name).first()
        if key_model:
            resp_data["msg"] = "关键字已经存在"
            resp_data["code"] = -1
            response = make_response(json.dumps(resp_data), 406)
            response.headers["Content-Type"] = "application/json;charset=utf-8"
            return response
        else:
            key_model = FirstFilterKey()
            key_model.key_name = key_name
            db.session.add(key_model)
            db.session.commit()
            resp_data["data"].append({
                "id": key_model.id,
                "key_name": key_model.key_name
            })
            resp_data["count"] = 1
            response = make_response(json.dumps(resp_data), 200)
            response.headers["Content-Type"] = "application/json;charset=utf-8"

            # 更新消息记录表
            MessagesService.update_messages()

            return response