def agregue_pro():
    form_pro={}
    form_pro["nombre"]=input("Nombre del producto nuevo: ")
    form_pro["precio"]=int(input("inserte su precio: "))
    form_pro["categoria"]=input("Inserte su categoria: ")
    form_pro["marca"]=input("Inserte su marca: ")
    form_pro["stock"]=input("Inserte el stock del producto")
    if validator.validar_pro(form_pro) == {}:
        if len(form_pro["categoria"]) > 3:
            sql="select nombre from categorias"
            dba.get_cursor().execute(sql)
            result=dba.get_cursor().fetchall()
            for i in result:
                lista_categoria.append(i[0])
            if (form_pro["categoria"] in lista_categoria) == True:
                sql="select ID from categorias where nombre=%s"
                val=(form_pro["categoria"],)
                dba.get_cursor().execute(sql,val)
                result=dba.get_cursor().fetchone()
                cat1=Categoria(form_pro["categoria"])
                cat1.set_id(result[0])
            else:
                cat1=Categoria(form_pro["categoria"])
                sql="INSERT INTO categorias (nombre) values (%s)"
                val=(form_pro["categoria"],)
                dba.get_cursor().execute(sql,val)
                dba.get_conexion().commit()
                cat1.set_id(dba.get_cursor().lastrowid)
        if len (form_pro["marca"]) > 3:
            sql="select nombre from marcas"
            dba.get_cursor().execute(sql)
            result=dba.get_cursor().fetchall()
            for n in result:
                lista_marca.append(n[0])
            if (form_pro["marca"] in lista_marca) == True:
                sql="select ID from marcas where nombre=%s"
                val=(form_pro["marca"],)
                dba.get_cursor().execute(sql,val)
                result=dba.get_cursor().fetchone()
                mar1=Marca(form_pro["marca"])
                mar1.set_id(result[0])
            else:
                mar1=Marca(form_pro["marca"])
                sql="INSERT INTO marcas (nombre) values (%s)"
                val=(form_pro["marca"],)
                dba.get_cursor().execute(sql,val)
                dba.get_conexion().commit()
                mar1.set_id(dba.get_cursor().lastrowid)

       
        p1=Producto(0,form_pro["nombre"],form_pro["precio"],form_pro["categoria"],form_pro["marca"],form_pro["stock"])
        p1.set_categoria(cat1.get_id())
        p1.set_marca(mar1.get_id())
        p1.save()
        print("Producto registrado exitosamente!")
        print("==================================================")
    else:
        print(validator.validar_pro(form_pro))
Example #2
0
    def aniadir_producto(self):

        if self.validar():

            producto = Producto(self.nombre.get(), self.link.get())

            if not producto.verificar_link():
                producto.reingresar_link(lambda: self.updatelink_comm(
                    self.persistir_aniadido(producto), producto))

            else:
                self.persistir_aniadido(producto)

        else:

            self.mensaje['fg'] = 'red'
            self.mensaje['text'] = 'Se requiere nombre y link'
def finalizar(user,bank):
    print(f"\nEl total de tu compra es de ${sum(carrito_p)}")
    print(f"En tu billetera tienes ${user.get_billetera()}\n")
    ok=input("Escribe 'ok' si estas de acuerdo o 'no' si no lo estas: ")
    if user.get_billetera() < sum(carrito_p):
        print("\nNo puedes realizar la compra. Necesitas agregar dinero en tu billetera.\n")
        Menu_us(user,bank)
    else:
        if ("ok") == ok.lower():
            user.set_billetera(user.get_billetera()-sum(carrito_p))
            print(f"\n{user.get_nombre()}, finalizaste tu compra. Muchas gracias por confiar en nosotros!.")
            print("\nTU FACTURA: ")
            print("===============================================================================")
            
            for i in factura:
                datos="|Producto: {:40} ===>   |Precio: ${:7} "
                print(datos.format(i[0],i[1]))
                print("===============================================================================")
            comp1=Compra(0,user,carrito_p[0],carrito_n[0])
            for i in carrito_n:
                sql="select * from productos where nombre=%s"
                val=(i,)
                dba.get_cursor().execute(sql,val)
                result=dba.get_cursor().fetchall()
                pro_stock=Producto(result[0][0],result[0][1],result[0][2],result[0][3],result[0][4],(result[0][5]))
                pro_stock.resta_stock()

            for x, y in zip(carrito_p,carrito_n):
                comp1.set_precio_final(x)
                comp1.set_nombre(y)
                comp1.save()
            print(f"|TOTAL:                                             ===>   |Precio: $ {sum(carrito_p)} ")    
            print("###############################################################################")
            print(f"\n{user.get_nombre()}, Te quedaron ${user.get_billetera()} en tu billetera.\nQUE LO DISFRUTES, VUELVA PRONTO!!\n\n\n\n")
            user.update_billetera(user.get_id())
            Menu()
        elif ("no") == ok.lower():
            print(f"\n{user.get_nombre()} No aceptaste finalizar la compra, seras redirigido al menu.\n")
            Menu_us(user,bank)
        else:
            print("\nRespuesta incorrecta.\n")
Example #4
0
    def actualizar_registro(self):
        nombre = self.tree.item(self.tree.selection())['text']
        if len(nombre) == 0:
            self.mensaje['fg'] = 'red'
            self.mensaje['text'] = 'Debes Seleccionar un producto.'
            return

        precio_ml = self.tree.item(self.tree.selection())['values'][1]
        query = 'SELECT * FROM PRODUCTOS WHERE nombre = ? AND precio_ml = ?'
        parameters = (nombre, precio_ml)
        db_rows = self.run_query(query, parameters)
        records = [record for record in db_rows]
        for fields in records:
            id, p_nombre, cantidad, categoria, link, precio, precio_venta = fields

            producto = Producto(p_nombre, link)
            if not producto.verificar_link():
                producto.reingresar_link(lambda: self.updatelink_comm(
                    self.persistir_actualizado(producto, link, p_nombre),
                    producto))

            else:
                self.persistir_actualizado(producto, link, p_nombre)
    def getProductos():

        listaProductos = []

        cursor = DB().run('SELECT * FROM Productos;')
        for item in cursor:
            unProducto = Producto()
            unProducto.idProducto = item['idProductos']
            unProducto.nombreProducto = item['Nombre_Producto']
            unProducto.precio = item['Precio']

            for item2 in Empresa.getEmpresas():
                if item2.idEmpresa == item['Empresa_idEmpresa']:
                    unProducto.Empresa = item2

            listaProductos.append(unProducto)

        return listaProductos
Example #6
0
    def actualizar_todo(self):

        query = 'SELECT * FROM PRODUCTOS'
        db_rows = self.run_query(query)
        registros = [registro for registro in db_rows]
        self.producto = {}
        for id, p_nombre, cantidad, categoria, link, precio, precio_venta in registros:

            self.producto[p_nombre] = Producto(p_nombre, link)
            if not self.producto[p_nombre].verificar_link():
                print(self.producto[p_nombre])
                self.producto[p_nombre].reingresar_link(
                    lambda: self.updatelink_comm(
                        self.persistir_actualizado(self.producto[
                            p_nombre], link, p_nombre), self.producto[p_nombre]
                    ))

            else:
                print(self.producto[p_nombre])
                self.persistir_actualizado(self.producto[p_nombre], link,
                                           p_nombre)

        self.get_productos()
        self.mensaje['text'] = 'Base de datos ACTUALIZADA.'
Example #7
0
        for item in Empresa.getEmpresas():
            print(str(item.idEmpresa) + ' ' + item.nombre)
        idAModificar = int(input('Ingrese que id de Empresa modifica: '))
        for item in Empresa.getEmpresas():
            if item.idEmpresa == idAModificar:
                nuevoNombre = input('Ingrese nuevo nombre para la Empresa: ')
                item.nombre = nuevoNombre
                item.modificarEmpresa()
                print('Se ha modificado el nombre de la Empresa')

    if opcion == 4:
        for item in Empresa.getEmpresas():
            print(str(item.idEmpresa) + ' ' + item.nombre)
        opcionEmpresa = int(input('A que empresa agrega el producto: '))

        unProducto = Producto()
        idProducto = input('Ingrese id del Producto: ')
        unProducto.idProducto = idProducto
        nombreProducto = input('Ingrese nombre del Producto: ')
        unProducto.nombreProducto = nombreProducto
        precioProducto = input('Ingrese precio del producto: ')
        unProducto.precio = precioProducto

        for item in Empresa.getEmpresas():
            if item.idEmpresa == opcionEmpresa:
                unProducto.Empresa = item

        unProducto.altaProducto()

    if opcion == 5:
        for item in Empresa.getEmpresas():
Example #8
0
 def __init__(self):
     Producto.__init__(self)