Example #1
0
def put_lote(lote_id):
    if 'id' in session:
        id = session['id']
        try:
            lote = Lote.get(Lote.id == lote_id)
            producto = Producto.get(Producto.id == lote.producto)
            categoria = Categoria.get(Categoria.id == producto.categoria)
            inventario = Inventario.get((Inventario.id == categoria.inventario)
                                        & (Inventario.usuario == id))

            lote.costo = request.json.get('costo', lote.costo)
            lote.precio = request.json.get('precio', lote.precio)
            lote.existencia = request.json.get('existencia', lote.existencia)
            lote.producto = request.json.get('producto', lote.producto)

            if lote.save():

                return jsonify(lote.to_json(producto.add_ok()))
            else:
                abort(422)
        except Lote.DoesNotExist:
            abort(404)
        except Inventario.DoesNotExist:
            abort(404)
    return jsonify({'message': 'KO'})
Example #2
0
def post_lote():
    if 'id' in session:
        id = session['id']
        if not request.json:
            abort(400)
        costo = request.json.get('costo')
        precio = request.json.get('precio')
        existencia = request.json.get('existencia')
        producto = request.json.get('producto')

        if (costo.isdigit() == False):
            return jsonify(
                generate_response(1, error='Costo tiene que ser numerico'))

        if (precio.isdigit() == False):
            return jsonify(
                generate_response(1, error='Precio tiene que ser numerico'))

        if (existencia.isdigit() == False):
            return jsonify(
                generate_response(1,
                                  error='Existencia tiene que ser numerico'))

        lote = Lote.new(costo, precio, existencia, producto)

        if lote is None:
            abort(422)

        producto = Producto.get(Producto.id == lote.producto)
        return jsonify(lote.to_json(producto.add_ok()))
    return jsonify({'message': 'KO'})
Example #3
0
def put_producto(producto_id):
    if 'id' in session:
        id = session['id']
        try:
            producto = Producto.get(Producto.id == producto_id)
            categoria = Categoria.get(Categoria.id == producto.categoria)
            inventario = Inventario.get((Inventario.id == categoria.inventario)
                                        & (Inventario.usuario == id))
            proveedor = Proveedor.get(Proveedor.id == producto.proveedor)
            producto.nombre = request.json.get('nombre', producto.nombre)
            producto.descripcion = request.json.get('descripcion',
                                                    producto.descripcion)
            producto.categoria = request.json.get('categoria',
                                                  producto.categoria)
            producto.proveedor = request.json.get('proveedor',
                                                  producto.proveedor)

            if producto.save():
                return jsonify(
                    producto.to_json(categoria.add_ok(), proveedor.to_json()))
            else:
                abort(422)
        except Producto.DoesNotExist:
            abort(404)
        except Inventario.DoesNotExist:
            abort(404)
    return jsonify({'message': 'KO'})
Example #4
0
def get_lote(lote_id):
    if 'id' in session:
        id = session['id']
        try:
            lote = Lote.get(Lote.id == lote_id)
            producto = Producto.get(Producto.id == lote.producto)
            categoria = Categoria.get(Categoria.id == producto.categoria)
            inventario = Inventario.get((Inventario.id == categoria.inventario)
                                        & (Inventario.usuario == id))
            return jsonify(lote.to_json(producto.add_ok()))
        except Lote.DoesNotExist:
            abort(404)
        except Inventario.DoesNotExist:
            abort(404)
    return jsonify({'message': 'KO'})
Example #5
0
def get_producto(producto_id):
    if 'id' in session:
        id = session['id']
        try:
            producto = Producto.get(Producto.id == producto_id)
            categoria = Categoria.get(Categoria.id == producto.categoria)
            inventario = Inventario.get((Inventario.id == categoria.inventario)
                                        & (Inventario.usuario == id))
            proveedor = Proveedor.get(Proveedor.id == producto.proveedor)
            return jsonify(
                producto.to_json(categoria.add_ok(), proveedor.to_json()))
        except Producto.DoesNotExist:
            abort(404)
        except Inventario.DoesNotExist:
            abort(404)
    return jsonify({'message': 'KO'})
Example #6
0
def get_lotes():
    if 'id' in session:
        id = session['id']
        lotes = Lote.select().join(Producto).join(Categoria).join(
            Inventario).where(Inventario.usuario == id)
        lotes = [
            Lote.to_json(Producto.get(Producto.id == Lote.producto).add_ok())
            for Lote in lotes
        ]
        identificador = Lote.select().join(Producto).join(Categoria).join(
            Inventario).where(Inventario.usuario == id)
        identificador = [Lote.iden() for Lote in identificador]

        diccionario = {}
        for x in range(len(lotes)):
            diccionario[identificador[x]] = lotes[x]

        return jsonify(diccionario)
    return jsonify({'message': 'KO'})