Created
November 7, 2019 18:38
-
-
Save thaisviana/d22fc8b3bb233940b9784bf1e6c3a59c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from collections import defaultdict | |
class Produto: | |
def __init__(self, preco, quantidade, descricao, foto, fornecedor): | |
preco = self.preco | |
quantidade = self.quantidade | |
fornecedor = self.fornecedor | |
class Carrinho: | |
def __init__(self, produtos): | |
produtos = self.produtos | |
voucher = 0.0 | |
frete = 0.0 | |
def adicionar_produto(self, novo_produto): | |
self.produtos.append(novo_produto) | |
pass | |
def update_produto(self, produto_modificado): | |
index = self.produtos.indexOf(produto_modificado) | |
original = self.produtos[index] | |
if produto_modificado.quantidade == 0: | |
self.remover_produto(original) | |
else: | |
original = produto_modificado | |
def calcula_total(self): | |
preco_total = sum([produto.preco * produto.quantidade for produto in self.produtos]) | |
return preco_total - self.voucher + self.frete | |
def calcula_total_fornecedor(lista_produtos_fornecedor): | |
preco_total = sum([produto.preco * produto.quantidade for produto in lista_produtos_fornecedor]) | |
return preco_total | |
def separar_valores_por_fornecedor(self): | |
fornecedores = set([produto.fornecedor for produto in self.produtos]) | |
total_fornecedores = defaultdict(int) | |
for fornecedor in fornecedores: | |
total_fornecedores[fornecedor.id] = Carrinho.calcula_total_fornecedor(fornecedor.produtos_do_carrinho) | |
return total_fornecedores | |
def remover_produto(self, novo_produto): | |
# Carrinho.exists() | |
# self.produtos.remove(novo_produto) | |
pass |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment