mirror of
https://github.com/welton89/RRBEC.git
synced 2026-04-05 13:35:42 +00:00
61 lines
2.0 KiB
Python
61 lines
2.0 KiB
Python
from django.shortcuts import render, redirect
|
|
from django.db.models import Count, F
|
|
|
|
from comandas.models import Comanda, ProductComanda
|
|
from products.models import Product
|
|
from mesas.models import Mesa
|
|
from gestaoRaul.decorators import group_required
|
|
|
|
|
|
@group_required(groupName='Garçom')
|
|
def comandas(request):
|
|
comandas = Comanda.objects.filter(status__in=["OPEN", "PAYING"])
|
|
mesas = Mesa.objects.all()
|
|
return render(request, 'comandas.html', {'comandas': comandas, 'mesas': mesas})
|
|
|
|
|
|
@group_required(groupName='Garçom')
|
|
def viewComanda(request):
|
|
id = request.GET.get('parametro')
|
|
comanda_id = int(id)
|
|
comanda = Comanda.objects.get(id=comanda_id)
|
|
consumo = ProductComanda.objects.filter(comanda=comanda_id)
|
|
mesas = Mesa.objects.all()
|
|
|
|
produtos_mais_vendidos = list(ProductComanda.objects.values('product').annotate(
|
|
quantidade=Count('product'),
|
|
nome=F('product__name') ).order_by('-quantidade'))
|
|
|
|
products = Product.objects.all()
|
|
products_ordenados = []
|
|
for produto in produtos_mais_vendidos:
|
|
for p in products:
|
|
if p.name == produto['nome'] and p.active == True:
|
|
products_ordenados.append(p)
|
|
total = 0
|
|
for produto in consumo:
|
|
total += produto.product.price
|
|
|
|
return render(request, 'viewcomanda.html', {'comanda': comanda, 'consumo': consumo, 'total': total, 'products': products_ordenados,'mesas':mesas})
|
|
|
|
|
|
@group_required(groupName='Garçom')
|
|
def createComanda(request):
|
|
name = request.POST.get('name-comanda')
|
|
mesa_id = int(request.POST.get('select-mesa'))
|
|
mesa = Mesa.objects.get(id=mesa_id)
|
|
comanda = Comanda(name=name, mesa=mesa, user=request.user)
|
|
comanda.save()
|
|
return redirect('comandas')
|
|
|
|
@group_required(groupName='Garçom')
|
|
def editComanda(request):
|
|
name = request.POST.get('nameComanda')
|
|
comanda = Comanda.objects.get(id=int(request.POST.get('h-comandaId')))
|
|
mesa = Mesa.objects.get(id=int(request.POST.get('select-mesa')))
|
|
comanda.mesa = mesa
|
|
comanda.name = name
|
|
comanda.save()
|
|
return redirect('comandas')
|
|
|