コード例 #1
0
def get_request(current_user, requestId):
    user_id = current_user[0]

    _request = Requests()
    _request = _request.fetch_request_by_id(user_id, requestId)

    if not _request:
        return jsonify({
            'status': 'unkown request id',
            'message': 'request does not exist'
        }), 400
    results = []
    this_request = {
        'id': _request[0],
        'type': _request[2],
        'title': _request[3],
        'description': _request[4],
        'create_date': _request[5],
        'status': _request[6]
    }
    results.append(this_request)
    return jsonify({
        'requests': results,
        'status': 'OK',
        'message': 'returned successfully'
    }), 200
コード例 #2
0
def put_request(current_user, requestId):

    if not request.json:
        return jsonify({"message": "request is invalid"}), 400

    if "title" not in request.json:
        return jsonify({"message": "title is missing"}), 400

    if "type" not in request.json:
        return jsonify({"message": "type is missing"}), 400

    if "description" not in request.json:
        return jsonify({"message": "body is missing"}), 400
    field = request.get_json()

    r_type = field['type'].lower()
    r_title = field['title'].lower()
    r_description = field['description']
    user_id = str(current_user[0])
    requestId = str(requestId)

    if re.compile("[~!@#$%^&*()-_=+}{]").search(r_title) or r_title == "":
        return jsonify({
            "message": "request title is not valid",
            "user": r_title,
        }), 400

    if re.compile("[~!@#$%^&*()-_=+}{]").search(r_type) or r_type == "":
        return jsonify({"message": "request type is not valid"}), 400

    if r_type not in ("repair", "maintenance"):
        return jsonify(
            {"message":
             "request type is not valid use reapir or maintanance"}), 400

    _request = Requests()
    request_data = _request.fetch_request_by_id(user_id, requestId)
    if not request_data:
        return jsonify({
            'message':
            'updating request failed, user and request combination doesnot exist'
        }), 400

    current_status = request_data[6]
    if request_data and current_status == "pending":
        return jsonify({'message': 'request not yet approved'}), 400

    if request_data and current_status == "resolved":
        return jsonify({'message': 'request already resolved'}), 400

    if request_data and current_status == "disapproved":
        return jsonify({'message': 'can not update disapproved request'}), 400

    result = _request.update_request(user_id, requestId, r_type, r_title,
                                     r_description)

    if result:
        return jsonify({'message': 'request updated successfully'}), 200