feat: pagamento

This commit is contained in:
2024-12-20 16:47:45 -03:00
parent 859393406d
commit 2bb17b6e77
16 changed files with 153 additions and 9 deletions

View File

@@ -1,7 +1,9 @@
from django.shortcuts import render, redirect
from django.shortcuts import render, redirect, HttpResponse
from comandas.models import Comanda, ProductComanda
from products.models import Product
from payments.models import Payments
from typePay.models import TypePay
def listProduct(request, comanda_id):
@@ -29,9 +31,30 @@ def removeProductComanda(request, productComanda_id):
return render(request, "htmx_components/htmx_list_products_in_comanda.html",{'consumo': consumo, 'total': total})
def closeComanda(request, comanda_id):
# id = request.POST.get('id-comanda')
# comanda_id = int(id)
comanda = Comanda.objects.get(id=comanda_id)
comanda.status = "PAYING"
comanda.save()
return redirect('comandas')
# return redirect('back')
def reopenComanda(request, comanda_id):
comanda = Comanda.objects.get(id=comanda_id)
if comanda.status == 'CLOSED':
pass
else:
comanda.status = "OPEN"
comanda.save()
# return redirect('back')
def paymentComanda(request, comanda_id):
typePayment = TypePay.objects.get(id=1)
consumo = ProductComanda.objects.filter(comanda=comanda_id)
comanda = Comanda.objects.get(id=comanda_id)
total = 0
for produto in consumo:
total += produto.product.price
pagamento = Payments(value=total, comanda=comanda, type_pay=typePayment,description='tipo de pagamento mokado')
pagamento.save()
comanda.status = 'CLOSED'
comanda.save()
return redirect('comandas')

View File

@@ -27,23 +27,34 @@ Detalhes {{comanda.name}}
{% endif %}
>Adicionar Produto</button>
<button id="pagarComanda" hx-get="{% url 'closeComanda' comanda.id %} " hx-trigger="click"
<button id="pagarComanda" hx-get="{% url 'closeComanda' comanda.id %} " hx-trigger="click" hx-swap="none" onclick="imprimirConta()"
{% if comanda.status != 'OPEN' %}
style="display: none;"
{% endif %}
>Fechar Comanda</button>
<button id="pagarComanda"
<button id="pagarComanda" onclick="modal_payment_comanda()"
{% if comanda.status != 'PAYING' %}
style="display: none;"
{% endif %}
>Receber</button>
<button class="button" id="imprimirFichas" onclick="imprimirFichas()">Imprimir Fichas</button>
<button class="button" id="imprimirFichas"
{% if comanda.status != 'OPEN'%}
style="display: none;"
{% endif %}
onclick="imprimirFichas()">Imprimir Fichas</button>
<button class="button" id="imprimirFichas" hx-get="{% url 'reopenComanda' comanda.id %} " hx-trigger="click" hx-swap="none" onclick="reloadPage()"
{% if comanda.status == 'OPEN'%}
style="display: none;"
{% elif comanda.status == 'CLOSED' %}
style="display: none;"
{% endif %}
>Reabrir</button>
</div>
<!-- <p>{{comanda.id}}</p> -->
<div>
<span>Nome: {{comanda.name}} | </span>
<span>Mesa: {{comanda.mesa}}</span>
@@ -63,7 +74,11 @@ Detalhes {{comanda.name}}
<tr>
<td>{{item.product.name}}</td>
<td>R$ {{item.product.price}}</td>
<td><button hx-get="{% url 'removeProductComanda' item.id %} " hx-trigger="click" hx-target="#list-products-comanda" onclick="open_remove_product_comanda()">🗑️ Excluir</button></td>
<td><button
{% if comanda.status != 'OPEN'%}
disabled
{% endif %}
hx-get="{% url 'removeProductComanda' item.id %} " hx-trigger="click" hx-target="#list-products-comanda" onclick="open_remove_product_comanda()">🗑️ Excluir</button></td>
</tr>
@@ -124,6 +139,24 @@ Detalhes {{comanda.name}}
</article>
</dialog>
<dialog id="payment-comanda" style="display: none;" >
<article>
<h2>Receber</h2>
<h1>R$ {{ total }}</h1>
<p>
</p>
<ul>
</ul>
<footer>
<button class="secondary" hx-get="{% url 'paymentComanda' comanda.id %} " hx-trigger="click" hx-swap="none" onclick="backPage()">
Comfimar
</button>
<button onclick="close_modal_payment_comanda()" >Cancelar</button>
</footer>
</article>
</dialog>
<script src="{% static 'comandas/js/viewcomanda.js' %}"></script>

View File

@@ -20,6 +20,8 @@ htmx_urlpatterns = [
path('addProduct<int:product_id>/<int:comanda_id>/', htmx_views.addProduct, name='addProduct'),
path('removeProductComanda<int:productComanda_id>/', htmx_views.removeProductComanda, name='removeProductComanda'),
path('closeComanda<int:comanda_id>/', htmx_views.closeComanda, name='closeComanda'),
path('reopenComanda<int:comanda_id>/', htmx_views.reopenComanda, name='reopenComanda'),
path('paymentComanda<int:comanda_id>/', htmx_views.paymentComanda, name='paymentComanda'),
]
urlpatterns += htmx_urlpatterns