def estudio(_id): estudio = tabla_estudios.find_one({'_id': ObjectId(_id)}) creador = tabla_usuarios.find_one({'usuario': estudio['usuario']}) if 'user' in session: return render_template('estudio.html', title=estudio['titulo'], estudio=estudio, control_center=True, creador=creador, css=True) else: return render_template('estudio.html', title=estudio['titulo'], estudio = estudio, control_center = False, creador = creador, css = True)
def home(): form = BuscadorForm() form2 = Add_colaboradorForm() if form.validate_on_submit(): estudio = tabla_estudios.find_one({'token': form.token.data}) print(estudio) return redirect(url_for('estudio', _id = estudio['_id'])) return render_template('home.html', title='Home', form =form, legend = 'Holi', css=True, form2 = form)
def borrar_estudio(_id): estudio = tabla_estudios.find_one({'_id': ObjectId(_id)}) tabla_estudios.delete_one({'_id': ObjectId(_id)}) for archivo in estudio['archivos']: if archivo[0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', archivo[0]) os.remove(picture_path) return redirect(url_for('historial'))
def validate_token(self, token): estudio_token = tabla_estudios.find_one({'token': token.data}) print(estudio_token) print(not (estudio_token)) print('Se imprimio el token') if not (estudio_token): print('hola') raise ValidationError( 'Esta clave no existe. Porfavor ingrese otra.')
def historial(): if 'user' in session: limit = 1 page = request.args.get('page', 1, type=int) starting_id = tabla_estudios.find( {'usuario': session['user']}).sort('_id', 1) count = tabla_estudios.count_documents({'usuario': session['user']}) total_pages = ceil(count / limit) mitad = ceil(total_pages/2) hola = tabla_estudios.find_one({'usuario': session['user']}) hola2 = tabla_estudios.find_one({'colaboradores': session['user']}) estudios = [] pages = [] if hola or hola2: if page == 1 or page == total_pages: pages = [] c = 0 if mitad % 2 == 0: print('impar') for i in range(1, total_pages+1): if c < 2 or c == total_pages-1 or c == total_pages-2 or c == mitad-2 or c == mitad or c == mitad-1: pages.append(i) else: pages.append(None) c += 1 print(total_pages) print(c) print(pages) else: print('par') for i in range(1, total_pages+1): if c < 2 or c == total_pages-1 or c == total_pages-2 or c == mitad or c == mitad-1: pages.append(i) else: pages.append(None) c += 1 print(total_pages) print(c) print(pages) else: pages = [] c = 0 for i in range(1, total_pages+1): if c == 0 or c == total_pages-1 or c == page or c == page-1 or c == page-2: pages.append(i) else: pages.append(None) c += 1 print(pages) last_id = starting_id[(page-1)*limit]['_id'] estudios = tabla_estudios.find({'usuario': session['user'], '_id': { '$gte': last_id}}).sort('_id', 1).limit(limit) form = Add_colaboradorForm() form.l_colaborador.choices=[(colaborador, colaborador) for colaborador in tabla_usuarios.find_one({'usuario':session['user']})['colaboradores'][1:]] if form.validate.validate_on_submit(): colaborador = form.l_colaborador.data tabla_estudios.update_one({'usuario': session['user']}, {'$set': {'colaboradores':colaborador}}) if not(estudios): vacio_historial = True else: vacio_historial = False return render_template('historial.html', title='Historial Clinico', control_center=True, estudios=estudios, css=True, pages=pages, current_page=page, vacio_historial = vacio_historial, form = form) else: return redirect(url_for('login'))
def actualizar_estudio(_id): estudio = tabla_estudios.find_one({'_id': ObjectId(_id)}) form = PostForm() if form.validate_on_submit(): n_radiografias = 0 n_tomografias = 0 if form.archivo1.data: if estudio['archivos'][0][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][0][0]) os.remove(picture_path) archivo1, f_ext1 = save_picture(form.archivo1.data, resize=False) else: archivo1, f_ext1 = estudio['archivos'][0][0], estudio['archivos'][0][2] if form.archivo2.data: if estudio['archivos'][1][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][1][0]) os.remove(picture_path) archivo2, f_ext2 = save_picture(form.archivo2.data, resize=False) else: archivo2, f_ext2 = estudio['archivos'][1][0], estudio['archivos'][1][2] if form.archivo3.data: if estudio['archivos'][2][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][2][0]) os.remove(picture_path) archivo3, f_ext3 = save_picture(form.archivo3.data, resize=False) else: archivo3, f_ext3 = estudio['archivos'][2][0], estudio['archivos'][2][2] if form.archivo4.data: if estudio['archivos'][3][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][3][0]) os.remove(picture_path) archivo4, f_ext4 = save_picture(form.archivo4.data, resize=False) else: archivo4, f_ext4 = estudio['archivos'][3][0], estudio['archivos'][3][2] if form.archivo5.data: if estudio['archivos'][4][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][4][0]) os.remove(picture_path) archivo5, f_ext5 = save_picture(form.archivo5.data, resize=False) else: archivo5, f_ext5 = estudio['archivos'][4][0], estudio['archivos'][4][2] if form.archivo6.data: if estudio['archivos'][5][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][5][0]) os.remove(picture_path) archivo6, f_ext6 = save_picture(form.archivo6.data, resize=False) else: archivo6, f_ext6 = estudio['archivos'][5][0], estudio['archivos'][5][2] if form.archivo7.data: if estudio['archivos'][6][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][6][0]) os.remove(picture_path) archivo7, f_ext7 = save_picture(form.archivo7.data, resize=False) else: archivo7, f_ext7 = estudio['archivos'][6][0], estudio['archivos'][6][2] if form.archivo8.data: if estudio['archivos'][7][0] != 'nada': picture_path = os.path.join( app.root_path, 'static/estudio-pic', estudio['archivos'][7][0]) os.remove(picture_path) archivo8, f_ext8 = save_picture(form.archivo8.data, resize=False) else: archivo8, f_ext8 = estudio['archivos'][7][0], estudio['archivos'][7][2] archivos = [(archivo1, '1', f_ext1), (archivo2, '2', f_ext2), (archivo3, '3', f_ext3), (archivo4, '4', f_ext4), (archivo5, '5', f_ext5), (archivo6, '6', f_ext6), (archivo7, '7', f_ext7), (archivo8, '8', f_ext8)] for archivo in archivos: if archivo[0] != 'nada': if archivo[1] == '6' or archivo[1] == '7' or archivo[1] == '8': n_tomografias += 1 n_radiografias += 1 cambios = { 'usuario': session['user'], 'titulo': form.titulo.data, 'nombre_paciente': form.nombre_paciente.data, 'apellido_paciente': form.apellido_paciente.data, 'edad': form.edad.data, 'nombre_doctor': form.nombre_doctor.data, 'apellido_doctor': form.apellido_doctor.data, 'contenido': form.contenido.data, 'diagnostico': form.diagnostico.data, 'comentarios': form.comentarios.data, 'fecha': time.strftime("%d-%m-%Y"), 'archivos': archivos, 'n_radiografia': n_radiografias, 'n_tomografia': n_tomografias } tabla_estudios.update_one( {'usuario': session['user']}, {'$set': cambios}) flash('Cambios Realizados Satisfactoriamente!', 'success') return redirect(url_for('estudio', _id=estudio['_id'])) elif request.method == 'GET': form.apellido_doctor.data = estudio['apellido_doctor'] form.apellido_paciente.data = estudio['apellido_paciente'] form.edad.data = estudio['edad'] form.comentarios.data = estudio['comentarios'] form.contenido.data = estudio['contenido'] form.diagnostico.data = estudio['diagnostico'] form.nombre_doctor.data = estudio['nombre_doctor'] form.nombre_paciente.data = estudio['nombre_paciente'] form.titulo.data = estudio['titulo'] form.archivo1.data = estudio['archivos'][0][0] form.archivo2.data = estudio['archivos'][1][0] form.archivo3.data = estudio['archivos'][2][0] form.archivo4.data = estudio['archivos'][3][0] form.archivo5.data = estudio['archivos'][4][0] form.archivo6.data = estudio['archivos'][5][0] form.archivo7.data = estudio['archivos'][6][0] form.archivo8.data = estudio['archivos'][7][0] return render_template('create_post.html', title='Actualizar Estudio', control_center=True, form=form, css=True, legend='Actualizar Estudio')
def validate_token(self, token): estudio_token = tabla_estudios.find_one({'token': token.data}) if not (estudio_token): raise ValidationError( 'Esta clave no existe. Porfavor ingrese otra.')