Пример #1
0
def pag_estoque():
    # Metodos Get e Post para manter o nome do estoque na pagina
    if request.method == "GET":
        estoque_info = request.args.get('info')
    elif request.method == "POST":
        estoque_info = request.form["nome_estoque"]
    estoque = Estoque(estoque_info)
    estoque.criar_tabela()
    # Checando de o Botão " Vendas" foi pressionado
    if "vendas" in request.form:
        return redirect(url_for('pag_vendas',info=estoque.estoque))
    if "relatorios" in request.form:
        return redirect(url_for('pag_relatorios',info=estoque.estoque))
    if "n_estoque" in request.form:
        novo_estoque = request.form["novo_estoque"]
        antigo_estoque = estoque_info
        con = Estoque.alterar_estoque(antigo_estoque,novo_estoque)
        if con:
            estoque = Estoque(novo_estoque)
            li_li_tup = Estoque.gerar_li_li_tup(estoque)
            return render_template('estoque.html', li_li_tup=li_li_tup, estoque=estoque.estoque)
        else:
            li_li_tup = Estoque.gerar_li_li_tup(estoque)
            return render_template('estoque.html', li_li_tup=li_li_tup, estoque=estoque.estoque)

    if request.method == "POST":
        # Checando se o Botão "Atualizar Valores" foi pressionado
        if "atualizar" in request.form:
            # Função para Atualizar a tabela
            w = 0
            for prods in estoque.mostrar_estoque():
                z = str(w)
                prod = Produto(request.form["numero" + z], request.form["nome" + z], request.form["preço" + z],
                            request.form["quantidade" + z], estoque.estoque)
                prod.alterar_produto(prods[0])
                w = w + 1

            # Função para Adicionar novo produto
            prodnovo = Produto(request.form["numeron"], request.form["nomen"], request.form["preçon"],
                            request.form["quantidaden"], estoque.estoque)
            count= int(request.form["numeron"])
            count2=int(request.form["preçon"])
            count3=int(request.form["quantidaden"])
            if (count<0) or (count2<0) or (count3<0):
                flash('Não é permitido números, preços ou quantidades negativas no estoque','warning')
                return redirect(url_for('pag_estoque'))
            else:
                prodnovo.produto_novo()
                flash(f'O produto {request.form["nomen"]} foi adicionado ao estoque.','success')
                return redirect(url_for('pag_estoque'))

        # Função para Deletar um produto do estoque
        else:
            z = 2
            for produto in estoque.mostrar_estoque():
                y = str(z)
                #Se um botao de deletar foi pressionado
                if y in request.form:
                    del_produto = Produto(produto[0], produto[1], produto[2], produto[3], estoque.estoque)
                    del_produto.remover_produto()
                    flash('O produto foi removido','success')
                    return redirect(url_for('pag_estoque',info=estoque_info,li_li_tup=li_li_tup, estoque=estoque.estoque))
                z = z + 1

    li_li_tup = Estoque.gerar_li_li_tup(estoque)
    return render_template('estoque.html', li_li_tup=li_li_tup, estoque=estoque.estoque)
def pag_estoque():
    # Metodos Get e Post para manter o nome do estoque na pagina
    if request.method == "GET":
        estoque_info = request.args.get('info')
    elif request.method == "POST":
        print('é o metodo post')
        estoque_info = request.form["nome_estoque"]
        print("Nome do estoque dento de post :",estoque_info)
    estoque = Estoque(estoque_info)
    print("Nome do estoque :",estoque.estoque)
    estoque.criar_tabela()
    # Checando de o Botão " Vendas" foi pressionado
    if "vendas" in request.form:
        return redirect(url_for('pag_vendas',info=estoque.estoque))
    if "relatorios" in request.form:
        return redirect(url_for('pag_relatorios',info=estoque.estoque))
    if "n_estoque" in request.form:
        novo_estoque = request.form["novo_estoque"]
        antigo_estoque = estoque_info
        con = Estoque.alterar_estoque(antigo_estoque,novo_estoque)
        if con:
            estoque = Estoque(novo_estoque)
            li_li_tup = Estoque.gerar_li_li_tup(estoque)
            flash('O estoque foi renomeado para {}.'.format(str(novo_estoque)), 'success')
            return render_template('estoque.html', li_li_tup=li_li_tup, estoque=estoque.estoque)
        else:
            li_li_tup = Estoque.gerar_li_li_tup(estoque)
            flash('O estoque {} já existe.'.format(str(novo_estoque)),'warning')
            return render_template('estoque.html', li_li_tup=li_li_tup, estoque=estoque.estoque)

    if request.method == "POST":
        # Checando se o Botão "Atualizar Valores" foi pressionado
        if "atualizar" in request.form:
            print("Nome do estoque dentro de 'atualizar' :",estoque.estoque)
            # Função para Atualizar a tabela
            w = 0
            for prods in estoque.mostrar_estoque():
                z = str(w)
                prod = Produto(request.form["numero" + z], request.form["nome" + z], request.form["preço" + z],
                            request.form["quantidade" + z], estoque.estoque)
                erro = prod.alterar_produto(prods[0])
                if bool(erro):
                    flash('Entrada Invalida em Produto Alterado','warning')
                    return redirect(url_for('pag_estoque', info=estoque.estoque))
                w = w + 1

            # Função para Adicionar novo produto
            prodnovo = Produto(request.form["numeron"], request.form["nomen"], request.form["preçon"],
                            request.form["quantidaden"], estoque.estoque)
            erro = prodnovo.produto_novo()
            if erro == 0:
                flash('O produto foi adicionado ao estoque.')
                return redirect(url_for('pag_estoque', info=estoque.estoque))
            elif erro == 1:
                flash('Entrada Invalida em Novo Produto','warning')
                return redirect(url_for('pag_estoque', info=estoque.estoque))

        # Função para Deletar um produto do estoque
        else:
            z = 2
            for produto in estoque.mostrar_estoque():
                y = str(z)
                #Se um botao de deletar foi pressionado
                if y in request.form:
                    del_produto = Produto(produto[0], produto[1], produto[2], produto[3], estoque.estoque)
                    del_produto.remover_produto()
                    flash('O produto foi removido do estoque.')

                z = z + 1

    li_li_tup =Estoque.gerar_li_li_tup(estoque)
    return render_template('estoque.html', li_li_tup=li_li_tup, estoque=estoque.estoque)