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
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