Exemplo n.º 1
0
    def post(self):
        result_dict, err_code = handle_request_validation_and_serialisation(
            order_creation_schema)
        if err_code:
            return result_dict, err_code

        if not result_dict['elements']:
            return {
                "message":
                "Cannot create an empty order. The order must have at least one element."
            }, 400

        elements = result_dict['elements']
        result_dict['elements'] = []
        order = OrderModel(**result_dict)

        if not UserModel.find_by_id(order.user_id):
            return {
                "message":
                f"User with id: {order.user_id} does nor exist. "
                f"Cannot create an order for nonexistent user."
            }, 400

        elements = [
            OrderElementModel(**order_element_creation_schema.load(e))
            for e in elements
        ]
        if err_msg := _validate_order_elements(elements):
            return err_msg, 400
Exemplo n.º 2
0
def delete():
    user_id = request.values['userId']
    user = UserModel.find_by_id(user_id)
    if not user:
        return {"message": USER_NOT_FOUND}, 404
    user.delete_from_db()
    return {"message": USER_OP.format("deleted")}, 200
Exemplo n.º 3
0
def show():
     user_id = request.values['userId']

     user = UserModel.find_by_id(user_id)
     if not user:
        return {"message": USER_NOT_FOUND}, 404
     return user.json(), 200
Exemplo n.º 4
0
 def put(self, _id):
     value = self.parser.parse_args()
     users = UserModel.find_by_id(_id)
     if users is not None:
         users.name = value.name
         users.email = value.email
         users.phone = value.phone
         users.password = value.password
         users.save_to_db()
         return users.json()
     return {'msg', 'no user'}, 400
Exemplo n.º 5
0
def identity(payload):
    users_id = payload['identity']
    users = UserModel.find_by_id(users_id)
    request.users = users
    return users
Exemplo n.º 6
0
def identity(payload):
    user_id = payload['identity']
    return UserModel.find_by_id(user_id)
Exemplo n.º 7
0
 def delete(self, _id):
     users = UserModel.find_by_id(_id)
     if users:
         users.delete_from_db()
         return users.json()
     return {"msg": 'No user'}, 400
Exemplo n.º 8
0
 def get(self, _id):
     users = UserModel.find_by_id(_id)
     if users:
         return users.json()
     return {"msg": 'No user'}, 400
Exemplo n.º 9
0
 def identity(self, payload):
     user_id = payload["identity"]
     return UserModel.find_by_id(user_id)
Exemplo n.º 10
0
def identity(payload):  # payload is the contents/body of JWT token
    user_id = payload['identity']
    return UserModel.find_by_id(user_id)