def get(self, hotel_id): hotel = HotelModel.findHotel(hotel_id) if hotel: return jsonify({'hotel': hotel.json()}) return make_response(jsonify({'message': 'Hotel not found'}), 404) # not found
def delete(self, hotel_id): hotel = HotelModel.findHotel(hotel_id) if hotel is not None: try: hotel.delete_hotel() except: return {"message": "An error ocurred trying to delete"} return make_response(jsonify({"message": "Hotel deleted."}), 202) return make_response(jsonify({"message": "Hotel deleted."}), 404)
def put(self, hotel_id): dados = Hotel.arguments.parse_args() hotel_encontrado = HotelModel.findHotel(hotel_id) if hotel_encontrado: hotel_encontrado.update_hotel(**dados) hotel_encontrado.save_hotel() return hotel_encontrado.json(), 201 hotel = HotelModel(hotel_id, **dados) hotel.save_hotel() return make_response(hotel.json(), 200)
def post(self, hotel_id): if HotelModel.findHotel(hotel_id): return make_response( jsonify({'message': f"Hotel id {hotel_id} already existis"}), 400) dados = Hotel.arguments.parse_args() hotel = HotelModel(hotel_id, **dados) if not SiteModel.findSiteById(dados.get('site_id')): return make_response( jsonify({ 'message': 'The hotel must be associated to a valid site id.' }), 400) try: hotel.save_hotel() except: return { "message": "An internal error ocurred trying to save hotel." }, 500 # Internal Server Error return make_response(hotel.json(), 200)