示例#1
0
 def add_patient(self):
     sql_con = sqlite.sqlite_connector()
     if (len(self.dni.text()) < 9
         ):  # Major que 9 no pot ser perque està controlat a l'interfície
         QtWidgets.QMessageBox.critical(self, 'ERROR',
                                        "Introduce un DNI válido.")
     elif (self.dni_letters[int(self.dni.text()[:-1]) % 23] !=
           self.dni.text()[-1]):
         QtWidgets.QMessageBox.critical(self, 'ERROR',
                                        "Letra del DNI errónea")
     elif (self.nom.text() == ""):
         QtWidgets.QMessageBox.critical(
             self, 'ERROR', "Es obligatorio introducir un nombre.")
     elif (not self.check_mail):
         QtWidgets.QMessageBox.critical(self, 'ERROR',
                                        "El e-mail no és correcto.")
     else:
         try:
             sql_con.add_patient(self.dni.text(), self.nom.text(),
                                 self.cognom.text(),
                                 self.medicos.currentText(),
                                 self.direccio.text(), self.telefon.text(),
                                 self.mail.text(), self.sip.text(),
                                 self.altura.text(), self.pes.text(),
                                 self.naiximent.text(),
                                 self.hombre.isChecked(),
                                 self.diagnostic.text(),
                                 self.fase.currentIndex(), self.imc.text(),
                                 self.grasa.text(),
                                 self.medicacio.toPlainText(),
                                 photo_to_blob(self.fotoCara.pixmap()),
                                 photo_to_blob(self.fotoCuerpo.pixmap()))
             QtWidgets.QMessageBox.information(
                 self, 'Paciente añadido',
                 "¡El paciente ha sido añadido con éxito!")
             if comprobation_message('Añadir otro paciente',
                                     '¿Quieres añadir otro paciente?'
                                     ):  # If OK is clicked in the button
                 self.dni.setText("")
                 self.nom.setText("")
                 self.cognom.setText("")
             else:
                 self.close()
         except sqlite.sqlite3.IntegrityError as e:
             QtWidgets.QMessageBox.critical(
                 self, 'ERROR', "Ya existe un paciente con este DNI")
             print(e)
         finally:
             sql_con.close()
示例#2
0
    def save_edit(self):
        self.set_editable_text(False) # Desactivem l'edició

        sql_con = sqlite.sqlite_connector()

        if (len(self.dni.text()) < 9):  # Major que 9 no pot ser perque està controlat a l'interfície
            QtWidgets.QMessageBox.critical(self, 'ERROR', "Introduce un DNI válido.")
        if(self.nom.text() == ""):
            QtWidgets.QMessageBox.critical(self, 'ERROR', "Es obligatorio introducir un nombre.")
        elif(self.dni_letters[int(self.dni.text()[:-1]) % 23] != self.dni.text()[-1]):
            QtWidgets.QMessageBox.critical(self, 'ERROR', "Letra del DNI errónea")
        else:
            try:
                sql_con.edit_patient(self.dni.text(), self.nom.text(), self.cognom.text(), self.medicos.currentText(), self.direccio.text(),
                                    self.telefon.text(), self.mail.text(), self.sip.text(), self.altura.text(), self.pes.text(),
                                    self.naiximent.text(), self.hombre.isChecked(), self.diagnostic.text(), self.fase.currentIndex(),
                                    self.imc.text(), self.grasa.text(), self.medicacio.toPlainText(), photo_to_blob(self.fotoCara.pixmap()),
                                    photo_to_blob(self.fotoCuerpo.pixmap()))
                QtWidgets.QMessageBox.information(self, 'Paciente modificado', "¡El paciente ha sido modificado con éxito!")

                self.newPatientButton.show()
                self.guardarButton.hide()
                self.cancelarButton.hide()
            except sqlite.sqlite3.IntegrityError:
                QtWidgets.QMessageBox.critical(self, 'ERROR', "Ya existe un paciente con este DNI")
            finally:
                sql_con.close()