Exemple #1
0
 async def createRecord(cls, room: NewRoomReservationParams, userDoc: User):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         roomDoc = model.Room.objects.get(id=room.room)
         if not roomDoc.available:
             raise RoomNotAvailableError
         else:
             roomDoc.update(available=False)
         room = dict(room)
         room['room'] = roomDoc.id
         room['user'] = userDoc['id']
         crud.create(room, msg)
         return msg.data
     except RoomNotAvailableError:
         raise
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except NotUniqueError as e:
         logging.error(str(e))
         msg.addMessage('Error', str(e))
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #2
0
 async def createRecord(cls, userInfo: UserInfoParams, user: UserParams):
     msg = Message()
     crud = CRUD(cls=cls)
     user = dict(user)
     try:
         userInfo = dict(userInfo)
         userInfo['user_id'] = user['id']
         crud.create(userInfo, msg)
         return msg.data
     except DoesNotExist:
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #3
0
 async def searchWithParams(cls, skip, limit, expand: list = None, **kwargs) -> dict:
     crud = CRUD(cls=cls)
     try:
         kwargs["active"] = True
         crud.read(query=kwargs, skip=skip, limit=limit, exclude=['createdOn', 'active'])
         data = crud.toJSON(expand)
         return data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         logging.error(str(e))
         raise
Exemple #4
0
 async def createRecord(cls, **kwargs):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         crud.create(kwargs, msg)
         return msg.data
     except NotUniqueError as e:
         logging.error(str(e))
         msg.addMessage('Error', str(e))
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #5
0
 async def createRecord(cls, newUser: UserParams):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         newUser = dict(newUser)
         newUser['password'] = get_hash(newUser['password'])
         crud.create(newUser, msg)
         return msg.data
     except DoesNotExist:
         raise
     except NotUniqueError as e:
         logging.error(str(e))
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #6
0
 async def createRecord(cls, room: NewRoomParams):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         roomDoc = model.RoomType.objects.get(id=room.room_type)
         hotelDoc = model.Hotel.objects.get(id=room.hotel)
         room = dict(room)
         room['room_type'] = roomDoc.id
         room['hotel'] = hotelDoc.id
         crud.create(room, msg)
     except NotUniqueError as e:
         logging.error(str(e))
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         return msg.data
     else:
         return msg.data
Exemple #7
0
 async def createRecord(cls, reservation: NewCarReservationParams,
                        user: dict):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         userDoc = model.User.objects.get(id=user['id'])
         carDoc = model.Car.objects.get(id=reservation.car)
         reservation = dict(reservation)
         reservation['user'] = userDoc.id
         reservation['car'] = carDoc.id
         crud.create(reservation, msg)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #8
0
 async def createRecord(cls, model: NewCarModelParams):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         carBrand = CarBrand.objects.get(id=model.brand)
         model = dict(model)
         model['brand'] = carBrand.id
         crud.create(model, msg)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except NotUniqueError as e:
         logging.error(str(e))
         msg.addMessage('Error', str(e))
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #9
0
 async def createRecord(cls, newRoomType: NewRoomTypeParams):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         hotel = model.Hotel.objects.get(id=newRoomType.hotel)
         newRoomType = dict(newRoomType)
         newRoomType['hotel'] = hotel.id
         crud.create(newRoomType, msg)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except NotUniqueError as e:
         logging.error(str(e))
         msg.addMessage('Error', str(e))
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #10
0
 async def createRecord(cls, car: NewCarParams):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         brandDoc = model.CarBrand.objects.get(id=car.brand)
         carTypeDoc = model.CarType.objects.get(id=car.car_type)
         modelDoc = model.CarModel.objects.get(id=car.model)
         car = dict(car)
         car['brand'] = brandDoc.id
         car['car_type'] = carTypeDoc.id
         car['model'] = modelDoc.id
         crud.create(car, msg)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #11
0
 async def createRecord(cls, reservation: NewReservationParams, user: dict):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         hotelDoc = model.RoomReservation.query(query={
             "id__in": reservation.hotel_reservation,
             "user": user["id"],
             'active': True
         }, )
         carDoc = model.CarReservation.query(query={
             "id__in": reservation.car_reservation,
             "user": user["id"],
             'active': True
         }, )
         userDoc = model.User.objects.get(id=user['id'])
         reservation = dict(reservation)
         reservation['user'] = userDoc.id
         if isinstance(hotelDoc, list):
             reservation['hotel_reservation'] = list(
                 map(lambda x: x.id, hotelDoc))
         else:
             reservation['hotel_reservation'] = [hotelDoc.id]
         if isinstance(carDoc, list):
             reservation['car_reservation'] = list(
                 map(lambda x: x.id, carDoc))
         else:
             reservation['car_reservation'] = [carDoc.id]
         crud.create(reservation, msg)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #12
0
 async def deleteRecord(cls, userId: str) -> None:
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         query = {"user_id": userId, 'active': True}
         crud.read(query=query)
         crud.delete(msg, softDelete=False)
         return msg.data
     except DoesNotExist:
         raise
     except Exception as e:
         raise
Exemple #13
0
 async def deleteRecord(cls, objectID: str) -> None:
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         query = {"id": objectID, 'active': True}
         crud.read(query=query)
         crud.delete(msg)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         raise e
Exemple #14
0
 async def deleteRecord(cls, currentUser):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         currentUser = dict(currentUser)
         query = {"username": currentUser.get('username'), 'active': True}
         crud.read(query=query)
         crud.delete(msg)
         await UserInfo.deleteRecord(crud.documents[0].id)
         return msg.data
     except DoesNotExist:
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #15
0
 async def deleteRecord(cls, objectID: str) -> None:
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         query = {"id": objectID, 'active': True}
         crud.read(query=query)
         crud.delete(msg)
         roomDoc = Room.objects.get(id=crud.documents[0].room.id)
         roomDoc.update(available=True)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         raise e
Exemple #16
0
 async def updateRecord(cls, user: UserParams, newData: UserInfoParams):
     msg = Message()
     crud = CRUD(cls=cls)
     user = dict(user)
     try:
         query = {"user_id": user.get('id'), 'active': True}
         exclude = cls._meta.get("exclude_from_update", [])
         if 'id' not in exclude:
             exclude.append('id')
         crud.read(query=query)
         crud.update(newData, msg, exclude=exclude)
         return msg.data
     except DoesNotExist:
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #17
0
 async def updateRecord(cls, **kwargs):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         query = {"id": kwargs.get('id'), 'active': True}
         exclude = cls._meta.get("exclude_from_update", [])
         if 'id' not in exclude:
             exclude.append('id')
         crud.read(query=query)
         crud.update(kwargs, msg, exclude=exclude)
         return msg.data
     except DoesNotExist:
         raise
     except ValidationError as e:
         logging.error(str(e))
         raise ValidationError
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise
Exemple #18
0
 async def updateRecord(cls, currentUser, newData: dict):
     msg = Message()
     crud = CRUD(cls=cls)
     try:
         if "password" in newData:
             newData['password'] = get_hash(newData['password'])
         currentUser = dict(currentUser)
         query = {"username": currentUser.get('username')}
         exclude = cls._meta.get("exclude_from_update", [])
         if 'id' not in exclude:
             exclude.append('id')
         crud.read(query=query)
         crud.update(newData, msg, exclude=exclude)
         return msg.data
     except DoesNotExist:
         raise
     except Exception as e:
         msg.addMessage('Error', str(e))
         raise