예제 #1
0
    def post(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        res = request.get_json()
        productos_supermercados = res['productos_supermercados']
        try:
            idSupermercado = productos_supermercados['idSupermercado']
            idProducto = productos_supermercados['idProducto']
            fechaProducto = productos_supermercados['fechaProducto']
            precioRegular = productos_supermercados['precioRegular']
            precioOnline = productos_supermercados['precioOnline']
            precioTarjeta = productos_supermercados['precioTarjeta']
            nombreTarjeta = productos_supermercados['nombreTarjeta']

            try:
                productos = Productos_Supermercados(idSupermercado,idProducto,fechaProducto,precioRegular,precioOnline,precioTarjeta,nombreTarjeta)
                productos.save()
                result="ok"
            except Exception as ex:
                raise ObjectNotFound(ex)
                result = "no"
                #access_token = create_access_token(identity={"resultado": result})
            return {'producto_supermercado guardado':result}, 200
        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #2
0
    def get(self, nombreProducto):
        #producto = Productos.query.filter_by(nombreProducto=nombreProducto).first()
        print('entrando a get productos')
        try:
            filtro = Productos.get_filter(nombreProducto)
            print('Selección de datos completado')
        except Exception as ex:
            raise ObjectNotFound(ex)

        if filtro is None:
            raise ObjectNotFound('El producto no existe')

        print('=================================================')

        result = productos_Buscar_Listar_schema.dump(filtro, many=True)
        print(result)
        print('=================================================')
        return {"producto": result}, 200


#class ProductosBuscados(Resource):
#    def get(self, idSubasta):
#        try:
#            #producto = Productos.get_all()
#            producto = Productos.query.filter(Productos.idSubasta.endswith('@example.com')).all()
#        except:
#            raise ObjectNotFound('error al buscar')

#        print(producto)
#        result = productos_Buscar_Listar_schema.dump(producto, many=True)
#        return {"productos": result}, 200
예제 #3
0
    def post(self):
        try:
            email = request.json['email']
            psw = ''
            idUsuario= getbyid(email)
            if(idUsuario=="No_Existe"):
                return {"respuesta": "Correo no existe"}

            x = datetime.datetime.now()
            hourseconds = (str(x.minute) + "_" + str(x.second))
            paswordview=hourseconds+str(idUsuario)
            password = sha256_crypt.encrypt(paswordview)
            print(password)
            print(paswordview)
            print(sha256_crypt.verify("password", password))
            usuarioEditar = Usuarios.get_query(idUsuario)
            usuarioEditar.password = password
            try:
                usuarioEditar.save_to_db()
                sendEmailrecoverPassword(email,paswordview)
                print('realizado')
            except Exception as ex:
                print('error')
                raise ObjectNotFound(ex)
            return {"respuesta": "Enviado"}
        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #4
0
 def put(self, idCategoria):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     data = request.get_json()
     print(data)
     try:
         categoria_dict = categoria_schema.load(data)
     except Exception as ex:
         raise ObjectNotFound(ex)
     print(categoria_dict)
     categoria = Categorias.find_by_id(idCategoria)
     print(categoria)
     if categoria is None:
         raise ObjectNotFound('El id de la categoria no existe')
     else:
         categoria.nombreCategoria = data['nombreCategoria']
     print(categoria)
     try:
         categoria.save_to_db()
     except:
         raise ObjectNotFound('error al agregar a la BD')
     result = categoria_schema.dump(categoria)
     return {"categoria": result}, 201
예제 #5
0
    def put(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        res = request.get_json()
        parametros = res['Parametro']

        try:
            idParametros = parametros['idParametro']
            Descripcion = parametros['Descripcion']
            Estado = parametros['Estado']
            FecModifica = date.today()
            UsuModifica = parametros['UsuModifica']
            Valor = parametros['Valor']

            parametroEditar = Parametros.get_query(idParametros)

            if parametroEditar is None:
                raise ObjectNotFound('El id del parametro no existe')

            parametroEditar.Descripcion = Descripcion
            parametroEditar.Estado = Estado
            parametroEditar.FecModifica = FecModifica
            parametroEditar.UsuModifica = UsuModifica
            parametroEditar.Valor = Valor

            parametroEditar.save_to_db()

            return 'Parámetro editado correctamente', 200
        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #6
0
    def put(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        sub_categorias = request.get_json()
        datos = sub_categorias['subCategorias']

        try:
            idSubCategorias = datos['idSubCategorias']
            nombreSubCategorias = datos['nombreSubCategorias']
            idCategoria = datos['idCategoria']

            subCategoriaEditar = Sub_Categorias.get_query(idSubCategorias)
            if subCategoriaEditar is None:
                raise ObjectNotFound('El id de la subCategoria no existe')

            subCategoriaEditar.nombreSubCategorias = nombreSubCategorias
            subCategoriaEditar.idCategoria = idCategoria

            subCategoriaEditar.save_to_db()
            result = "ok"

            #access_token = create_access_token(identity={"sub_categorias": result})
            return {'SubCategoria Editada': result}, 200
        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #7
0
    def put(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        res = request.get_json()
        tipos_productos = res['tipos_productos']
        try:
            idTipoProducto = tipos_productos['idTipoProducto']
            nombreProducto = tipos_productos['nombreTipoProducto']
            idSubCategorias = tipos_productos['idSubCategorias']


            tiposProductosEditar = Tipos_Productos.find_by_id(idTipoProducto)

            if tiposProductosEditar is None:
                raise ObjectNotFound('El id del Tipo de producto no existe')

            tiposProductosEditar.nombreProducto = nombreProducto
            tiposProductosEditar.idSubCategorias = idSubCategorias

            try:
                tiposProductosEditar.save_to_db()
                result="ok"
            except Exception as ex:
                raise ObjectNotFound(ex)
                #access_token = create_access_token(identity={"productos": result})
            return {'SubCategoria Editada':result}, 200
        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #8
0
    def put(self, idLista):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        data = request.get_json()
        subasta = Subastas.find_by_id(idLista)

        if subasta is None:
            raise ObjectNotFound('No existe lista con ese id')
        else:
            try:
                nombreLista = data["nombreLista"]

                if subasta.nombreSubasta != nombreLista:
                    subasta.nombreSubasta = nombreLista
                    subasta.save_to_db()

                Subastas_Productos.delete_rows_for_id(idLista)
                for productos in data['productos']:
                    print('idProducto:', productos['idProducto'])
                    print('Cantidad:', productos['Cantidad'])

                    idSubasta = idLista
                    idProducto = productos['idProducto']
                    Cantidad = productos['Cantidad']
                    subasta_productos = Subastas_Productos(idSubasta, idProducto, Cantidad)
                    subasta_productos.save()
                    print('Productos Agregados a la subasta con exito')

            except Exception as ex:
                raise ObjectNotFound(ex)

        return {"Subasta actualizada": idLista}, 201
예제 #9
0
    def post(self):
        try:

            idSubastaCreada = 0
            # ESTE DATO (DEFAULT) PUEDE VARIAR SEGUN EL REGISTRO DE LA TABLA DIRECCIONES
            # =================================================================
            idUsuario = 1
            # =================================================================
            idEstado = 1
            tiempoInicial = datetime.now()
            nombreSubasta = 'Creación de lista'
            precioIdeal = 0.0
            fechaSubasta = datetime.now()
            print(fechaSubasta)
            # ESTE DATO (DEFAULT) PUEDE VARIAR SEGUN EL REGISTRO DE LA TABLA DIRECCIONES
            # =================================================================
            idDireccion = 24
            # =================================================================
            print('Selección de datos completado')
            crearSubasta = Subastas(idUsuario, idEstado, tiempoInicial,
                                    nombreSubasta, precioIdeal, idDireccion,
                                    fechaSubasta)
            print('Agrupación de datos completado')

            try:
                print('Creando Subasta...')
                crearSubasta.save()
                print('Creación de SUBASTA completada')
                intCreacion = 1
                idSubastaCreada = crearSubasta.idSubasta
                print('ID :', idSubastaCreada)
            except Exception as ex:
                raise ObjectNotFound(ex)

        except Exception as ex:
            raise ObjectNotFound(ex)

        data = request.get_json()
        print(data)
        for productos in data['productos']:
            print('idProducto:', productos['idProducto'])
            print('Cantidad:', productos['Cantidad'])
            try:
                if intCreacion == 1:
                    idSubasta = idSubastaCreada
                    idProducto = productos['idProducto']
                    Cantidad = productos['Cantidad']
                    subasta_productos = Subastas_Productos(
                        idSubasta, idProducto, Cantidad)
                    subasta_productos.save()
                    print('Productos Agregados a la subasta con exito')
            except Exception as ex:
                raise ObjectNotFound(ex)

        return {"Subasta creada": idSubastaCreada}, 201
예제 #10
0
 def delete(self, idCategoria):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     categoria = Categorias.find_by_id(idCategoria)
     if categoria is None:
         print("dentro del if")
         raise ObjectNotFound('La categoria no existe')
     try:
         categoria.delete_from_db()
     except:
         raise ObjectNotFound('error al eliminar de la BD')
     return {'msg': 'Categoria eliminada con exito'}, 204
예제 #11
0
 def delete(self, idProductoSupermercado):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         productos = Productos_Supermercados.find_by_id(idProductoSupermercado)
         if productos is None:
             raise ObjectNotFound('El id del producto_supermercado no existe')
         productos.delete_pro()
         result="eliminada"
         #access_token = create_access_token(identity={"resultado": result})
         return {'productos_supermercados eliminado': result}, 200
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #12
0
    def get(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        try:
            filtro =  Productos.get_joins()

            filtroParam = Parametros.get(2)

            direccion = ''

            for datos in filtroParam:
                print('impirmir valor')
                print(datos.Valor)
                direccion = datos.Valor
                print('aquí termina')

            print(filtro)
            result = task_schema.dump(filtro, many=True)
            #access_producto = create_access_token(identity={"productos": result})
            #access_direccion = create_access_token(identity={"direccion": direccion})

            return {"producto": result, "Parametro": [{ "url": direccion }]}, 200

        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #13
0
    def get(seft, idSubasta):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        try:
            print('entrando')
            filtro = Subastas.get_direccion(idSubasta)
            print(filtro)
            result = task_schema.dump(filtro, many=True)
            print(result)

            filtroPro = Subastas.get_productosSubasta(idSubasta)
            result2 = task_schema2.dump(filtroPro, many=True)

            filtroganador = Subastas.get_bodegueroGanador(idSubasta)
            #AGREGAR EMAIL Y LOS OTROS DATOS
            result3 = task_schema3.dump(filtroganador, many=True)

            return {
                "Direccion": result,
                "Productos": result2,
                "Ganador": result3
            }, 200

        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #14
0
    def delete(self, idLista):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        subastas = Subastas.find_by_idd(idLista)
        print(subastas)
        if subastas is None:
            raise ObjectNotFound('No existe lista con ese id')
        else:

            try:
                Subastas_Productos.delete_Subastas(idLista)
            except Exception as ex:
                raise ObjectNotFound(ex)
        return {"Lista eliminada": idLista}, 201
예제 #15
0
    def get(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        try:
            filtro =  Productos_Supermercados.get()
            #print(filtro)

            result = task_schema.dump(filtro, many=True)
            #print(result)
            for item in result:
                item['Productos_Supermercados_idProductoSupermercado']=item["Productos_Supermercados.idProductoSupermercado"]
                item['Productos_Supermercados_idSupermercado']=item["Productos_Supermercados.idSupermercado"]
                item['Productos_Supermercados_idProducto']=item["Productos_Supermercados.idProducto"]
                item['Productos_Supermercados_fechaProducto']=item["Productos_Supermercados.fechaProducto"]
                item['Productos_Supermercados_precioRegular']=item["Productos_Supermercados.precioRegular"]
                item['Productos_Supermercados_precioOnline']=item["Productos_Supermercados.precioOnline"]
                item['Productos_Supermercados_precioTarjeta']=item["Productos_Supermercados.precioTarjeta"]
                item['Productos_Supermercados_nombreTarjeta']=item["Productos_Supermercados.nombreTarjeta"]
                item['Productos_nombreProducto']=item["Productos.nombreProducto"]
                item['Supermercados_nombreSupermercado']=item["Supermercados.nombreSupermercado"]
                #if item['ParameterKey'] in ["Shell", "Type"]:
                    #item['ParameterKey'] = "new value"
            #access_token = create_access_token(identity={"productos": result})
            print("imprimiendo")
            return {"Productos_Supermercados": result}, 200

        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #16
0
    def post(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token

        res = request.get_json()
        productoRes = res["producto"]

        idTipoProducto = productoRes['idTipoProducto']
        codProducto = productoRes['codProducto']
        nombreProducto = productoRes['nombreProducto']
        contenidoProducto = productoRes['contenidoProducto']

        marca = productoRes['marca']
        presentacion = productoRes['presentacion']
        unidadMedida = productoRes['unidadMedida']
        cantidadPaquete = productoRes['cantidadPaquete']
        imagen = productoRes['imagen']

        rutaimg = AdditionalConfig.RUTAIMAGENESPRODUCTOS


        if imagen is None:
            return {"respuesta":'Imagen no seleccionada!'}, 400

        try:
            filtro = Productos.get_por_cod(codProducto)
            print("filtro")
            print(filtro == [])

            imgdata = base64.b64decode(imagen)
            filename = 'app/imagenes/productos/' + codProducto + '.jpg'

            if filtro == []:

                with open(filename, 'wb') as f:
                    f.write(imgdata)

                imagenProductoURL = rutaimg + codProducto + '.jpg'

                productos = Productos(idTipoProducto, nombreProducto, contenidoProducto, imagenProductoURL, codProducto, marca,
                                          presentacion, unidadMedida, cantidadPaquete)
                print(productos)
                productos.save_to_db()
                result = "ok"

            else:
                return {"respuesta":'Ya existe un producto con este codigo'}, 400

        except Exception as ex:
            raise ObjectNotFound(ex)


        #access_token = create_access_token(identity={"tipos_productos": result})
        return {'respuesta': result}, 200
예제 #17
0
    def put(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        res = request.get_json()
        productos_supermercados = res['productos_supermercados']

        try:
            idProductoSupermercado = productos_supermercados['idProductoSupermercado']
            idSupermercado = productos_supermercados['idSupermercado']
            idProducto = productos_supermercados['idProducto']
            fechaProducto = productos_supermercados['fechaProducto']
            precioRegular = productos_supermercados['precioRegular']
            precioOnline = productos_supermercados['precioOnline']
            precioTarjeta = productos_supermercados['precioTarjeta']
            nombreTarjeta = productos_supermercados['nombreTarjeta']


            productosSupermercadosEditar = Productos_Supermercados.get_query(idProductoSupermercado)

            if productosSupermercadosEditar is None:
                raise ObjectNotFound('El id del producto_supermercado no existe')

            productosSupermercadosEditar.idSupermercado = idSupermercado
            productosSupermercadosEditar.idProducto = idProducto
            productosSupermercadosEditar.fechaProducto = fechaProducto
            productosSupermercadosEditar.precioRegular = precioRegular
            productosSupermercadosEditar.precioOnline = precioOnline
            productosSupermercadosEditar.precioTarjeta = precioTarjeta
            productosSupermercadosEditar.nombreTarjeta = nombreTarjeta


            try:
                productosSupermercadosEditar.save_to_db()
                result="ok"
            except Exception as ex:
                raise ObjectNotFound(ex)
                result = "no"
                #access_token = create_access_token(identity={"resultado": result})
            return {'productos_supermercados Editado': result}, 200
        except Exception as ex:
            raise ObjectNotFound(ex)
예제 #18
0
    def delete(self):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token

        res = request.get_json()
        idProducto = res['idProducto']
        print(res)
        try:
            producto = Productos.get_query(idProducto)
            if producto is None:
                raise ObjectNotFound('El id del producto no existe')
            producto.delete_pro()
        except Exception as ex:
            raise ObjectNotFound(ex)
        result = 'ok'

        #access_token = create_access_token(identity={"parametro": result})
        return {"respuesta":result}
예제 #19
0
    def get(self, idSubasta):
        try:
            filtro = Subastas_Productos.get_joins_filter_supermercados(
                idSubasta)
            #print(filtro)
        except Exception as ex:
            raise ObjectNotFound(ex)

        resultado = task_schema.dump(filtro, many=True)
        # print(resultado)
        return {"productos": resultado}, 200
예제 #20
0
    def get(self):
        try:
            print('Estoy aqui')
            producto = Productos.get_all()
            print('Error al jalar')
        except:
            raise ObjectNotFound('error al buscar')

        #print(producto)
        result = productos_Buscar_Listar_schema.dump(producto, many=True)
        return {"productos": result}, 200
예제 #21
0
    def get(self, idSubasta):
        try:
            filtro = Subastas_Productos.get_joins_filter(idSubasta)

            for subastas_Productos, productos in filtro:
                print(productos.idProducto, productos.nombreProducto,
                      subastas_Productos.idSubasta)
            resultado = task_schema.dump(filtro, many=True)
            #print(resultado)
        except Exception as ex:
            raise ObjectNotFound(ex)
        return {"productos": resultado}, 200
예제 #22
0
 def get(self, idCategoria):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     print("entro a get by id")
     categoria = Categorias.find_by_id(idCategoria)
     print(categoria)
     if categoria is None:
         raise ObjectNotFound('La categoria no existe')
     result = categoria_schema.dump(categoria)
     return {"categoria": result}, 200
예제 #23
0
 def post(self):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     data = request.get_json()
     try:
         categoria_dict = categoria_schema.load(data)
     except Exception as ex:
         raise ObjectNotFound(ex)
     print(categoria_dict)
     categoria = Categorias(
         nombreCategoria=categoria_dict['nombreCategoria'],
         fechaCreacion=datetime.now())
     print(categoria)
     try:
         categoria.save()
     except:
         raise ObjectNotFound('error al agregar a la BD')
     result = categoria_schema.dump(categoria)
     return {"categoria": result}, 201
예제 #24
0
 def get(self, nombreProducto):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         filtro = Productos.get_filter_buscar_Productos(nombreProducto)
         result = taskSchema.dump(filtro, many=True)
         #access_token = create_access_token(identity={"productos": result})
         return {"Direcciones": result}, 200
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #25
0
 def get(self, idTipoProductos):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         filtro = Tipos_Productos.find_by_id(idTipoProductos)
         result = task_schema.dump(filtro)
         #access_token = create_access_token(identity={"productos": result})
         return {"Tipos_Productos": result}, 200
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #26
0
 def get(self):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         filtro = Sub_Categorias.get_all()
         result = task_schema.dump(filtro, many=True)
         #access_token = create_access_token(identity={"productos": result})
         return {"Sub_Categorias": result}, 200
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #27
0
 def delete(self):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         idParametros = request.json['idParametros']
         parametro = Parametros.get_query(idParametros)
         parametro.delete_parametro()
         return "Parámetro eliminado"
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #28
0
 def delete(self, idSubCategorias):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         sub_categoria = Sub_Categorias.find_by_id(idSubCategorias)
         sub_categoria.delete_sub_cat()
         result = "ok"
         #access_token = create_access_token(identity={"sub_categorias": result})
         return {"Eliminado": result}
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #29
0
 def get(self, idUsuario):
     chek_token = check_for_token(request.headers.get('token'))
     valid_token = chek_token['message']
     if valid_token != 'ok':
         return chek_token
     try:
         #idUsuarioGet = request.json['idUsuario']
         filtro = Direcciones.get_direcciones(idUsuario)
         result = taskSchema.dump(filtro, many=True)
         #access_token = create_access_token(identity={"direcciones": result})
         return {"Direcciones": result}, 200
     except Exception as ex:
         raise ObjectNotFound(ex)
예제 #30
0
    def get(self, idParametro):
        chek_token = check_for_token(request.headers.get('token'))
        valid_token = chek_token['message']
        if valid_token != 'ok':
            return chek_token
        try:

            filtro = Parametros.get(idParametro)
            result = task_schema.dump(filtro, many=True)
            return {"Parametro": result}, 200

        except Exception as ex:
            raise ObjectNotFound(ex)