Beispiel #1
0
 def delete(self, name):
     item = ItemModel.find(name)
     failed = {"message": "Failed to delete '{}' item.".format(name)}, 500
     try:
         if item:
             item.delete()
     except:
         return failed
     if ItemModel.find(name):
         return failed
     else:
         return {'message': "Item '{}' deleted".format(name)}, 200
Beispiel #2
0
    def delete(self, name):
        item = ItemModel.find(name)
        if item is None:
            return {'message': "No item found"}, 400

        item.delete_in_db()
        return {'message': 'Item <{}> deleted'.format(name)}
Beispiel #3
0
    def get(self, name):
        # next gives the first result found
        item = ItemModel.find(name)
        if item is None:
            return {'message': 'Item not found'}, 404

        return item.json(), 200
Beispiel #4
0
def update_row(data):
    db.init_app(app)
    with app.app_context():
        item = ItemModel.find(data['id'], data['item'])
        if item:
            item.status = "completed"
        try:
            item.save_to_db()
        except Exception as e:
            return {"message": "An error occurred celery task"}, 500
        return item.json()
Beispiel #5
0
    def get(self, args):
        if 'text' in args:
            print('find_text')
            items = ItemModel.find_text(**args)
        else:
            items = ItemModel.find(**args)

        if items:
            itemsJSON = []
            for item in items:
                itemsJSON.append(item.json())
            return {"items": itemsJSON}, 200  # OK
        else:
            return {"message": "Item not found"}, 404  #not found
Beispiel #6
0
    def put(self, name):
        # data = request.get_json()
        data = Item.parser.parse_args()
        # updated_item = ItemModel(name, data['price'])
        # updated_item.insert_or_update()

        item = ItemModel.find(name)
        if item is None:
            item = ItemModel(name, **data)
        else:
            item.price = data['price']
            item.store_id = data['store_id']
        item.insert_or_update()

        return item.json(), 200
Beispiel #7
0
    def post(self, name):
        item = ItemModel.find(name)
        if item:
            return {'message': "An item with name {} exists".format(name)}, 400

        # force=True
        # You do not need content-type header
        # silent=True
        # Doesn't give an error, just returns None
        # data = request.get_json()
        data = Item.parser.parse_args()
        item = ItemModel(name, **data)
        item.insert_or_update()

        return item.json(), 201
Beispiel #8
0
 def post(self, name):
     if ItemModel.find(name):
         return {'message': "Item '{}' already exists".format(name)}, 400
     failed = {"message": "Failed to create '{}' item.".format(name)}, 500
     data = Item.parser.parse_args()
     item = ItemModel(name, **data)
     try:
         if item.save():
             return {
                 'message': "Item '{}' created.".format(name),
                 'item': item.json()
             }, 201
         else:
             return failed
     except:
         return failed
Beispiel #9
0
    def post(self, args):
        if ItemModel.find(strict=True, **args):
            return {
                "message":
                "An item named {} already exists".format(args['name'])
            }, 400
        item = ItemModel(**args)

        item.save_to_db()
        print("avant {} ".format(item.id))
        task = add_ASIN_LINK_AMAZON.delay(item.id)
        print("après")
        return {
            "message":
            "Item {} created successfully Celery Task = {} ".format(
                args['name'], task.task_id)
        }, 201  # created
Beispiel #10
0
    def put(self, name):
        data = Item.parser.parse_args()
        failed = {"message": "Failed to update '{}' item.".format(name)}

        item = ItemModel.find(name)
        try:
            if item:
                item.price = data['price']
                item.store_id = data['store_id']
            else:
                item = ItemModel(name, **data)
            if not item.save():
                return failed
            return {
                'message': "Item '{}' updated ".format(name),
                'item': item.json()
            }, 200
        except:
            return failed
Beispiel #11
0
 def get(self, name):
     item = ItemModel.find(name)
     if item:
         return {'item': item.json()}, 200
     else:
         return {'message': "Item '{}' not found".format(name)}, 404