def buscaPaciente(self): try: if Adaptador.mac != None: #Limpiar los campos self.ui.nombre.setText("") self.ui.ID.setText("") idP = str(self.ui.busqueda.toPlainText()) tiP = self.tids[self.ui.ti.currentIndex()] paciente = AplicacionBitalino.consultarPacientePorId(idP, tiP) print(paciente) if paciente != None: self.ui.nueva_medicion.setEnabled(True) self.ui.nombre.setText(paciente.nombres + " " + paciente.apellidos) self.ui.ID.setText(paciente.id) self.ui.graficaSenales.set_paciente(paciente) AplicacionBitalino.agregarDiagnostico(None, paciente.id) diagnostico = AplicacionBitalino.consultarMaxIdDiagnostrico() self.ui.graficaSenales.set_diagnostico(diagnostico) self.ui.actionVer_historial.setEnabled(True) else: QtGui.QMessageBox.about(self, "INFO", "No se ha encontrado un paciente") else: QtGui.QMessageBox.about(self, "INFO", "No ha conectado un dispositivo de lectura") except Exception as e: raise e
def cargarSenal(self): senal_id = self.ui.senales_list.currentItem().text().split(" ")[2] data = AplicacionBitalino.consultarSenal(str(senal_id)) pylab.plot(data) pylab.ylabel("Pulso") pylab.xlabel("Tiempo") pylab.show()
def prepararMediciones(self): self.ui.senales_list.clear() diagnostico_id = self.ui.diagnosticos_list.currentItem().text().split(" ")[1] #print str(diagnostico_id) senales = AplicacionBitalino.consultarSenalesDelDiagnostico(str(diagnostico_id)) for s in senales: self.ui.senales_list.addItem("Senal No: " + str(s.id))
def SinwaveformGenerator(self): #global values,T1,Konstant,T0,q if(not self.q.empty()): a = self.q.get() #agregando el dato al arreglo para guardar en la base de datos self.segmento_senal.append(a) #Agregando al values para que sea graficado self.values.append(a) #verificar si hay que guardar el segmento de la senal if(len(self.segmento_senal) == self.longitud_segmento): #guardar la senal AplicacionBitalino.agregarSenal( self.senal_id, self.orden_senal, self.segmento_senal,AplicacionBitalino.diagnostico_id) self.orden_senal+=1 self.segmento_senal = [] #agregando el dato al arreglo para graficar else: print "is empty"
def importarPacientes(self): try: errores=AplicacionBitalino.importarPacientes("../pacientes.txt") if(len(errores)==0): QtGui.QMessageBox.about(self, "ACCION", "Se ha terminado de importar el archivo de pacientes") else: msg="\n".join(errores) QtGui.QMessageBox.about(self, "ERROR", "Se ha terminado de importar el archivo de pacientes\n"+ "No se pudieron importar los siguientes pacientes: \n"+msg) except Exception as e: QtGui.QMessageBox.about(self, "ERROR DE ARCHIVO", "El archivo pacientes no existe")
def __init__(self, idPaciente, tiPaciente, *args, **kwargs): super(DiagnosticoWindow, self).__init__(*args, **kwargs) self.ui = DiagnosticoPaciente() self.ui.setupUi(self) self.idP= idPaciente self.tiP=tiPaciente self.ui.TI.setText(self.tiP) ; self.ui.TI.setEnabled(False) self.ui.IDp.setText(self.idP) ; self.ui.IDp.setEnabled(False) paciente=AplicacionBitalino.consultarPacientePorId(self.idP, self.tiP) self.ui.nombreP.setText(paciente.nombres+" "+paciente.apellidos) self.ui.Guardar.clicked.connect(self.actualizarDiagnostico)
def __init__(self, idPaciente, tiPaciente, *args, **kwargs): super(HistorialPacientesWindow, self).__init__(*args, **kwargs) self.ui = HistorialPaciente() self.ui.setupUi(self) self.idP= idPaciente self.tiP=tiPaciente paciente=AplicacionBitalino.consultarPacientePorId(self.idP, self.tiP) self.ui.nombre_paciente_lbl.setText(paciente.nombres+" "+paciente.apellidos + " - " + self.idP) self.prepararVentanas() self.ui.diagnosticos_list.clicked.connect(self.prepararMediciones) self.ui.cargar_btn.clicked.connect(self.cargarSenal)
def enviarPaciente(self): idP = str(self.ui.idp.toPlainText()) ti = self.tids[self.ui.ti.currentIndex()] name, last=str(self.ui.name.toPlainText()), str(self.ui.last.toPlainText()) gender, b=self.gender[self.ui.gender.currentIndex()], self.ui.dateEdit.date() ; birth="" if(b.day()<10): birth+="0"+str(b.day()) else: birth+=str(b.day()) if (b.month()<10): birth+="/"+"0"+str(b.month()) else: birth+="/"+str(b.month()) birth+="/"+str(b.year())[2:4] ; print(birth) ; age=str(self.ui.spinBox.value()); phone=str(self.ui.phone.toPlainText()) try: if(AplicacionBitalino.validaDatos(idP, name, last, age, phone, b.year())): AplicacionBitalino.agregarPaciente(idP,ti, name, last, gender, birth, age, phone) QtGui.QMessageBox.about(self, "ACCION", "El paciente ha sido agregado correctamente") else: QtGui.QMessageBox.about(self, "DATOS CORRUPTOS", "Por favor revise los datos ingresados") except Exception as e: QtGui.QMessageBox.about(self, "ERROR ", e.message)
def actualizarDiagnostico(self): comentarios=str(self.ui.textEdit.toPlainText()) #AplicacionBitalino.agregarDiagnostico(comentarios, self.idP) AplicacionBitalino.actualizarDiagnostico(comentarios, self.idP) self.close()
def prepararVentanas(self): diagnosticos = AplicacionBitalino.consultarDiagnosticosPaciente(self.idP) for d in diagnosticos: self.ui.diagnosticos_list.addItem("No. " + str(d.id) + " " + str(d.comentarios))
def nuevaMedicion(self): self.graficaSenales.orden_senal = 0 self.graficaSenales.senal_id = AplicacionBitalino.consultarMaxIdSenal() + 1 self.graficaSenales.nueva_medicion()
from Persistencia.Base import * from Logica.AplicacionBitalino import AplicacionBitalino engine = create_engine('sqlite:///../Persistencia/BaseDeDatos.db', echo=True) Base = declarative_base() Session = sessionmaker(bind=engine) session = Session() def agregaPaciente( idP, ti, name, lastname, gen, birth,phone, age): Base.metadata.create_all(engine) paciente=Paciente(idP, ti, name, lastname, gen, birth,phone, age) session.add(paciente) session.commit() import datetime birth = "10/06/94" #agregaPaciente("1020793768" , "CC" , "luis" , "felipe" , "M" , datetime.datetime.strptime(birth, "%d/%m/%y").date(), "300210593", 21) AplicacionBitalino.agregarSenal( 2 , 1 , [1,2,3,4,5,6,7,8,9,4,5,6,1,2,3,1,2,3,1,4,5,7,8,5,4,5,1,2,3,5], 1)