def post(self): request_json = request.get_json() request_form = json.loads(request_json) if ( type(request_json) != dict) else request_json operation_mode = request_form.get("operationMode", None) ride_request_ids = request_form.get("rideRequestIds", None) response_dict = None if operation_mode == "two" and ride_request_ids is not None: response_dict = actions.group_two(ride_request_ids) elif operation_mode == "many" and ride_request_ids is not None: actions.group_many(ride_request_ids) response_dict = {"success": True, "operationMode": "many"} elif operation_mode == "all": all_ride_request_ids = RideRequestGenericDao().get_ids( incomplete=True) actions.group_many(all_ride_request_ids) response_dict = {"success": True, "operationMode": "all"} else: response_dict = {"error": "Not specified operation mode."} return response_dict, 400 # return rideRequest.get_firestore_ref().id, 200 return response_dict, 200
def get(self): """ Triggers an automatic grouping for all incomplete requests. \ (temporary: will migrate to other ways to trigger grouping) \ Can only be called by google cloud cron tasks. --- tags: - groupAll # operationId: find ride request by id responses: '200': description: successful operation properties: success: type: boolean example: true operationMode: type: string example: all '403': description: Unauthorized. This resource must be run with Appengine-Cron. default: description: unexpected error """ all_ride_request_ids = RideRequestGenericDao().get_ids(incomplete=True) actions.group_many(all_ride_request_ids) response_dict = {"success": True, "operationMode": "all"} return response_dict, 200
def refreshGroupAll(): """ Description This function corresponds to use case "grouping ride requests". :return: """ allRideRequestIds = RideRequestGenericDao().get_ids(incomplete=True) actions.group_many(allRideRequestIds)
def post(self): """ Matches rideRequests in ways specified in the given json --- tags: - groupTasks parameters: - in: body name: body schema: id: GroupTask required: - operationMode properties: operationMode: type: string enum: - two - many - all rideRequestIds: type: array items: name: rideRequestId type: string example: "riderequestid1" responses: '200': description: successful operation properties: success: type: boolean example: true operationMode: type: string example: all '400': description: unexpected error properties: error: description: error message example: "Not specified operation mode." """ request_json = request.get_json() request_form = json.loads(request_json) if ( type(request_json) != dict) else request_json operation_mode = request_form.get("operationMode", None) ride_request_ids = request_form.get("rideRequestIds", None) response_dict = None if operation_mode == "two" and ride_request_ids is not None: response_dict = actions.group_two(ride_request_ids) elif operation_mode == "many" and ride_request_ids is not None: actions.group_many(ride_request_ids) response_dict = {"success": True, "operationMode": "many"} elif operation_mode == "all": all_ride_request_ids = RideRequestGenericDao().get_ids( incomplete=True) actions.group_many(all_ride_request_ids) response_dict = {"success": True, "operationMode": "all"} else: response_dict = {"error": "Not specified operation mode."} return response_dict, 400 # return rideRequest.get_firestore_ref().id, 200 return response_dict, 200