def EliminarMenu(id_local_seleccionado, id_menu_seleccionado):
    delete_product_from_menu = input(
        "Seguro que desea eliminar este menu? (S/N) ")
    if delete_product_from_menu == "S":
        psfunc.DeleteQuerry("menues"
                            ,"id_menu = " + str(id_menu_seleccionado) + \
                            " AND id_local = " + str(id_local_seleccionado))
def EliminarProductoMenu(id_menu_seleccionado):
    id_producto_seleccionado = psfunc.QuerryOptionIdCheck(
        "SELECT mp.id_producto FROM menu_producto mp INNER JOIN \
                                            (SELECT men.id_menu FROM menues men WHERE id_menu = "
        + str(id_menu_seleccionado) + ") AS t1 ON mp.id_menu = t1.id_menu",
        "Ingresar ID producto: ")
    if id_producto_seleccionado != 0:
        delete_product_from_menu = input(
            "Eliminar el producto del menu? (S/N) ")
        if delete_product_from_menu == "S":
            psfunc.DeleteQuerry("menu_producto"
                                , "id_menu = " + str(id_menu_seleccionado) + \
                                    " AND id_producto = " + str(id_producto_seleccionado))
예제 #3
0
def CategoriasMenu():
    while True:
        psfunc.PrintQuerry("SELECT * FROM categorias")
        opciones = [
            'Agregar Categoría', 'Editar Categoría', 'Eliminar Categoría',
            'Volver al menu principal'
        ]
        psfunc.DisplayMenu(opciones)
        seleccion_usuario = psfunc.InputOpciones(opciones)

        if (seleccion_usuario == 1):
            nombre_nueva_categoria = input(
                "Ingrese el nombre de la nueva categoria: ")
            querry = psfunc.InsertQuerry(
                "categorias", (["nombre"]),
                (["'" + nombre_nueva_categoria + "'"]))
            if (querry):
                print("!Categoría agregada!")
            else:
                print("Error agregando categoría")

        elif (seleccion_usuario == 2):
            categoria_seleccionada = psfunc.QuerryOptionIdCheck(
                "SELECT id_categoria FROM categorias",
                "¿Que categoria quiere editar?: ")
            nuevo_nombre = input("Ingrese nuevo nombre de la categoria: ")
            querry = psfunc.EditQuerry(
                "categorias", ["nombre"], [nuevo_nombre],
                "id_categoria = {}".format(categoria_seleccionada))

            if (querry):
                print("!Categoría editada!")
            else:
                print("Error editando categoría")

        elif (seleccion_usuario == 3):
            # Eliminar categoria
            categoria_seleccionada = psfunc.QuerryOptionIdCheck(
                "SELECT id_categoria FROM categorias",
                "¿Que categoria quiere eliminar?: ")
            querry = psfunc.DeleteQuerry(
                "categorias",
                "id_categoria = {}".format(categoria_seleccionada))
            if (querry):
                print("!Categoría eliminada!")
            else:
                print("Error eliminado categoría")

        elif seleccion_usuario == 4:
            break
def MenuLocales(login_nombre_usuario, menu_shoping_cart, product_shoping_cart,
                id_user):
    while True:
        psfunc.PrintQuerry("SELECT * FROM locales")
        opciones_locales = [
            "Seleccionar Local", "Agregar Local", "Volver Atras"
        ]
        psfunc.DisplayMenu(opciones_locales)
        opcion = psfunc.InputOpciones(opciones_locales)
        if opcion == 1:
            id_local_seleccionado = psfunc.QuerryOptionIdCheck(
                "SELECT id_local FROM locales", "Ingresar id local: ")
            if id_local_seleccionado != 0:
                while True:
                    psfunc.PrintQuerry(
                        "SELECT * FROM locales WHERE id_local = " +
                        str(id_local_seleccionado))
                    opcion_local_id = [
                        "Editar Local", "Eliminar Local", "Ver Menus",
                        "Ver Productos", "Categorias", "Favorito", "Rating",
                        "Volver Atras"
                    ]
                    psfunc.DisplayMenu(opcion_local_id)
                    opcion = psfunc.InputOpciones(opcion_local_id)
                    if opcion == 1:
                        EditarLocal(id_local_seleccionado)

                    elif opcion == 2:
                        delete_check = input(
                            "Seguro que desea eliminar este local (S/N) ")
                        if delete_check == "S":
                            psfunc.DeleteQuerry(
                                "locales",
                                "id_local = " + str(id_local_seleccionado))

                    elif opcion == 3:
                        VerMenus(id_local_seleccionado, menu_shoping_cart,
                                 product_shoping_cart)

                    elif opcion == 4:
                        Productos(id_local_seleccionado, menu_shoping_cart,
                                  product_shoping_cart)

                    elif opcion == 5:
                        while True:
                            psfunc.PrintQuerry(
                                "SELECT DISTINCT ON (cat.id_categoria)  cat.id_categoria, cat.nombre FROM categorias cat INNER JOIN (SELECT lc.id_local, t1.id_categoria FROM locales lc \
                                FULL JOIN (SELECT * FROM categoria_local) AS t1 ON lc.id_local = t1.id_local WHERE lc.id_local = "
                                + str(id_local_seleccionado) + ") AS t2\
                                ON t2.id_categoria = cat.id_categoria ORDER BY cat.id_categoria"
                            )
                            opcion_local_id = [
                                "Agregar Categoria", "Eliminar Categoria",
                                "Volver Atras"
                            ]
                            psfunc.DisplayMenu(opcion_local_id)
                            opcion = psfunc.InputOpciones(opcion_local_id)
                            if opcion == 1:
                                print("Agregar Categoria")
                                psfunc.PrintQuerry(
                                    "SELECT DISTINCT ON (cat.id_categoria) cat.id_categoria, cat.nombre FROM categorias cat INNER JOIN (SELECT lc.id_local, t1.id_categoria FROM locales lc \
                                FULL JOIN (SELECT * FROM categoria_local) AS t1 ON lc.id_local = t1.id_local WHERE lc.id_local NOT IN ("
                                    + str(id_local_seleccionado) + ")) AS t2\
                                ON t2.id_categoria = cat.id_categoria ORDER BY cat.id_categoria"
                                )
                                id_categoria_seleccionada = psfunc.QuerryOptionIdCheck(
                                    "SELECT cat.id_categoria FROM categorias cat INNER JOIN (SELECT lc.id_local, t1.id_categoria FROM locales lc \
                                FULL JOIN (SELECT * FROM categoria_local) AS t1 ON lc.id_local = t1.id_local WHERE lc.id_local NOT IN ("
                                    + str(id_local_seleccionado) + ")) AS t2\
                                ON t2.id_categoria = cat.id_categoria",
                                    "Ingresar id categoria: ")
                                if id_categoria_seleccionada != 0:
                                    psfunc.InsertQuerry(
                                        "categoria_local", (),
                                        (str(id_local_seleccionado),
                                         str(id_categoria_seleccionada)))

                            elif opcion == 2:
                                print("Eliminar Categoria")
                                id_categoria_seleccionada = psfunc.QuerryOptionIdCheck(
                                    "SELECT cat.id_categoria FROM categorias cat INNER JOIN (SELECT lc.id_local, t1.id_categoria FROM locales lc \
                                FULL JOIN (SELECT * FROM categoria_local) AS t1 ON lc.id_local = t1.id_local WHERE lc.id_local = "
                                    + str(id_local_seleccionado) + ") AS t2\
                                ON t2.id_categoria = cat.id_categoria",
                                    "Ingresar id categoria: ")
                                if id_categoria_seleccionada != 0:
                                    psfunc.DeleteQuerry(
                                        "categoria_local", "id_local = " +
                                        str(id_local_seleccionado) +
                                        " AND id_categoria = " +
                                        str(id_categoria_seleccionada))

                            elif opcion == 3:
                                break

                    elif opcion == 6:
                        fav = psfunc.SelectQuerry(
                            "SELECT * FROM usuario_favoritos WHERE id_local = "
                            + str(id_local_seleccionado) +
                            " AND id_usuario = " + str(id_user))
                        if fav:
                            psfunc.DeleteQuerry(
                                "usuario_favoritos",
                                "id_local = " + str(id_local_seleccionado) +
                                " AND id_usuario = " + str(id_user))
                            print("Eliminado de favoritos")
                        else:
                            psfunc.InsertQuerry(
                                "usuario_favoritos", (),
                                (str(id_user), str(id_local_seleccionado)))
                            print("Agregado a favoritos")

                    elif opcion == 7:
                        Rating(id_local_seleccionado, id_user)

                    elif opcion == 8:
                        break

        elif opcion == 2:
            AgregarLocal()

        elif opcion == 3:
            break
def Productos(id_local_seleccionado, menu_shoping_cart, product_shoping_cart):
    while True:
        psfunc.PrintQuerry(
            "SELECT pr.id_producto, pr.nombre, pr.precio, t1.valor FROM productos pr FULL JOIN\
        (SELECT * FROM descuentos) AS t1 ON pr.id_descuento = t1.id_descuento WHERE pr.id_local = "
            + str(id_local_seleccionado))
        opcion_local_productos = [
            "Seleccionar Producto", "Agregar Producto", "Volver Atras"
        ]
        psfunc.DisplayMenu(opcion_local_productos)
        opcion = psfunc.InputOpciones(opcion_local_productos)
        if opcion == 1:
            id_producto_seleccionado = psfunc.QuerryOptionIdCheck(
                "SELECT id_producto FROM productos WHERE id_local = " +
                str(id_local_seleccionado), "Ingresar id producto: ")
            if id_producto_seleccionado != 0:
                while True:
                    psfunc.PrintQuerry(
                        "SELECT * FROM locales WHERE id_local = " +
                        str(id_local_seleccionado))
                    opcion_local_id = [
                        "Agregar Al Carrito", "Agregar A Menu",
                        "Editar Producto", "Eliminar Producto", "Descuento",
                        "Volver Atras"
                    ]
                    psfunc.DisplayMenu(opcion_local_id)
                    opcion = psfunc.InputOpciones(opcion_local_id)
                    if opcion == 1:
                        psfunc.AddToCart(id_producto_seleccionado, True,
                                         menu_shoping_cart,
                                         product_shoping_cart)

                    elif opcion == 2:
                        psfunc.PrintQuerry(
                            "SELECT * FROM menues WHERE id_local = " +
                            str(id_local_seleccionado))
                        id_menu_seleccionado = psfunc.QuerryOptionIdCheck(
                            "SELECT id_menu FROM menues WHERE id_menu = " +
                            str(id_menu_seleccionado), "Ingresar id menu: ")
                        if id_menu_seleccionado != 0:
                            pr_men = psfunc.SelectQuerry(
                                "SELECT * FROM menu_producto WHERE id_menu = "
                                + str(id_menu_seleccionado) +
                                " AND id_producto = " +
                                str(id_producto_seleccionado))
                            if pr_men:
                                ctd_pedido = pr_men[0][2]
                                psfunc.UpdateQuerry(
                                    "menu_producto", "cantidad_producto = " +
                                    str(ctd_pedido + 1),
                                    "id_menu = " + str(id_menu_seleccionado) +
                                    " AND id_producto = " +
                                    str(id_producto_seleccionado))
                            else:
                                psfunc.InsertQuerry(
                                    "menu_producto", (),
                                    (str(id_menu_seleccionado),
                                     str(id_producto_seleccionado), str(1)))

                    elif opcion == 3:
                        print("Que Parametro Desea Modificar")
                        opcion_editar_menu = [
                            "Nombre", "Precio", "Volver Atras"
                        ]
                        psfunc.DisplayMenu(opcion_editar_menu)
                        opcion = psfunc.InputOpciones(opcion_editar_menu)
                        if opcion == 1:
                            editar_producto = input(
                                "Ingresar Nuevo Nombre Producto: ")
                            psfunc.UpdateQuerry("productos",
                                                "nombre = '" + str(editar_producto) + "'",
                                                "id_local = " + str(id_local_seleccionado) \
                                                + " id_producto = " + str(id_producto_seleccionado))

                        elif opcion == 2:
                            editar_producto = input(
                                "Ingresar Nuevo Precio Producto: ")
                            psfunc.UpdateQuerry("productos",
                                                "precio = '" + str(editar_producto) + "'",
                                                "id_local = " + str(id_local_seleccionado)\
                                                + "id_producto = " + str(id_producto_seleccionado))

                        elif opcion == 3:
                            pass

                    elif opcion == 4:
                        delete_product_from_menu = input(
                            "Eliminar el producto del local? (S/N) ")
                        if delete_product_from_menu == "S":
                            psfunc.DeleteQuerry("productos"
                                                , "id_producto = " + str(id_producto_seleccionado) + \
                                                " AND id_local = " + str(id_local_seleccionado))

                    elif opcion == 5:
                        desc = psfunc.SelectQuerry(
                            "SELECT * FROM productos FULL JOIN (SELECT * FROM descuentos) AS t1 ON t1.id_descuento = productos.id_descuento\
                             WHERE id_producto = " +
                            str(id_producto_seleccionado) +
                            " AND id_local = " + str(id_local_seleccionado))
                        if desc:
                            psfunc.DeleteQuerry(
                                "descuentos",
                                "id_descuento = " + str(desc[0][0]))
                        else:
                            print("Crear Descuento")
                            try:
                                valor = int(input("Valor del descuento: "))
                                tipo = input(
                                    "Descuento Por Valor(N)/Porcentaje(P)")
                                if tipo == "P" or tipo == "N":
                                    psfunc.InsertQuerry(
                                        "descuentos", (), (tipo, str(valor)))
                                else:
                                    print("Opcion no valida")
                            except:
                                print("Valor no valido")

                    elif opcion == 6:
                        break

        elif opcion == 2:
            print("Agregar Producto")
            nombre_producto = "'" + input("Nombre Producto: ") + "'"
            precio_producto = input("Precio Producto: ")
            psfunc.InsertQuerry("productos", ("nombre", "precio", "id_local"),
                                (nombre_producto, str(precio_producto),
                                 str(id_local_seleccionado)))

        elif opcion == 3:
            break
def VerMenus(id_local_seleccionado, menu_shoping_cart, product_shoping_cart):
    while True:
        psfunc.PrintQuerry("SELECT * FROM menues WHERE id_local = " +
                           str(id_local_seleccionado))
        opcion_menues = ["Seleccionar Menu", "Agregar Menu", "Volver Atras"]
        psfunc.DisplayMenu(opcion_menues)
        opcion = psfunc.InputOpciones(opcion_menues)
        if opcion == 1:
            id_menu_seleccionado = psfunc.QuerryOptionIdCheck(
                "SELECT id_menu FROM menues WHERE id_local = " +
                str(id_local_seleccionado), "Ingresar id menu: ")
            if id_menu_seleccionado != 0:
                while True:
                    psfunc.PrintQuerry("SELECT pr.id_local, pr.id_producto, pr.nombre, pr.precio, pr.id_descuento \
                                    FROM productos pr INNER JOIN \
                                    (SELECT mp.id_producto FROM menu_producto mp INNER JOIN \
                                    (SELECT men.id_menu FROM menues men WHERE id_menu = "                                                                                          + str(id_menu_seleccionado) + \
                                    ") AS t1 ON mp.id_menu = t1.id_menu) AS t2 ON pr.id_producto = t2.id_producto")

                    opcion_menues = [
                        "Agregar Menu Al Carrito",
                        "Eliminar Producto Del Menu", "Editar Menu",
                        "Eliminar Menu", "Descuento", "Volver Atras"
                    ]
                    psfunc.DisplayMenu(opcion_menues)
                    opcion = psfunc.InputOpciones(opcion_menues)

                    if opcion == 1:
                        psfunc.AddToCart(id_menu_seleccionado, False,
                                         menu_shoping_cart,
                                         product_shoping_cart)
                        print("Menu Agregado Al Carrito")

                    elif opcion == 2:
                        EliminarProductoMenu(id_menu_seleccionado)

                    elif opcion == 3:
                        EditarMenu(id_local_seleccionado, id_menu_seleccionado)

                    elif opcion == 4:
                        EliminarMenu(id_local_seleccionado,
                                     id_menu_seleccionado)

                    elif opcion == 5:
                        desc = psfunc.SelectQuerry(
                            "SELECT * FROM menues FULL JOIN (SELECT * FROM descuentos) AS t1 ON t1.id_descuento = menues.id_descuento\
                             WHERE id_menu = " + str(id_menu_seleccionado) +
                            " AND id_local = " + str(id_local_seleccionado))
                        if desc:
                            psfunc.DeleteQuerry(
                                "descuentos",
                                "id_descuento = " + str(desc[0][0]))
                        else:
                            print("Crear Descuento")
                            try:
                                valor = int(input("Valor del descuento: "))
                                tipo = input(
                                    "Descuento Por Valor(N)/Porcentaje(P)")
                                if tipo == "P" or tipo == "N":
                                    psfunc.InsertQuerry(
                                        "descuentos", (), (tipo, str(valor)))
                                else:
                                    print("Opcion no valida")
                            except:
                                print("Valor no valido")

                    elif opcion == 6:
                        break

        elif opcion == 2:
            AgregarMenu(id_local_seleccionado)

        elif opcion == 3:
            break
예제 #7
0
def Directions(login_nombre_usuario):
    id_user = psfunc.SelectQuerry(
        f"SELECT id_usuario FROM Usuarios WHERE email= '{login_nombre_usuario}'"
    )
    id_user = id_user[0][0]
    while True:
        print("\nDirecciones\n")
        headers = [
            "ID", "Nombre", "Calle", "Número", "Región", "Comuna", "Dpto/block"
        ]
        sql = psfunc.PrintQuerryCustomHeaders(
            f"SELECT id_direccion, nombre, calle, numero, region, comuna, dpto_block \
                                             FROM usuario_direccion INNER JOIN Direcciones \
                                             USING(id_direccion)\
                                             WHERE id_usuario= {id_user}",
            headers)
        print(sql)  #Direcciones de usuario

        menu_directions = [
            "Ver dirección", "Agregar dirección", "Volver a Menú"
        ]
        psfunc.DisplayMenu(menu_directions)
        option_directions = psfunc.InputOpciones(menu_directions)

        if option_directions == 1:
            print("Ver dirección\n")
            print(sql)
            text = "Ingrese la direccion que desea ver:"
            querry = f"SELECT id_direccion \
                    FROM usuario_direccion INNER JOIN Direcciones \
                    USING(id_direccion) WHERE id_usuario={id_user}"

            id_direction = psfunc.QuerryOptionIdCheck(querry, text)
            while True:
                if id_direction != 0:
                    print(sql)
                    menu_whatch = [
                        "Editar direccion", "Eliminar direccion",
                        "Volver a Direcciones"
                    ]
                    psfunc.DisplayMenu(menu_whatch)
                    option_whatch = psfunc.InputOpciones(menu_whatch)
                    if option_whatch == 1:
                        print("\nEditar direccion\n")
                        print("Seleccione el campo que desea editar")
                        menu_editor = [
                            "Nombre", "Calle", "Número", "Región", "Comuna",
                            "dpto_block", "Volver a Direcciones"
                        ]
                        psfunc.DisplayMenu(menu_editor)
                        option_editor = psfunc.InputOpciones(menu_editor)
                        if option_editor == 1:  #Nombre
                            new_name = input(
                                "Ingrese el nuevo alias para la direccion:")
                            table = "direcciones"
                            set_parameters = f"nombre='{new_name}'"
                            where_parameters = f"id_direccion= {id_direction}"
                            psfunc.UpdateQuerry(table, set_parameters,
                                                where_parameters)

                        if option_editor == 2:  #Calle
                            new_street = input(
                                "Ingrese la nueva calle para la direccion:")
                            table = "direcciones"
                            set_parameters = f"calle='{new_street}'"
                            where_parameters = f"id_direccion= {id_direction}"
                            psfunc.UpdateQuerry(table, set_parameters,
                                                where_parameters)

                        if option_editor == 3:  #Numero
                            new_number = input(
                                "Ingrese el numero de calle para la direccion:"
                            )
                            table = "direcciones"
                            set_parameters = f"numero={new_number}"
                            where_parameters = f"id_direccion= {id_direction}"
                            psfunc.UpdateQuerry(table, set_parameters,
                                                where_parameters)

                        if option_editor == 4:  #Region
                            new_region = input(
                                "Ingrese la region para la direccion:")
                            table = "direcciones"
                            set_parameters = f"region='{new_region}'"
                            where_parameters = f"id_direccion= {id_direction}"
                            psfunc.UpdateQuerry(table, set_parameters,
                                                where_parameters)

                        if option_editor == 5:  #Comuna
                            new_comuna = input(
                                "Ingrese la comuna para la direccion:")
                            table = "direcciones"
                            set_parameters = f"comuna='{new_comuna}'"
                            where_parameters = f"id_direccion= {id_direction}"
                            psfunc.UpdateQuerry(table, set_parameters,
                                                where_parameters)
                        if option_editor == 6:  #Dpto_block
                            new_dptoblock = input(
                                "Ingrese el dpto o block para la direccion:")
                            table = "direcciones"
                            set_parameters = f"dpto_block={new_dptoblock}"
                            where_parameters = f"id_direccion= {id_direction}"
                            psfunc.UpdateQuerry(table, set_parameters,
                                                where_parameters)
                        if option_editor == 7:  #Volver atrás
                            break
                    if option_whatch == 2:
                        print(
                            "\n¿Estas seguro que deseas eliminar a esta dirección?"
                        )
                        yes_no = ["Sí, estoy seguro", "No estoy seguro"]
                        psfunc.DisplayMenu(yes_no)
                        option_delete = psfunc.InputOpciones(yes_no)
                        if option_delete == 1:
                            table = "direcciones"
                            table2 = "usuario_direccion"
                            text = f"id_direccion= {id_direction}"
                            psfunc.DeleteQuerry(table, text)
                            psfunc.DeleteQuerry(table2, text)
                            break
                        if option_delete == 2:
                            break
                    if option_whatch == 3:
                        break

        elif option_directions == 2:
            print("\nAgregar Direccion")
            table = "direcciones"
            table2 = "usuario_direccion"
            name = input("Ingrese el nombre:")
            street = input("Ingrese la calle:")
            try:
                number = int(input("Ingrese la enumeración:"))
                region = input("Ingrese la region:")
                comuna = input("Ingrese la comuna:")
                dpto_block = input(
                    "Ingrese el numero de dpto o block. En caso de no corresponder presione enter:"
                )
                if dpto_block == "":
                    try:
                        cur = psfunc.GetCon().cursor()
                        insertsrt = f"INSERT INTO {table}(nombre, calle, numero, region,comuna, dpto_block) values('{name}','{street}',{number},'{region}','{comuna}',null)"
                        cur.execute(insertsrt)
                        psfunc.GetCon().commit()
                        print("\nDireccion añadida con exito")
                        id_new1 = psfunc.SelectQuerry(
                            "SELECT*FROM Direcciones ORDER BY id_direccion DESC LIMIT 1"
                        )
                        id_new = id_new1[0][0]
                        instertsrt2 = f"INSERT INTO {table2}(id_direccion,id_usuario) values(" + str(
                            id_new) + "," + str(id_user) + ")"
                        cur.execute(instertsrt2)
                        psfunc.GetCon().commit()
                        print("La direccion fue añadida exitosamente")
                    except:
                        print("Error al agregar direccion")
                else:
                    try:
                        dpto_block = int(dpto_block)
                        cur = psfunc.GetCon().cursor()
                        insertsrt = f"INSERT INTO {table}(nombre, calle, numero, region,comuna, dpto_block) values('{name}','{street}',{number},'{region}','{comuna}',{dpto_block})"
                        cur.execute(insertsrt)
                        psfunc.GetCon().commit()
                        print("\nDireccion añadida con exito")
                        id_new = psfunc.SelectQuerry(
                            "SELECT*FROM Direcciones ORDER BY id_direccion DESC LIMIT 1"
                        )
                        id_new = id_new[0][0]
                        instertsrt2 = f"INSERT INTO {table2}(id_direccion,id_usuario) values(" + str(
                            id_new) + "," + str(id_user) + ")"
                        cur.execute(instertsrt2)
                        psfunc.GetCon().commit()
                        print("La direccion fue añadida exitosamente")
                    except:
                        print("Error al agregar direccion")
            except:
                print("Parametro ingresado no valido")
        elif option_directions == 3:
            break
예제 #8
0
def PromocionesMenu(id_user):
    while (True):
        psfunc.PrintQuerry(
            "SELECT id_codigo, nombre, (monto * usos) as monto FROM promociones ORDER BY id_codigo"
        )
        opciones = [
            'Agregar Promoción nueva', 'Agregar Promoción a cuenta',
            'Eliminar Promoción', 'Volver al menu principal'
        ]
        psfunc.DisplayMenu(opciones)
        seleccion_usuario = psfunc.InputOpciones(opciones)

        if (seleccion_usuario == 1):
            #Agregar
            nueva_promocion_nombre = input("Nombre: ")
            nueva_promcion_monto = input("Monto: ")
            nueva_promcion_fecha_vencimiento = input("Fecha (yyyy-mm-dd): ")
            nueva_promcion_descripcion = input("Descripción: ")
            nueva_promcion_usos = input("Usos: ")

            querry = psfunc.InsertQuerry(
                "promociones",
                (["nombre", "monto", "fecha_venc", "descripcion", "usos"]), ([
                    "'" + nueva_promocion_nombre + "'", nueva_promcion_monto,
                    "'" + nueva_promcion_fecha_vencimiento + "'",
                    "'" + nueva_promcion_descripcion + "'", nueva_promcion_usos
                ]))
            if (querry):
                print("!Promoción agregada!")
            else:
                print("Error agregando promoción")

        elif (seleccion_usuario == 2):
            #Agregar promoción a cuenta

            promocion_seleccionada = psfunc.QuerryOptionIdCheck(
                "SELECT id_codigo FROM promociones",
                "Que promocion quiere agregar?: ")

            querry = psfunc.InsertQuerry(
                "promocion_usuario",
                (["id_usuario", "id_codigo", "fecha_canje"]), ([
                    str(id_user),
                    str(promocion_seleccionada),
                    "'" + datetime.today().strftime('%Y-%m-%d') + "'"
                ]))
            if (querry):
                print("!Promoción agregada a usuario!")
            else:
                print("Error agregando promoción a usuario")

        elif (seleccion_usuario == 3):
            #Eliminar
            promocion_seleccionada = psfunc.QuerryOptionIdCheck(
                "SELECT id_codigo FROM promociones",
                "Que promocion quiere eliminar?: ")

            querry = psfunc.DeleteQuerry(
                "promociones", "id_codigo = {}".format(promocion_seleccionada))
            if (querry):
                print("!Promoción eliminada!")
            else:
                print("Error eliminado promoción")

        elif seleccion_usuario == 4:
            break