Ejemplo n.º 1
0
def inclui_comissao(comissoes,novo):
    tela = Toplevel()
    tela.title("Gerenciador - Comissões")
    dados = controller.busca("id, nome", "fornecedores","","")
    if (novo > 0) :
            valores_antigos = controller.busca("comissao","comissoes"," WHERE vendedor_id ="+str(novo),"")
    x = 0
    entradas = []
    for dado in dados:
        label = Label(tela, text = dado[1]+": ")
        label.grid(row = x, column = 0, sticky=W)
        comissoes.append([dado[0]])
        valida_num = (tela.register(controller.valida_numero),'%d', '%i', '%P', '%s', '%S', '%v', '%V', '%W')
        entradas.append(Entry(tela,width=20,validate = 'key', validatecommand = valida_num))
        if (novo > 0):
            valor = str(valores_antigos[x][0])
            for index in range(len(valor)):                                 #necessario por causa da validacao do campo 'duracao campanha'
                entradas[x].insert(index, valor[index]) 
        else:
            entradas[x].insert(0,"0")
        entradas[x].grid(row = x, column =1)
        label2= Label(tela, text="%")
        label2.grid(row = x , column = 2, sticky=W)
        x+=1
    botao_limpar = Button(tela,text="Limpar", command=lambda: view.limpa_entradas(tela))
    botao_limpar.grid(row=x,column=2)
    botao_ok = Button(tela,text="Finalizar", command=lambda: view.get_entradas(tela, entradas,comissoes))
    botao_ok.grid(row = x , column = 3)
Ejemplo n.º 2
0
 def __init__(self,dados):
     temp =  controller.busca("id","pessoas"," WHERE tipo = 1 and cpf="+dados["cpf_vendor"],"")
     self.vendor = apaga(str(temp),"()[],")
     temp = controller.busca("id","pessoas"," WHERE tipo = 0 and cpf="+dados["cpf_clie"],"")
     self.clie = apaga(str(temp),"()[],")
     self.produtos = dados["produtos"]
     self.data = str(datetime.datetime.now().day)+"/"+str(datetime.datetime.now().month)+"/"+str(datetime.datetime.now().year)
     self.status = dados["t_venda"]
     self.pag_venda = dados["t_pag"]
Ejemplo n.º 3
0
    def __init__(self,dados):
        temp = dados["fornecedor"]
        temp = apaga(temp,"(),")
        dado = controller.busca("id", "fornecedores", "WHERE nome = "+temp, "")         #busca id fornecedor
        dado = str(dado)
        dado = apaga(dado,"[](),")                                                      #consulta retorna com caracteres especiais
        self.forn_id = dado[0]
        
        dur_camp = controller.busca('dur_camp','fornecedores','WHERE id = '+self.forn_id,'')        #calculo do fim da data de fim da campanha
        dur_camp = apaga(str(dur_camp),"[](),")
        auxDate = datetime.datetime.strptime(dados["data_inic"], "%d/%m/%Y")

        self.data_fim = auxDate + datetime.timedelta(days=int(dur_camp))
        self.data_inic = auxDate
        self.data_fim = self.data_fim.strftime('%d/%m/%Y')
        self.data_inic = self.data_inic.strftime('%d/%m/%Y')
        self.itens = dados["produtos"]
Ejemplo n.º 4
0
 def salvar(self):
     id_venda = controller.grava('vendas',[self.clie,self.vendor,self.data,self.status,self.pag_venda]) 
     for produto in self.produtos:
             temp = controller.busca("qnt","produtos"," WHERE codigo="+produto[0],"")       
             temp = apaga(str(temp),"()[],")
             temp = int(temp) - int(produto[3])
             if temp < 0:
                 controller.exclui('vendas',' id = '+str(id_venda))
                 view.popup_warning("Quantidade de itens insuficiente")
                 break
             else:
                 controller.altera('produtos','qnt = '+str(temp),' codigo='+produto[0])
                 controller.grava('produtos_venda',[id_venda,produto[0], produto[3],produto[4]])
Ejemplo n.º 5
0
def tela_cad_camp(root):
    view.limpa_tela(root)

    dados = []
    
    frame_cad_camp = LabelFrame(root, text="Cadastro Campanha", padx=5, pady=5)
    frame_cad_camp.grid(padx=10, pady=10)

    campo1 = Label(frame_cad_camp, text="Fornecedor:")
    campo1.grid(row = 0, column = 0)

    try:
            lista_forn = controller.busca("nome", "fornecedores","","")      
            var_forn = StringVar(frame_cad_camp)
            var_forn.set(lista_forn[0])
            forn = apply(OptionMenu, (frame_cad_camp,var_forn) + tuple(lista_forn))
    except:
            var_forn.set("")
            forn = OptionMenu(frame_cad_camp,var_forn,"")
    
    forn.grid(row = 0 , column = 1)   

    campo2 = Label(frame_cad_camp, text="Data Inicio:")
    campo2.grid(row = 1, column = 0)

    inic_camp = Entry(frame_cad_camp, width=20)
    inic_camp.grid(row=1, column = 1)

    campo3 = Label(frame_cad_camp, text="Código Produto:")
    campo3.grid(row = 2, column = 0)

    cod_prod = Entry(frame_cad_camp, width=20)
    cod_prod.grid(row=2, column = 1)

    campo5 = Label(frame_cad_camp, text="Desconto:")
    campo5.grid(row = 2, column = 2)

    desco_prod = Entry(frame_cad_camp, width=10)
    desco_prod.grid(row=2, column = 3)

    botao_incluir_prod = Button(frame_cad_camp, text="Incluir", command=lambda: inclui_prod_camp(frame_cad_camp,cod_prod,desco_prod,dados))
    botao_incluir_prod.grid(row=2, column =4, sticky = W)

    sub_lista_prod_camp(frame_cad_camp,dados)

    botao_enviar = Button(frame_cad_camp,text="Cadastrar", command=lambda: controller.cadastrar(frame_cad_camp,{"classe":model.campanha,"fornecedor":var_forn.get(), "data_inic":inic_camp.get(),"produtos":dados})) #passo os dados do formulario em um dicionario
    botao_enviar.grid(row=5,column=4, columnspan=2, sticky=W, pady=10)
    
    botao_limpar = Button(frame_cad_camp,text="Limpar", command=lambda: view.limpa_entradas(frame_cad_camp))
    botao_limpar.grid(row=5,column=3, sticky=E, pady=10)
Ejemplo n.º 6
0
 def __init__(self,dados):
     self.codigo = dados["codigo"]
     if not dados["fornecedor"]:
         self.forn_id = 0
     else:
         temp = dados["fornecedor"]
         temp = apaga(temp,"(),")
         dado = controller.busca("id", "fornecedores", "WHERE nome = '"+temp+"'", "")
         dado = str(dado)
         dado = apaga(dado,"[](),")
         self.forn_id = dado[0]
     self.qnt = dados["qnt"]
     self.desc = dados["desc"]
     self.pcompra = dados["pcompra"]
     self.pvenda = dados["pvenda"]
Ejemplo n.º 7
0
def tela_cad_prod(root):
    view.limpa_tela(root)

    frame_cad_prod = LabelFrame(root, text="Cadastro Produtos", padx=5, pady=5)
    frame_cad_prod.grid(padx=10, pady=10)

    valida_num = (root.register(controller.valida_numero),'%d', '%i', '%P', '%s', '%S', '%v', '%V', '%W') #permitir apenas numero no duracao da campanha

    campo1 = Label(frame_cad_prod, text="Código:")
    campo1.grid(row = 0, column = 1,padx = 10, sticky=E)

    cod_prod = Entry(frame_cad_prod, width=50, validate = 'key', validatecommand = valida_num)
    cod_prod.grid(row=0, column = 2, columnspan=3)

    campo2 = Label(frame_cad_prod, text="Fornecedor:")
    campo2.grid(row = 1, column = 0,padx = 10, columnspan=2)

    try:
            dados = controller.busca("nome", "fornecedores","","")
            var_forn = StringVar(frame_cad_prod)
            var_forn.set(dados[0])
            forn_prod = apply(OptionMenu, (frame_cad_prod,var_forn) + tuple(dados))
    except:
            var_forn.set("")
            forn_prod = OptionMenu(frame_cad_prod,var_forn,"")
    
    forn_prod.grid(row = 1 , column = 2, columnspan = 3, sticky = W+E )    

    campo3 = Label(frame_cad_prod, text="Quantidade:")
    campo3.grid(row = 2, column = 0,padx = 10, columnspan=2)

    qnt_prod = Entry(frame_cad_prod, width=50, validate = 'key', validatecommand = valida_num)
    qnt_prod.grid(row=2, column = 2, columnspan=3)

    campo4 = Label(frame_cad_prod, text="Descrição:")
    campo4.grid(row = 3, column = 0,padx = 10, columnspan=2)

    desc_prod = Entry(frame_cad_prod, width=50)
    desc_prod.grid(row=3, column = 2, columnspan=3)

    campo5 = Label(frame_cad_prod, text="Preço compra:")
    campo5.grid(row = 4, column = 0,padx = 10, columnspan=2)

    pcompra = Entry(frame_cad_prod, width=50)
    pcompra.grid(row=4, column = 2, columnspan=3)

    campo6 = Label(frame_cad_prod, text="Preço venda:")
    campo6.grid(row = 5, column = 0,padx = 10, columnspan=2)

    pvenda = Entry(frame_cad_prod, width=50)
    pvenda.grid(row=5, column = 2, columnspan=3)

    botao_enviar = Button(frame_cad_prod,text="Cadastrar", command=lambda: controller.cadastrar(frame_cad_prod,{"classe": model.produto, "codigo": cod_prod.get(),
                                                                "fornecedor": var_forn.get(),"qnt": qnt_prod.get(),"desc": desc_prod.get(),
                                                                 "pcompra": pcompra.get(),"pvenda": pvenda.get()}))
    
    botao_enviar.grid(row=7,column=4, columnspan=2, sticky=W, pady=10)
    
    botao_limpar = Button(frame_cad_prod,text="Limpar", command=lambda: view.limpa_entradas(frame_cad_prod))
    botao_limpar.grid(row=7,column=3, sticky=E, pady=10)

    return var_forn