def get_proveedores(): if 'id' in session: id = session['id'] proveedores = Proveedor.select() proveedores = [Proveedor.to_json() for Proveedor in proveedores] identificador = Proveedor.select() identificador = [Proveedor.iden() for Proveedor in identificador] diccionario = {} for x in range(len(proveedores)): diccionario[identificador[x]] = proveedores[x] return jsonify(diccionario) return jsonify({'message': 'KO'})
def show_signup_form(): if current_user.is_authenticated: return redirect(url_for('index')) form = SignupForm() error = None if form.validate_on_submit(): numero_proveedor = form.numero_proveedor.data name = form.name.data email = form.email.data password = form.password.data # Comprobamos que no hay ya un usuario con ese email o número de proveedor user = User.get_by_email(email) np = User.get_by_numero(numero_proveedor) no_p = Proveedor.get_by_numero(numero_proveedor) if not no_p: error = f'El número de proveedor {numero_proveedor} no está dado de alta. Favor de contactar al Administrador' elif np is not None: error = f'El número de proveedor {numero_proveedor} ya está siendo utilizado por otro usuario' elif user is not None: error = f'El email {email} ya está siendo utilizado por otro usuario' else: # Creamos el usuario y lo guardamos user = User(name=name, email=email, numero_proveedor=numero_proveedor) user.set_password(password) user.save() # Dejamos al usuario logueado login_user(user, remember=True) next_page = request.args.get('next', None) if not next_page or url_parse(next_page).netloc != '': next_page = url_for('post_form') return redirect(next_page) return render_template("signup_form.html", form=form, error=error)
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_proveedor(proveedor_id): if 'id' in session: id = session['id'] try: proveedor = Proveedor.get(Proveedor.id == proveedor_id) return jsonify(proveedor.to_json()) except Proveedor.DoesNotExist: abort(404) return jsonify({'message': 'KO'})
def delete_proveedor(proveedor_id): if 'id' in session: id = session['id'] try: proveedor = Proveedor.get(Proveedor.id == proveedor_id) producto = Producto.select().where( Producto.proveedor == proveedor_id) for Producto in producto: producto.delete_instance() proveedor.delete_instance() return jsonify({'message': 'OK'}) except Proveedor.DoesNotExist: abort(404) return jsonify({'message': 'KO'})
def put_proveedor(proveedor_id): if 'id' in session: id = session['id'] proveedor = Proveedor.get(Proveedor.id == proveedor_id) proveedor.nombre = request.json.get('nombre', proveedor.nombre) proveedor.descripcion = request.json.get('descripcion', proveedor.descripcion) if proveedor.save(): return jsonify(proveedor.to_json()) else: abort(422) 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 post_proveedor(): if 'id' in session: id = session['id'] if not request.json: abort(400) nombre = request.json.get('nombre') descripcion = request.json.get('descripcion') proveedor = Proveedor.new(nombre, descripcion) if proveedor is None: abort(422) if proveedor == "error": abort(406) return jsonify(proveedor.to_json()) return jsonify({'message': 'KO'})
def get_productos(): if 'id' in session: id = session['id'] productos = Producto.select().join(Categoria).join(Inventario).where( Inventario.usuario == id) productos = [ Producto.to_json( Categoria.get(Categoria.id == Producto.categoria).add_ok(), Proveedor.get(Proveedor.id == Producto.proveedor).to_json()) for Producto in productos ] identificador = Producto.select().join(Categoria).join( Inventario).where(Inventario.usuario == id) identificador = [Producto.iden() for Producto in identificador] diccionario = {} for x in range(len(productos)): diccionario[identificador[x]] = productos[x] return jsonify(diccionario) return jsonify({'message': 'KO'})
def post_producto(): if 'id' in session: id = session['id'] if not request.json: abort(400) nombre = request.json.get('nombre') descripcion = request.json.get('descripcion') categoria = request.json.get('categoria') proveedor = request.json.get('proveedor') producto = Producto.new(nombre, descripcion, categoria, proveedor) if producto is None: abort(422) if producto == "error": abort(406) categoria = Categoria.get(Categoria.id == producto.categoria) proveedor = Proveedor.get(Proveedor.id == producto.proveedor) return jsonify( producto.to_json(categoria.add_ok(), proveedor.to_json())) return jsonify({'message': 'KO'})