Beispiel #1
0
    def shopping_cart_get(id, **kwargs):

        auth_header = request.headers.get('Authorization')
        if not auth_header:
            abort(make_response(jsonify(message="Bad Request."), 400))

        access_token = auth_header.split(" ")[1]

        if access_token:
            user_id = User.decode_token(access_token)
            if not isinstance(user_id, str):
                cart = Cart.get_one(user_id, id)
                if not cart:
                    # Raise an HTTPException with a 404 not found status code
                    abort(
                        make_response(jsonify(message="Cart not found."), 404))

                if request.method == "GET":
                    # GET
                    response = {'message': 'Request success.'}
                    results = {
                        'id': cart.id,
                        'date_created': cart.date_created,
                        'date_modified': cart.date_modified,
                        'created_by': cart.created_by,
                        'country_iso2': cart.country_iso2,
                        'status_id': cart.status_id,
                        'items': []
                    }
                    for item in cart.item_carts:
                        icart = {
                            'id': item.id,
                            'cart_id': item.cart_id,
                            'item_id': item.item_id,
                            'item_name': item.item_name,
                            'item_price': item.item_price,
                            'amount': item.amount,
                        }
                        results['items'].append(icart)
                    response['data'] = results
                    return make_response(jsonify(response)), 200
            else:
                # user is not legit, so the payload is an error message
                message = user_id
                response = {'message': message}
                return make_response(jsonify(response)), 401