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'})
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'})
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'})
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'})
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'})
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'})