コード例 #1
0
async def delete_room_review(room_id: int,
                             review_id: int,
                             db: Session = Depends(get_db),
                             api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_review_info = RoomReviewDAO.delete_room_review(db, room_id, review_id)
    return room_review_info
コード例 #2
0
async def delete_room_comment(room_id: int,
                              comment_id: int,
                              db: Session = Depends(get_db),
                              api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_comment = RoomCommentDAO.delete_comment(db, room_id, comment_id)
    return room_comment
コード例 #3
0
async def comment_room(payload: RoomCommentSchema,
                       room_id: int,
                       db: Session = Depends(get_db),
                       api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_comment = RoomCommentDAO.add_new_comment(db, room_id, payload)
    return room_comment
コード例 #4
0
async def review_room(payload: RoomReviewSchema,
                      room_id: int,
                      db: Session = Depends(get_db),
                      api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_review_info = RoomReviewDAO.add_new_room_review(db, room_id, payload)
    return room_review_info
コード例 #5
0
async def update_room(payload: RoomPatch,
                      room_id: int,
                      db: Session = Depends(get_db),
                      api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_info = RoomDAO.update_room(db, room_id, payload)
    return room_info
コード例 #6
0
async def get_room_rating(room_id: int,
                          rating_id: int,
                          db: Session = Depends(get_db),
                          api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_rating_info = RoomRatingDAO.get_room_rating(db, room_id, rating_id)
    return room_rating_info
コード例 #7
0
async def book_room(
    room_id: int, payload: RoomBookingSchema,
    db: Session = Depends(get_db),
    api_key: Optional[str] = Header(None)
):
    auth_service.verify_apy_key(api_key)
    room_booking_info = RoomBookingDAO.add_new_room_booking(db, room_id, payload)
    return room_booking_info
コード例 #8
0
async def get_all_room_comments(room_id: int,
                                db: Session = Depends(get_db),
                                api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_comments_list = RoomCommentDAO.get_all_comments(db, room_id)
    amount_comments = len(room_comments_list)
    return {
        "room_id": room_id,
        "amount": amount_comments,
        "comments": room_comments_list
    }
コード例 #9
0
async def get_all_rooms(
        db: Session = Depends(get_db),
        api_key: Optional[str] = Header(None),
        date_from: Optional[str] = None,
        date_to: Optional[str] = None,
        longitude: Optional[float] = None,
        latitude: Optional[float] = None,
        people: Optional[int] = None,
        types: List[str] = Query(None),
        owner_uuid: Optional[int] = None,
        min_price: Optional[int] = None,
        max_price: Optional[int] = None,
        allow_blocked: Optional[bool] = False,
        only_blocked: Optional[bool] = False,
        ids: List[int] = Query(None),
):
    auth_service.verify_apy_key(api_key)
    rooms_list = RoomDAO.get_all_rooms(db, date_from, date_to, longitude,
                                       latitude, people, types, owner_uuid,
                                       min_price, max_price, allow_blocked,
                                       only_blocked, ids)
    amount_rooms = len(rooms_list)
    return {"amount": amount_rooms, "rooms": rooms_list}
コード例 #10
0
async def get_recomended_rooms(db: Session = Depends(get_db),
                               api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    rooms_list = RoomDAO.get_recomended_rooms(db)
    amount_rooms = len(rooms_list)
    return {"amount": amount_rooms, "rooms": rooms_list}
コード例 #11
0
async def create_room(payload: RoomSchema,
                      db: Session = Depends(get_db),
                      api_key: Optional[str] = Header(None)):
    auth_service.verify_apy_key(api_key)
    room_info = RoomDAO.add_new_room(db, payload)
    return room_info