Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
178 changes: 178 additions & 0 deletions Mapa mundo.drawio

Large diffs are not rendered by default.

55 changes: 0 additions & 55 deletions Meseros.py

This file was deleted.

1 change: 0 additions & 1 deletion Modelo del mundo

This file was deleted.

5 changes: 2 additions & 3 deletions Proyecto/Clases/Meseros.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import random
class Inscripcion:
@staticmethod
def inscribir_mesero():
nombre = input("Ingrese el nombre del mesero: ")
id_mesero = int(input("Ingrese el ID del mesero: "))
Expand All @@ -13,7 +12,7 @@ def __init__(self, menu, mesero) -> None:
self.menu = menu
self.pedidos = []
self.mesero = mesero
def agregar_pedido(self, elemento, cantidad):
def agregar_pedido(self, elemento, cantidad,mesero):
self.mesero=str(input("Ingrese el nombre del mesero que atendio: "))
if elemento in self.menu:
total_elemento = self.menu[elemento] * cantidad
Expand All @@ -26,4 +25,4 @@ def mostrar_cuenta(self):
print(f"Elemento: {pedido['elemento']}")
print(f"Cantidad pedida: {pedido['cantidad']}")
print(f"Total: {pedido['total']}")
print(f"Mesero: {pedido['mesero']}")
print(f"Mesero: {pedido['mesero']}")
22 changes: 22 additions & 0 deletions Proyecto/Clases/Venta.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import Meseros
class AnalizadorVentas:
def __init__(self, cuentas=None) -> None:
self.meseros_ventas = {}
if cuentas is not None:
for cuenta in cuentas:
for pedido in cuenta.pedidos:
mesero = pedido['mesero']
total_venta = pedido['total']
self.agregar_venta(mesero, total_venta)

def agregar_venta(self, mesero, total_venta):
if mesero in self.meseros_ventas:
self.meseros_ventas[mesero] += total_venta
else:
self.meseros_ventas[mesero] = total_venta

def mostrar_ventas(self):
print("Ventas por mesero:")
for mesero, total_venta in self.meseros_ventas.items():
print(f"{mesero}: ${total_venta}")

Binary file modified Proyecto/Clases/__pycache__/Mesas.cpython-310.pyc
Binary file not shown.
Binary file modified Proyecto/Clases/__pycache__/Meseros.cpython-310.pyc
Binary file not shown.
Binary file added Proyecto/Clases/__pycache__/Venta.cpython-310.pyc
Binary file not shown.
11 changes: 8 additions & 3 deletions Proyecto/Clases/app.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Meseros
import Mesas
import Venta
inscribir_mesero = input("¿Desea inscribir a un mesero? (Si/No): ")
mesero = None
if inscribir_mesero.lower() == "si":
Expand All @@ -18,13 +19,17 @@
print("Mesero inscrito:", mesero)
menu = {"Perro": 10.000, "Sancocho": 15.000, "Frijoles": 15.000, "Casuela": 22.000, "Salchipapa": 12.000}
cuenta = Meseros.Cuenta(menu, Meseros.Meserosquesetienen.meseros)
analizador_ventas = Venta.AnalizadorVentas()
cuenta = Meseros.Cuenta(menu, "Nombre del mesero")
while True:
print(menu)
elemento_pedido = input("Ingrese qué comió el cliente (o escriba 'fin' para terminar): ")
if elemento_pedido.lower() == "fin" or elemento_pedido.lower() == "Fin":
if elemento_pedido.lower() == "fin":
break
cantidad_pedida = int(input(f"Ingrese cuántas veces se pidió '{elemento_pedido}': "))
print(Meseros.Meserosquesetienen.meseros)
mesero = input("Ingrese el nombre del mesero que atendió: ")

cuenta.agregar_pedido(elemento_pedido, cantidad_pedida, mesero)
cuenta.mostrar_cuenta()
analizador_ventas.agregar_venta(mesero, menu[elemento_pedido] * cantidad_pedida)
cuenta.mostrar_cuenta()
analizador_ventas.mostrar_ventas()
20 changes: 20 additions & 0 deletions Proyecto/Proyecto/Clases/Capacidad.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import Mesas
class CapacidadRestaurante:
def __init__(self,capacidad,mesas_2:int,mesas_4) -> None:
self.capacidad:int=capacidad
self.mesas_2=mesas_2
self.mesas_4=mesas_4

def capacidadre(self):
for self.capacidad in Mesas:
if Mesas.Mesa.generar_mesas>30:
self.mesas_2=int(input("Cuantas son de dos personas: "))
for self.mesas_2 in range(self.mesas_2):
self.mesas_2+=2
self.mesas_4=int(input("Ingrese el numero de mesas de cuatro personas: "))
for self.mesas_4 in range(self.mesas_4):
self.mesas_4+=4
return print("La cantidad de mesas de dos personas para mesas de dos es de: ",self.mesas_2),print("La cantidad de personas para mesas de cuatro es de: ",self.mesas_4)
def capacidad_total(self):
self.capacidat= self.mesas_2 + self.mesas_4
return print("La capacidad total es de: ",self.capacidat)
12 changes: 12 additions & 0 deletions Proyecto/Proyecto/Clases/Mesas.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
class Mesa:
def __init__(self, cantidad_mesas: int) -> None:
self.mesas = list(range(1, cantidad_mesas + 1))
def generar_mesas(self):
print("Mesas disponibles:", self.mesas)
def asignar_mesa(self, num_mesa):
if num_mesa in self.mesas:
self.mesas.remove(num_mesa)
print(f"La mesa {num_mesa} ha sido asignada.")
else:
print(f"La mesa {num_mesa} no está disponible.")

28 changes: 28 additions & 0 deletions Proyecto/Proyecto/Clases/Meseros.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import random
class Inscripcion:
def inscribir_mesero():
nombre = input("Ingrese el nombre del mesero: ")
id_mesero = int(input("Ingrese el ID del mesero: "))
clave = random.randrange(0, 11)
return {"nombre": nombre, "id": id_mesero, "clave": clave}
class Meserosquesetienen:
meseros = [{"Juan": 516103215}, {"Carlos": 2135456654}, {"Pedro": 651564684}].append(Inscripcion.inscribir_mesero)
class Cuenta:
def __init__(self, menu, mesero) -> None:
self.menu = menu
self.pedidos = []
self.mesero = mesero
def agregar_pedido(self, elemento, cantidad,mesero):
self.mesero=str(input("Ingrese el nombre del mesero que atendio: "))
if elemento in self.menu:
total_elemento = self.menu[elemento] * cantidad
self.pedidos.append({"elemento": elemento, "cantidad": cantidad, "total": total_elemento, "mesero": self.mesero})
else:
print(f"El elemento '{elemento}' no está en el menú.")
def mostrar_cuenta(self):
print("Cuenta:")
for pedido in self.pedidos:
print(f"Elemento: {pedido['elemento']}")
print(f"Cantidad pedida: {pedido['cantidad']}")
print(f"Total: {pedido['total']}")
print(f"Mesero: {pedido['mesero']}")
13 changes: 13 additions & 0 deletions Proyecto/Proyecto/Clases/Quejas.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import Mesas
class Qjas:
def __init__(self,quejas:str,queja:str,queja_mesa) -> None:
self.quejas=quejas
self.queja=queja
self.queja_mesa=queja_mesa
def ing_quejas(self):
for self.quejas in Mesas:
if self.quejas == "Si" or "si":
self.queja=str(input("Ingrese la queja: "))
self.queja_mesa=int(input("Ingrese la mesa que se quejo"))
return self.queja,self.queja_mesa

22 changes: 22 additions & 0 deletions Proyecto/Proyecto/Clases/Venta.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import Meseros
class AnalizadorVentas:
def __init__(self, cuentas=None) -> None:
self.meseros_ventas = {}
if cuentas is not None:
for cuenta in cuentas:
for pedido in cuenta.pedidos:
mesero = pedido['mesero']
total_venta = pedido['total']
self.agregar_venta(mesero, total_venta)

def agregar_venta(self, mesero, total_venta):
if mesero in self.meseros_ventas:
self.meseros_ventas[mesero] += total_venta
else:
self.meseros_ventas[mesero] = total_venta

def mostrar_ventas(self):
print("Ventas por mesero:")
for mesero, total_venta in self.meseros_ventas.items():
print(f"{mesero}: ${total_venta}")

46 changes: 46 additions & 0 deletions Proyecto/Proyecto/Clases/app.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
import Meseros
import Mesas
import Venta
import Capacidad
import Quejas
#Inscripcion de mesero
inscribir_mesero = input("¿Desea inscribir a un mesero? (Si/No): ")
mesero = None
if inscribir_mesero.lower() == "si":
mesero = Meseros.Inscripcion.inscribir_mesero()
#Asignacion de mesas
asignar_mesas = input("¿Desea asignar mesas? (Si/No): ")
if asignar_mesas.lower() == "si":
num_mesas = int(input("Ingrese el número de mesas del restaurante: "))
restaurante = Mesas.Mesa(num_mesas)
restaurante.generar_mesas()
while True:
num_mesa = int(input("Ingrese el número de mesa que desea asignar: "))
restaurante.asignar_mesa(num_mesa)
continuar = input("¿Desea asignar otra mesa? (Si/No): ")
if continuar.lower() != "si":
break
print("Mesero inscrito:", mesero)
#Capacidad del restaurante
print(Capacidad.CapacidadRestaurante.capacidad_total)
#Cuenta
menu = {"Perro": 10.000, "Sancocho": 15.000, "Frijoles": 15.000, "Casuela": 22.000, "Salchipapa": 12.000}
cuenta = Meseros.Cuenta(menu, Meseros.Meserosquesetienen.meseros)
analizador_ventas = Venta.AnalizadorVentas()
cuenta = Meseros.Cuenta(menu, "Nombre del mesero")
while True:
print(menu)
elemento_pedido = input("Ingrese qué comió el cliente (o escriba 'fin' para terminar): ")
if elemento_pedido.lower() == "fin":
break
cantidad_pedida = int(input(f"Ingrese cuántas veces se pidió '{elemento_pedido}': "))
print(Meseros.Meserosquesetienen.meseros)
mesero = input("Ingrese el nombre del mesero que atendió: ")
cuenta.agregar_pedido(elemento_pedido, cantidad_pedida, mesero)
analizador_ventas.agregar_venta(mesero, menu[elemento_pedido] * cantidad_pedida)
cuenta.mostrar_cuenta()
analizador_ventas.mostrar_ventas()
#Quejas
quejas=str(input("Desea ingresar una queja(Si/No): "))
if quejas=="Si" or "si":
Quejas.Qjas.ing_quejas()
29 changes: 29 additions & 0 deletions Proyecto/Proyecto/Exepciones/Exepciones.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import random
import Clases
import Clases.Capacidad
import Clases.Mesas

#Capacidad
try:
def capacidadre(self):
for self.capacidad in Clases.Mesas:
if Clases.Mesas.Mesa.generar_mesas>30:
self.mesas_2=int(input("Cuantas son de dos personas: "))
for self.mesas_2 in range(self.mesas_2):
self.mesas_2+=2
self.mesas_4=int(input("Ingrese el numero de mesas de cuatro personas: "))
for self.mesas_4 in range(self.mesas_4):
self.mesas_4+=4
return print("La cantidad de mesas de dos personas para mesas de dos es de: ",self.mesas_2),print("La cantidad de personas para mesas de cuatro es de: ",self.mesas_4)
except:
print("Error ingrese un numero")
#Meseros
try:
def inscribir_mesero():
nombre = input("Ingrese el nombre del mesero: ")
id_mesero = int(input("Ingrese el ID del mesero: "))
clave = random.randrange(0, 11)
return {"nombre": nombre, "id": id_mesero, "clave": clave}
except:
print("Ingrese un nombre valido")
print("Ingrese un id del mesro valido")