Componentes: Daniel Giraldi Michels, Davi Giraldi Michels, João Gabriel Müller Wielewski, Gabriel Negretti
Objetivos: O sistema é focado para auxiliar e automatizar processos administrativos de uma empresa de venda de roupas (brechó)
Metodologia de desenvolvimento: o código foi fundamentados com conceitos aprendidos em sala de aula, como recurso principal a orientação a objetos em python.
import time
# -------------------------------------------------
class Produtos:
id = 0
produto = None
cor = None
preco = None
marca = None
fornecedor = None
genero = None
tamanho = None
dataEntrada = None
estoque = []
def __init__(self, produto, cor, preco, marca, fornecedor, genero, tamanho):
self.id = Produtos.id
Produtos.id += 1
self.produto = produto
self.cor = cor
self.preco = preco
self.marca = marca
self.fornecedor = fornecedor
self.genero = genero
self.tamanho = tamanho
self.dataEntrada = time.time()
Produtos.estoque.append(self)
@staticmethod
def getProdutos():
if Produtos.estoque:
for p in Produtos.estoque:
print(f"Id: {p.id}")
print(f"Produto: {p.produto}")
print(f"cor: {p.cor}")
print(f"Preco: {p.preco}")
print(f"Marca: {p.marca}")
print(f"Fornecedor: {p.fornecedor}")
print(f"Genero: {p.genero}")
print(f"Tamanho: {p.tamanho}")
print("------------------------------------------")
else:
print("Estoque vazio!!")
@staticmethod
def getProdutoById(id):
if Produtos.estoque:
flag = False
for p in Produtos.estoque:
if p.id == id:
flag = True
print(f"Id: {p.id}")
print(f"Produto: {p.produto}")
print(f"cor: {p.cor}")
print(f"Preco: {p.preco}")
print(f"Marca: {p.marca}")
print(f"Fornecedor: {p.fornecedor}")
print(f"Genero: {p.genero}")
print(f"Tamanho: {p.tamanho}")
print("------------------------------------------")
if not flag:
print("Produto nao encontrado!!")
else:
print("Estoque vazio!!")
@staticmethod
def editProduto(id, produto, cor, preco, marca, fornecedor, genero, tamanho):
for p in Produtos.estoque:
if p.id == id:
if produto != "":
p.produto = produto
if cor != "":
p.cor = cor
if preco != "":
p.preco = float(preco)
if marca != "":
p.marca = marca
if fornecedor != "":
p.fornecedor = fornecedor
if genero != "":
p.genero = genero
if tamanho != "":
p.tamanho = tamanho
print("Produto editado com sucesso")
@staticmethod
def checkId():
while True:
id = int(input("Digite o id do produto: "))
for p in Produtos.estoque:
if p.id == id:
print("----------------------------------------------")
print("Id encontrado")
print("----------------------------------------------")
return id
print("Id não encontrado!!")
@staticmethod
def delProdutoById(id):
for p in Produtos.estoque:
if p.id == id:
Produtos.estoque.remove(p)
break
# -------------------------------------------------
class Admin:
contas = []
username = None
password = None
def __init__(self, username="admin", password="123"):
self.username = username
self.password = password
Admin.contas.append(self)
@staticmethod
def login():
while True:
username = input("Digite o username: ")
password = input("Digite a senha: ")
for i in Admin.contas:
if i.username == username and i.password == password:
print("------------------------------------------")
print("Login realizado com sucesso")
print("------------------------------------------")
return
print("Usuario ou senha incorreto!!")
# -------------------------------------------------
class Pedidos:
id = 0
nomeCliente = None
pedido = []
total = 0
def __init__(self):
self.id = Pedidos.id
Pedidos.id += 1
self.pedido.append([self.id, Carrinho.carrinho, Carrinho.total])
Carrinho.carrinho = []
Carrinho.total = 0
@staticmethod
def checkIdPedido():
while True:
id = int(input("Digite o id do produto: "))
for p in Pedidos.pedido:
if p[0] == id:
print("----------------------------------------------")
print("Id do pedido encontrado")
print("----------------------------------------------")
return id
print("----------------------------------------------")
print("Id do pedido não encontrado!!")
print("----------------------------------------------")
@staticmethod
def getPedidos():
if Pedidos.pedido:
for j in Pedidos.pedido:
print("------------------------------------------")
print(f"Id do Pedido: {j[0]}")
print("------------------------------------------")
for p in j[1]:
print(f"Id: {p.id}")
print(f"Produto: {p.produto}")
print(f"cor: {p.cor}")
print(f"Preco: {p.preco}")
print(f"Marca: {p.marca}")
print(f"Fornecedor: {p.fornecedor}")
print(f"Genero: {p.genero}")
print(f"Tamanho: {p.tamanho}")
print("------------------------------------------")
print(f"Valor total = {j[2]} R$")
print("------------------------------------------")
return True
else:
print("----------------------------------------------")
print("Lista de pedidos vazia!!")
print("----------------------------------------------")
return False
@staticmethod
def finishPedido(id):
for p in Pedidos.pedido:
if p[0] == id:
for j in p[1]:
Produtos.delProdutoById(j.id)
Pedidos.pedido.remove(p)
break
# -------------------------------------------------
class Carrinho:
carrinho = []
total = 0
@staticmethod
def addItemById(id):
for i in Produtos.estoque:
if i.id == id:
Carrinho.carrinho.append(i)
Carrinho.total += float(i.preco)
@staticmethod
def delItem(id):
for p in Carrinho.carrinho:
if p.id == id:
Carrinho.total -= p.preco
Carrinho.carrinho.remove(p)
break
@staticmethod
def checkProduto(id):
for p in Carrinho.carrinho:
if p.id == id:
return True
return False
@staticmethod
def showCarrinho():
if Carrinho.carrinho:
for p in Carrinho.carrinho:
print(f"Id: {p.id}")
print(f"Produto: {p.produto}")
print(f"cor: {p.cor}")
print(f"Preco: {p.preco}")
print(f"Marca: {p.marca}")
print(f"Fornecedor: {p.fornecedor}")
print(f"Genero: {p.genero}")
print(f"Tamanho: {p.tamanho}")
print("------------------------------------------")
print(f"Valor total = {Carrinho.total:.2f} R$")
print("------------------------------------------")
else:
print("----------------------------------------------")
print("Carrinho vazio!!")
print("----------------------------------------------")
#########################################################################################################################
#########################################################################################################################
#import
Admin()
produtos_exemplo = [
("Camiseta", "Azul", 29.99, "Nike", "Distribuidora Alpha", "Masculino", "M"),
("Calça Jeans", "Preto", 89.90, "Levis", "Fornecedor Beta", "Unissex", "42"),
("Tênis Esportivo", "Branco", 199.99, "Adidas", "Distribuidora Delta", "Feminino", "39"),
("Jaqueta", "Vermelho", 159.50, "Columbia", "Fornecedor Gama", "Masculino", "G"),
("Boné", "Cinza", 49.90, "Puma", "Distribuidora Omega", "Unissex", "Único")
]
# Criando objetos da classe Produtos
for item in produtos_exemplo:
Produtos(item[0], item[1], item[2], item[3], item[4], item[5], item[6])
while True:
print("--Sistema Brechó")
print("1 - Admin")
print("2 - Cliente")
print("0 - Finalizar")
x = input(": ")
print("")
print("")
if x == "1": # Sistema Admin
Admin.login()
while True:
print("\n")
print("1 - Adicionar Produto")
print("2 - Editar Produto")
print("3 - Deletar Produto")
print("4 - Listar produtos")
print("5 - Listar pedidos")
print("6 - Finalizar Pedido")
print("0 - Sair")
s = input(": ")
print("\n")
if s == "0":
break
elif s == "1": # Adicionar Produto
produto = input("Produto: ")
cor = input("Cor: ")
preco = float(input("Preco: "))
marca = input("Marca: ")
fornecedor = input("Fornecedor: ")
genero = input("Genero: ")
tamanho = input("Tamanho: ")
item = Produtos(produto, cor, preco, marca, fornecedor, genero, tamanho)
elif s == "2": # Editar Produto
Produtos.getProdutos()
id = Produtos.checkId()
print("clique enter se nao quiser editar o item: ")
produto = input("Produto: ")
cor = input("Cor: ")
preco = input("Preco: ")
marca = input("Marca: ")
fornecedor = input("Fornecedor: ")
genero = input("Genero: ")
tamanho = input("Tamanho: ")
Produtos.editProduto(id, produto, cor, preco, marca, fornecedor, genero, tamanho)
elif s == "3": # Deletar Produto
Produtos.getProdutos()
id = Produtos.checkId()
Produtos.delProdutoById(id)
elif s == "4": # Listar Produtos
Produtos.getProdutos()
elif s == "5": #listar pedidos
Pedidos.getPedidos()
elif s == "6": #finalizar pedido
if Pedidos.getPedidos():
id = Pedidos.checkIdPedido()
Pedidos.finishPedido(id)
print("----------------------------------------------")
print("Pedido finalizado com sucesso")
print("----------------------------------------------")
elif x == "2": # Sistema Cliente
while True:
print("\n")
print("1 - Listar Produtos")
print("2 - Adicionar produto no carrinho")
print("3 - Deletar Produto do carrinho")
print("4 - Ver carrinho")
print("5 - Finalizar Pedido")
print("0 - Sair")
s = input(": ")
print("\n")
if s == "0":
break
elif s == "1": # listar produtos
Produtos.getProdutos()
elif s == "2":
Produtos.getProdutos()
id = Produtos.checkId()
if Carrinho.checkProduto(id):
print("----------------------------------------------")
print("Produto já está no carrinho")
print("----------------------------------------------")
else:
Carrinho.addItemById(id)
print("----------------------------------------------")
print("Item adicionado no carrinho com sucesso!!")
print("----------------------------------------------")
elif s == "3":
Carrinho.showCarrinho()
id = int(input("Digite o id do produto: "))
if Carrinho.checkProduto(id):
Carrinho.delItem(id)
else:
print("----------------------------------------------")
print("Produto nao encontrado")
print("----------------------------------------------")
elif s == "4":
Carrinho.showCarrinho()
elif s == "5":
Pedidos()
print("----------------------------------------------")
print("Pedido enviado com sucesso!!")
print("----------------------------------------------")