예제 #1
0
파일: produto.py 프로젝트: zGuil/Pizzou2
def insert_produtos(body):
    produtos = get_produtos()
    for produto in produtos:
        if body["nome"].lower() == produto["nome"].lower():
            return None
    Produto.set(body)
    return "OK"
예제 #2
0
def produtos(request):
    avisos = []
    dono = Dono.objects.filter(idEmpresario=request.user.id)[0]
    produtos = Possui.objects.filter(idSupermercado=dono.idSupermercado)

    if request.method == 'POST' and 'deletar' in request.POST:
        if Produto.objects.filter(idProduto__in=request.POST.getlist('produtosDeletar')).exists():
            Produto.objects.filter(idProduto__in=request.POST.getlist('produtosDeletar')).delete()
        else:
            avisos.append('Nenhum Produto Selecionado')

    if request.method == 'POST' and 'cadastrarProd' in request.POST:
        form = CadastroProd(request.POST)

        if form.is_valid():
            produto = Produto(nome=form.cleaned_data.get('nome'),
                              marca=form.cleaned_data.get('marca'),
                              tipo=request.POST.getlist('tipo'))
            produto.save()
            possui = Possui(idProduto=produto,
                            idSupermercado=dono.idSupermercado,
                            preco=form.cleaned_data.get('preco'),
                            quantidade=form.cleaned_data.get('quantidade'))
            possui.save()
            form = CadastroProd()
            return HttpResponseRedirect('/produtos')
    else:
        form = CadastroProd()

    return render(request, 'produtos.html', {'form': form, 'avisos': avisos,
                                             'produtos': produtos.order_by("idProduto__nome")})
예제 #3
0
def main():
    produto1 = Produto(1, 'Pão francês', 0.35, 80)
    produto2 = Produto(2, 'Pão de batata', -0.80)
    produto3 = Produto(3, 'Rosquinha de canela', 0.80)
    produto4 = Produto(4, 'Rosquinha de Romeu e Julieta', 0.80)

    print(produto3)

    produto1.vendedor = 'Bruno p.'
    produto1.tipo = 'morno'

    produto2.atualizar('Pão potato', 1.20)

    # mudando atributo de classe
    Produto.tipo = 'morno'

    lista_de_produtos = [produto1, produto2, produto3, produto4]
    imprime_produtos(lista_de_produtos)

    nomes_dos_produtos = [produto2.nome, produto1.nome]

    lista_de_produtos, valor_da_venda = VendasHandler.vender(
        lista_de_produtos,
        nomes_dos_produtos
    )

    imprime_produtos(lista_de_produtos)
    print(valor_da_venda)
def test_deve_aceitar_preco_positivo_para_preco_depois_da_construcao():
    result = Produto(1, 'guaraná', 5, 123)
    
    given = 10
    result.atribui_preco(given)
    expected = 10
    
    assert result.preco == expected
예제 #5
0
def main():

    r = Matematica.soma(2, 3)
    print(r)

    produto1 = Produto(1, 'Pão francês', 0.35, 13234, 80)
    produto2 = Produto(2, 'Pão de batata', -0.80, 43215)
    produto3 = Produto(3, 'Rosquinha de canela', 0.80, 654324)

    produto4 = Frio(4, 'Salame', -13, 6543)

    produto5 = Bebidas(5, 'Coca-cola', 5.6, 903543)
    produto6 = Bebidas(6, 'Vinho', -5.6, 987643, 600, True)
    produto8 = Quente(8, 'Dogão', -5.6, 987643, 600)

    produto1.vendedor = 'Bruno p.'
    produto2.atualizar('Pão potato', 1.20)

    cliente = Cliente('Eduardo')
    carrinho = Carrinho(123456, cliente)

    carrinho.incluir_produto(produto1)
    carrinho.incluir_produto(produto2)
    carrinho.incluir_produto(produto3)
    carrinho.incluir_produto(produto4)
    carrinho.incluir_produto(produto5)
    carrinho.incluir_produto(produto6)
    carrinho.incluir_produto(produto8)

    print(carrinho)
예제 #6
0
def criar():
    if request.method == 'POST':
        # Ir buscar dados ao html
        empresa = request.form.get('empresa')
        nome = request.form.get('nome')
        valor = request.form.get('valor')
        descr = request.form.get('descr')

        # FOTO
        foto = str(random.randrange(1, 9223372036854775807))

        if 'files[]' not in request.files:
            flash('No file part')
            return redirect(request.url)

        files = request.files.getlist('files[]')
        fol = app.config['UPLOAD_FOLDER']

        fol += "/" + foto
        os.mkdir(fol)
        temp = 1
        for file in files:
            if file and allowed_file(file.filename):
                filename = str(temp) + "." + "jpg"
                temp += 1
                file.save(os.path.join(fol, filename))
            # -----Foto------
        # Adicionar na bd
        produto = Produto(empresa=empresa, nome=nome, valor=valor, descr=descr, foto=foto)
        db.session.add(produto)
        db.session.commit()
        flash("Produto adicionado", category="success")
        return redirect(url_for('produto.lista'))

    return render_template("produto/criar.html", empresa=Empresa.query.all(), campanha=Campanha.query.all())
예제 #7
0
def novo_produto():
    #Adicionar um novo produto
    form = ProdutoForm(request.form)

    if request.method == 'POST' and form.validate():
        #gravar os dados do novo produto
        produto = Produto()
        save_changes(produto, form, new=True)
        flash(' Novo produto criado com sucesso!')
        return redirect('/')

    return render_template('novo_produto.html', form=form)
예제 #8
0
def main():
    produto1 = Produto(1, 'Pão francês', 0.35, 80)
    produto2 = Produto(1, 'Pão de batata', -0.80)
    produto3 = Produto(1, 'Rosquinha de canela', 0.80)

    produto3.atualizar(produto3.nome, -0.1)
    print(produto1)
    print(produto2)
    print(produto3)

    resultado = produto1 + produto2
    print(resultado)
    print(len(produto1))

    produto3.usando_args('a', 'b', 'c')

    nomes = nomes_dos_produtos(produto1, produto2, produto3)
    print(nomes)
예제 #9
0
def mostraProdutos():
    if (request.method == 'GET'):
        produtos = Produto.query.all()
        print(produtos)
        return render_template('produtos.html', produtos=produtos)
    else:
        desc = request.form['desc']
        preco_custo = request.form['preco_custo']
        preco_venda = request.form['preco_venda']
        print(desc)
        print(preco_custo)
        print(preco_venda)
        prod = Produto(descricao=desc,
                       preco_custo=preco_custo,
                       preco_venda=preco_venda)
        db.session.add(prod)
        db.session.commit()
        return redirect('/produtos')
예제 #10
0
파일: produto.py 프로젝트: zGuil/Pizzou2
def get_produtos():
    produtos = Produto.get()
    lista_produtos = []
    for produto in produtos:
        if produto.descricao != "":
            dic = dict(id=produto.id,
                       nome=produto.nome,
                       preco_atual=produto.preco_atual,
                       qtd=produto.qtd,
                       descricao=produto.descricao)
        else:
            dic = dict(id=produto.id,
                       nome=produto.nome,
                       preco_atual=produto.preco_atual,
                       qtd=produto.qtd,
                       descricao="-")
        lista_produtos.append(dic)
    return lista_produtos
예제 #11
0
def register_product():
    new_prod_form = EnterForm()
    if new_prod_form.validate_on_submit():
        try:
            tipo = new_prod_form.product_type.data.prod_type
            new_prod = Produto(id_produto=new_prod_form.prod_id.data,
                               prod_name=new_prod_form.product_name.data,
                               prod_unit_scale=new_prod_form.product_unit.data,
                               prod_value=new_prod_form.product_price.data,
                               prod_reserve=new_prod_form.product_stock.data,
                               prod_type=tipo)
            db.session.add(new_prod)
            db.session.commit()
            flash('Novo produto registrado com sucesso.')
            return redirect(url_for('index'))

        except:
            flash('Erro quanto ao registro do novo produto.')
            return redirect(url_for('new_prod'))

    return render_template('prod_register.html', form=new_prod_form)
예제 #12
0
def main():
    produto1 = Produto(1, 'Pão francês', 0.35, 13234, 80)
    produto2 = Produto(2, 'Pão de batata', -0.80, 43215)
    produto3 = Produto(3, 'Rosquinha de canela', 0.80, 654324)

    produto4 = Frio(4, 'Salame', -13, 6543)

    produto5 = Bebidas(5, 'Coca-cola', 5.6, 903543)
    produto6 = Bebidas(6, 'Vinho', -5.6, 987643, 600, True)

    print(produto4.tipo)

    produto1.vendedor = 'Bruno p.'

    produto2.atualizar('Pão potato', 1.20)

    pacote1 = Pacote(produto6)

    print(pacote1)

    lista_de_produtos = [
        produto1, produto2, produto3, produto4, produto5, produto6
    ]
    imprime_produtos(lista_de_produtos)
def test_deve_aceitar_preco_positivo():
    given = 10
    result = Produto(1, 'guaraná', given, 123)
    expected = 10
    
    assert result.preco == expected
def test_nao_deve_ter_preco_negativo():
    given = -10
    result = Produto(1, 'guaraná', given, 123)
    expected = 0.01
    
    assert result.preco == expected
예제 #15
0
 def cadastrar_produto(self):
     produtos = {
         'nome': None,
         'peso': None,
         'altura': None,
         'largura': None,
         'quantidade': None,
         'valor': None,
         'descricao': None,
         'categoria': [],
         'subcategoria': []
     }
     categoria_list = []
     subcategoria_list = []
     p = Produto()
     p.set_nome(str(input("Digite o nome do Produto: ")))
     p.set_quantidade(int(input("Digite a quantidade do Produto: ")))
     p.set_altura(int(input("Digite a altura do Produto: ")))
     p.set_largura(int(input("Digite a largura do Produto: ")))
     p.set_peso(int(input("Digite o peso do Produto: ")))
     p.set_valor(float(input("Digite o valor do Produto: ")))
     while p.get_valor() <= 0.0:
         print("\nValor invalido, informe um valor maior que 0")
         p.set_valor(float(input("Digite o valor do Produto: ")))
     p.set_descricao(str(input("Digite a descricao do Produto: ")))
     while len(p.get_descricao()) < 20:
         print("\nInforme uma descricao com no minimo 20 caracteres!")
         p.set_descricao(str(input("Digite a descricao do Produto: ")))
     print('\nCategorias: ')
     for i in range(len(list_categorias)):
         print(f'[{i}]. ' + str(list_categorias[i]['nome']))
     op = int(input('\nSelecione uma opcao: '))
     for y in range(len(list_categorias)):
         if op == y:
             categoria_list.append(list_categorias[y]['nome'])
             menu = True
             while menu:
                 while menu:
                     try:
                         print('''
                         Deseja cadastrar uma subcategoria?
                         [1] - Sim
                         [2] - Nao
                             ''')
                         op = int(input('Selecione uma opcao: '))
                         if op == 1:
                             for c in range(
                                     len(list_categorias[y]
                                         ['subcategoria'])):
                                 print(f'[{c}]. ' + str(
                                     list_categorias[y]['subcategoria'][c]))
                             op = int(input('\nSelecione uma opcao: '))
                             for q in range(
                                     len(list_categorias[y]
                                         ['subcategoria'])):
                                 if op == q:
                                     subcategoria_list.append(
                                         list_categorias[y]['subcategoria']
                                         [q])
                         elif op == 2:
                             break
                     except ValueError:
                         print('Ops! Opcao indisponivel, tente novamente!')
                 try:
                     print('''
                     Deseja cadastrar outra categoria para esse produto?
                     [1] - Sim
                     [2] - Nao
                         ''')
                     op = int(input('Selecione uma opcao: '))
                     if op == 1:
                         for x in range(len(list_categorias)):
                             print(f'[{x}]. ' +
                                   str(list_categorias[x]['nome']))
                         op = int(input('\nSelecione uma opcao: '))
                         for l in range(len(list_categorias)):
                             if op == l:
                                 categoria_list.append(
                                     list_categorias[l]['nome'])
                     elif op == 2:
                         break
                 except ValueError:
                     print('Ops! Opcao indisponivel, tente novamente!')
         produtos['categoria'] = categoria_list
         produtos['subcategoria'] = subcategoria_list
     produtos['nome'] = p.get_nome()
     produtos['peso'] = p.get_peso()
     produtos['altura'] = p.get_altura()
     produtos['largura'] = p.get_largura()
     produtos['quantidade'] = p.get_quantidade()
     produtos['valor'] = p.get_valor()
     produtos['descricao'] = p.get_descricao()
     list_produtos.append(produtos)
예제 #16
0
파일: produto.py 프로젝트: zGuil/Pizzou2
def delete_produto(id):
    #for produto in body:
    Produto.delete(id)
예제 #17
0
파일: produto.py 프로젝트: zGuil/Pizzou2
def update_produto(body):
    Produto.update(body)