diff --git a/gestaoRaul/db.sqlite3 b/gestaoRaul/db.sqlite3 index 0d40822..7321690 100644 Binary files a/gestaoRaul/db.sqlite3 and b/gestaoRaul/db.sqlite3 differ diff --git a/gestaoRaul/products/__pycache__/urls.cpython-312.pyc b/gestaoRaul/products/__pycache__/urls.cpython-312.pyc index 065ea79..d068639 100644 Binary files a/gestaoRaul/products/__pycache__/urls.cpython-312.pyc and b/gestaoRaul/products/__pycache__/urls.cpython-312.pyc differ diff --git a/gestaoRaul/products/__pycache__/views.cpython-312.pyc b/gestaoRaul/products/__pycache__/views.cpython-312.pyc index 8178fd8..773533e 100644 Binary files a/gestaoRaul/products/__pycache__/views.cpython-312.pyc and b/gestaoRaul/products/__pycache__/views.cpython-312.pyc differ diff --git a/gestaoRaul/products/urls.py b/gestaoRaul/products/urls.py index 21fccfc..1c24312 100644 --- a/gestaoRaul/products/urls.py +++ b/gestaoRaul/products/urls.py @@ -8,5 +8,7 @@ urlpatterns = [ path('onOffproduct', views.onOffProduct, name='onOffproduct'), path('searchProduct', views.searchProduct, name='searchProduct'), path('editProduct//', views.editProduct, name='editProduct'), + path('createJson', views.createJson, name='createJson'), + ] diff --git a/gestaoRaul/products/views.py b/gestaoRaul/products/views.py index c9928e4..1f0b3d5 100644 --- a/gestaoRaul/products/views.py +++ b/gestaoRaul/products/views.py @@ -1,4 +1,7 @@ from django.shortcuts import render, redirect +from django.http import HttpResponse +import json +from django.db.models import Q from categories.models import Categories from products.models import Product @@ -60,3 +63,26 @@ def editProduct(request, productId): product = '' products = Product.objects.filter(name__icontains=product) return render(request, "htmx_components/products/htmx_search_products.html", {"products": products}) + +def createJson(request): + products = Product.objects.filter(active=True).exclude( + category__name__in=['insumos', 'Cervejas', 'pratos'] + ) + product_list = [] + for product in products: + product_data = { + "id": product.id, + "name": product.name, + "description": product.description or "", + "price": float(product.price), + "category": product.category.name if product.category else "", + "image": str(product.image) if product.image else f"https://placehold.co/400x250/efc7b8/49291c?text={product.name.replace(' ', '+')}" + } + product_list.append(product_data) + + # Retorna como JSON em texto simples + return HttpResponse( + json.dumps(product_list, indent=4, ensure_ascii=False), + content_type="application/json; charset=utf-8" + ) +