def create(): #Auth check auth.authenticated_or_401() if request.method == "POST": #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'],'instrumento_new')): abort(401) else: form = forms.ValidateInstrument(request.form, skip_unknown_keys=True) if form.validate(): file = request.files['image'] if file: # and allowed_file(file.filename): # filename = new_file_name(file) # file.save(os.path.abspath(UPLOAD_FOLDER+filename)) # # file.save(os.path.abspath(UPLOAD_FOLDER2+filename)) # Instrument.db = get_db() # Instrument.create(request.form, filename) newfile = file.read() Instrument.db = get_db() Instrument.create(request.form, newfile) response_object = {'status': 'success', 'message': 'Se agregó el nuevo instrumento'} else: response_object = {'status': 'warning', 'message': 'Debes subir una imagen para el instrumento.'} else: response_object = {'status': 'warning', 'message': 'Verifica los campos obligatorios y no ingreses nombres no permitidos.'} return jsonify(response_object)
def update(): #Auth check auth.authenticated_or_401() if request.method == "POST": #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'],'instrumento_update')): abort(401) else: post_data = request.form form = forms.ValidateInstrument(post_data, skip_unknown_keys=True) if not form.validate(): response_object = {'status': 'warning', 'message': 'Verifica los campos obligatorios y no ingreses nombres no permitidos.'} else: file = request.files['image'] Instrument.db = get_db() if file: # and allowed_file(file.filename): newfile = file.read() Instrument.update_with_image(post_data, newfile) else: Instrument.update(post_data) response_object = {'status': 'success', 'message': 'Se actualizó el instrumento'} return jsonify(response_object)
def get_image(instrument_id): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'],'instrumento_show')): abort(401) else: Instrument.db = get_db() return Instrument.get_image(instrument_id)['image']
def all(): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'],'instrumento_index')): abort(401) else: Instrument.db = get_db() return jsonify(Instrument.all())
def save(): instrument_id = request.form.get("id") instrument = Instrument.get_by_id(instrument_id) nombre = request.form["nombre"] tipo_instrumento = request.form["tipo"] nombre_ruta = "" # Captura de la imagen if request.files and request.files["image"].filename != "": image = request.files["image"] nombre_ruta = image.filename ruta = os.path.join(upload_route, nombre_ruta) image.save(ruta) else: nombre_ruta = instrument.ruta_imagen tipo_instrumento_id = InstrumentType.get_by_name(tipo_instrumento).id requestEdit = (nombre, tipo_instrumento_id, nombre_ruta) edit_instrument = to_instrumento(requestEdit) Instrument.update(edit_instrument, instrument_id) return redirect(url_for('instrument_index'))
def create(): if not authenticated(session): abort(401) nombre_ruta = "" # Captura de la imagen if request.files: image = request.files["image"] nombre_ruta = secure_filename(image.filename) ruta = os.path.join(upload_route, nombre_ruta) image.save(ruta) nombre = request.form["nombre"] tipo_instrumento = request.form["tipo_instrumento"] tipo_instrumento_id = InstrumentType.get_by_name(tipo_instrumento).id requestNew = (nombre, tipo_instrumento_id, nombre_ruta) new_instrument = to_instrumento(requestNew) Instrument.save(new_instrument) return redirect(url_for('instrument_index'))
def get(self, instrument_id=None): schema = InstrumentSchema() if instrument_id is None: # Index instrument = Instrument.all_with_representative_entities() return schema.dump(instrument, many=True) else: # Profile instrument = Instrument.query.get(instrument_id) return schema.dump(instrument)
def delete(): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'],'instrumento_destroy')): abort(401) else: Instrument.db = get_db() #Obtención de información post_data = request.get_json() #Obtiene el instrumento instrument = Instrument.get(post_data['instrument_id']) #Borrado de imagen try: #Borrado de imagen e instrumento os.remove(os.path.abspath(UPLOAD_FOLDER+instrument['image'])) Instrument.delete(post_data['instrument_id']) except: #Solo borrado de instrumento Instrument.delete(post_data['instrument_id']) return jsonify({'status': 'success', 'message': 'Se eliminó el instrumento correctamente'})
def delete(id): Instrument.delete_by_numero_inventario(id) return redirect(url_for('instrument_index'))
def update(id): instrument = Instrument.get_by_id(id) ruta = url_for('static', filename = 'uploads/' + instrument.ruta_imagen) instrument_type = InstrumentType.get_by_id(instrument.tipo_instrumento_id) instrument_types = InstrumentType.all() return render_template('instrumento/update.html', id = id, nombre = instrument.nombre, tipo = instrument_type, tipos = instrument_types, ruta = ruta)
def show(id): instrument = Instrument.get_by_id(id) ruta = url_for('static', filename = 'uploads/' + instrument.ruta_imagen) instrument_type = InstrumentType.get_by_id(instrument.tipo_instrumento_id) return render_template('instrumento/show.html', nombre = instrument.nombre, tipo = instrument_type.nombre, ruta = ruta, id = id)
def index(): instrumentos = Instrument.all() return render_template('instrumento/index.html', instrumentos=instrumentos)
def validate(self): return not Instrument.any_inventory_number(self.number)
def save(self): return Instrument.create(self.fields)