Пример #1
0
 def getProgramacionCompleta(self, datoConsulta):
     con = sqlConnection()
     cursorObj = con.cursor()
     # se seleccionan variables de la tabla programacion_vacunas y se unen los valores que coincidan con el método INNER JOIN
     cursorObj.execute(
         '''SELECT pc.noId, pc.nombre, pc.apellido, pc.direccion, pc.telefono, pc.correo, pgv.fechaProgramada, pgv.horaProgramada, lv.noLote, lv.fabricante  FROM programacion_vacunas pgv 
                         INNER JOIN pacientes pc ON (pc.noid = pgv.noid) 
                         INNER JOIN lote_vacunas lv ON (lv.noLote = pgv.noLote)
                         ORDER BY {}'''.format(datoConsulta))
     citasProgramadas = cursorObj.fetchall()
     con.close()
     if len(citasProgramadas) != 0:
         listaDeCitas = []
         for resultado in citasProgramadas:
             self.persona = model.Persona()
             self.persona.noId = resultado[0]
             self.persona.nombre = resultado[1]
             self.persona.apellido = resultado[2]
             self.persona.direccion = resultado[3]
             self.persona.telefono = resultado[4]
             self.persona.correo = resultado[5]
             self.programacion = model.ProgramacionDeVacunas()
             self.programacion.fechaProgramada = resultado[6]
             self.programacion.horaProgramada = resultado[7]
             self.lote = model.Lote()
             self.lote.noLote = resultado[8]
             self.lote.fabricante = resultado[9]
             listaDeCitas.append(
                 [self.persona, self.programacion, self.lote])
         return listaDeCitas
     else:
         return False
Пример #2
0
 def getProgramacionIndividual(self, id):
     con = sqlConnection()
     cursorObj = con.cursor()
     # se seleccionan variables de la tabla programacion_vacunas y se unen los valores que coincidan con el método INNER JOIN
     cursorObj.execute(
         '''SELECT pc.noId, pc.nombre, pc.apellido, pc.direccion, pc.telefono, pc.correo, pgv.fechaProgramada, pgv.horaProgramada, lv.noLote, lv.fabricante  FROM programacion_vacunas pgv 
                         INNER JOIN pacientes pc ON (pc.noid = pgv.noid) 
                         INNER JOIN lote_vacunas lv ON (lv.noLote = pgv.noLote)
                         WHERE pgv.noId = {}'''.format(id))
     resultado = cursorObj.fetchone()
     con.close()
     if resultado != None:
         self.persona = model.Persona()
         self.persona.noId = resultado[0]
         self.persona.nombre = resultado[1]
         self.persona.apellido = resultado[2]
         self.persona.direccion = resultado[3]
         self.persona.telefono = resultado[4]
         self.persona.correo = resultado[5]
         self.programacion = model.ProgramacionDeVacunas()
         self.programacion.fechaProgramada = resultado[6]
         self.programacion.horaProgramada = resultado[7]
         self.lote = model.Lote()
         self.lote.noLote = resultado[8]
         self.lote.fabricante = resultado[9]
         return self.persona, self.programacion, self.lote
     return False
Пример #3
0
 def getCitasAProgramar(self):
     con = sqlConnection()
     cursorObj = con.cursor()
     cursorObj.execute(
         '''SELECT pgv.*, plv.fechaInicio, plv.fechaFinal, pc.correo, lv.fabricante FROM programacion_vacunas pgv 
                     INNER JOIN plan_vacunacion plv ON (plv.idPlan = pgv.idPlan) 
                     INNER JOIN pacientes pc ON (pc.noid = pgv.noid) 
                     INNER JOIN lote_vacunas lv ON (lv.noLote = pgv.noLote) 
                     WHERE fechaProgramada IS NULL''')
     citaAProgramar = cursorObj.fetchall()
     con.close()
     if len(citaAProgramar) != 0:
         listaDeCitas = []
         for resultado in citaAProgramar:
             self.programacion = model.ProgramacionDeVacunas()
             self.programacion.idCita = resultado[0]
             self.programacion.noId = resultado[1]
             self.programacion.noLote = resultado[2]
             self.programacion.idPlan = resultado[3]
             self.programacion.ciudadVacunacion = resultado[4]
             self.programacion.fechaProgramada = resultado[5]
             self.programacion.horaProgramada = resultado[6]
             self.plan = model.PlanDeVacunacion()
             self.plan.fechaInicio = resultado[7]
             self.plan.fechaFinal = resultado[8]
             self.persona = model.Persona()
             self.persona.correo = resultado[9]
             self.lote = model.Lote()
             self.lote.fabricante = resultado[10]
             listaDeCitas.append(
                 [self.programacion, self.plan, self.persona, self.lote])
         return listaDeCitas
     else:
         return False
     return citaAProgramar
Пример #4
0
 def __init__(self):
     super(mywindow, self).__init__()
     self.ui = Ui_crearUsuario()
     self.ui.setupUi(self)
     self.persona = model.Persona()
     self.logicaPersona = logic.Persona()
     self.ui.pushButton.clicked.connect(self.btnBuscarClicked)
     self.ui.pushButton_2.clicked.connect(self.btnGuardarClicked)
Пример #5
0
 def abrir_consultarAfiliado(self):
     self.crearConsultarAfiliadoWindow = QtWidgets.QMainWindow()
     self.ui = Ui_ConsultarUsuario()
     self.ui.setupUi(self.crearConsultarAfiliadoWindow)
     self.crearConsultarAfiliadoWindow.show()
     self.persona = model.Persona()
     self.logicaPersona = logic.Persona()
     self.ui.BuscarNoIdConsultaUsuario.clicked.connect(
         self.BuscarNoIdConsultaUsuarioClicked)
Пример #6
0
 def abrir_crearVacunado(self):
     self.crearVacunadoWindow = QtWidgets.QMainWindow()
     self.ui = Ui_MainWindow()
     self.ui.setupUi(self.crearVacunadoWindow)
     self.crearVacunadoWindow.show()
     self.persona = model.Persona()
     self.logicaPersona = logic.Persona()
     self.ui.pushButton.clicked.connect(self.btnBuscarClicked)
     self.ui.pushButton_2.clicked.connect(self.btnGuardarClicked)
Пример #7
0
 def __init__(self):
     super(PropMainWindow, self).__init__()
     self.ui = Ui_PropMainWindow()
     self.ui.setupUi(self)
     self.persona = model.Persona()
     self.logicaPersona = logic.Persona()
     self.lote = model.Lote()
     self.logicaLote = logic.Lote()
     self.ui.actionCrear_5.triggered.connect(self.abrir_crearVacunado)
     self.ui.actionCrear.triggered.connect(self.abrir_crearLote)
     self.ui.actionConsultar_Afiliado.triggered.connect(
         self.abrir_consultarAfiliado)
     self.ui.DocumentacionUsuario.clicked.connect(self.ayudaUsuario)
Пример #8
0
 def getPacientesAVacunar(self, edadMinima, edadMaxima):
     con = sqlConnection()
     cursorObj = con.cursor()
     # Se toman datos de la tabla paciente según un rango de edad tomado de los valores de (planVacunacion)
     cursorObj.execute(
         '''SELECT noId, ciudad, CAST((julianday("now") - julianday(fechaNacimiento))/365.25 as INTEGER) as Edad FROM pacientes 
                         WHERE (Edad >= {}) AND (Edad <= {}) AND vacunado = "N" AND fechaDesafiliacion is Null'''
         .format(edadMinima, edadMaxima))
     resultados = cursorObj.fetchall()
     con.close()
     if len(resultados) != 0:
         listaDePacientes = []
         for resultado in resultados:
             self.persona = model.Persona()
             self.persona.noId = resultado[0]
             self.persona.ciudad = resultado[1]
             self.persona.edad = resultado[2]
             listaDePacientes.append(self.persona)
         return listaDePacientes
     else:
         return False
Пример #9
0
 def imprimirMenu(self):
     # Se genera un bucle que solo se detiene cunado (opcion) sea igual a 4
     while True:
         opcion = input(
             'Ingrese el número de la opcion que desea realizar:\n' +
             '1. Crear la programación de vacunas\n' +
             '2. Consultar la programación de vacunas\n' +
             '3. Consultar vacunación de un paciente\n' + '4. Atras\n')
         # Si la variable (opcion) no esta vacía se convertirá a un número entero
         if opcion != '':
             opcion = int(opcion)
             # Si (opcion) es igual a 1, se inicia la función programacionDeVacunacion()
             if opcion == 1:
                 message = self.logicaProgramacion.crearProgramacion(
                     self.pedirFechaInicio())
                 if message[0]:
                     print('{}\n{}\n'.format(message[0], message[1]))
                 else:
                     print(message[1] + '\n')
             elif opcion == 2:
                 # se inicia un bucle para obtener un dato de consulta según lo elija el usuario, este bucle solo se detendrá cuando (opcion) sea 11
                 while True:
                     opcion = input(
                         'Por que campo desea organizar la consulta:\n' +
                         '1. Número de Identificación\n' + '2. Nombre\n' +
                         '3. Apellido\n' + '4. Dirección\n' +
                         '5. Teléfono\n' + '6. Correo\n' +
                         '7. Fecha Programada\n' + '8. Hora Programada\n' +
                         '9. Número de lote\n' + '10. Fabricante\n' +
                         '11. Salir de la consulta\n' + '')
                     # Si la variable (opcion) no esta vacía se convertirá a un número entero
                     if opcion != '':
                         opcion = int(opcion)
                         # Se realiza una selección para organizar la consulta según (opcion) digitada por el usuario
                         if 1 <= opcion <= 10:
                             datoConsulta = opcion - 1
                         elif opcion == 11:
                             break
                         else:
                             continue
                     else:
                         continue
                     # Se llama a la función consultarProgramacionCompleta() con la entrada (datoConsulta)
                     citasProgramadas = self.logicaProgramacion.consultarProgramacionCompleta(
                         datoConsulta)
                     if citasProgramadas:
                         for cita in citasProgramadas:
                             persona = cita[0]
                             programacion = cita[1]
                             lote = cita[2]
                             print("No. Identificación: ", persona.noId)
                             print("Nombre: ", persona.nombre)
                             print("Apellido: ", persona.apellido)
                             print("Dirección: ", persona.direccion)
                             print("Teléfono: ", persona.telefono)
                             print("Correo: ", persona.correo)
                             print("Fecha programada: ",
                                   programacion.fechaProgramada)
                             print("Hora programada: ",
                                   programacion.horaProgramada)
                             print("Número de lote de vacuna: ",
                                   lote.noLote)
                             print("Fabricante de la vacuna: ",
                                   lote.fabricante)
                             print('\n')
             # Si (opcion) es igual a 3, se inicia la función consultarProgramacionIndividual()
             elif opcion == 3:
                 texto = 'Ingrese a continuación el documento de identidad de la persona cuya cita desea consultar:\n'
                 self.persona = model.Persona()
                 resultado = self.logicaProgramacion.consultarProgramacionIndividual(
                     self.pedirDocumento(texto))
                 if resultado:
                     persona = resultado[0]
                     programacion = resultado[1]
                     lote = resultado[2]
                     print("No. Identificación: ", persona.noId)
                     print("Nombre: ", persona.nombre)
                     print("Apellido: ", persona.apellido)
                     print("Dirección: ", persona.direccion)
                     print("Teléfono: ", persona.telefono)
                     print("Correo: ", persona.correo)
                     print("Fecha programada: ",
                           programacion.fechaProgramada)
                     print("Hora programada: ", programacion.horaProgramada)
                     print("Número de lote de vacuna: ", lote.noLote)
                     print("Fabricante de la vacuna: ", lote.fabricante)
                     print('\n')
                 # se muestra mensaje si (resultado) esta vacío
                 else:
                     print('El paciente no tiene cita.\n')
             # el programa deja el bucle por medio de la función break
             elif opcion == 4:
                 break
         else:
             continue
Пример #10
0
 def __init__(self) -> None:
     self.persona = model.Persona()
     self.logicaPersona = logic.Persona()
Пример #11
0
 def __init__(self) -> None:
     self.persona = model.Persona()
     self.metodosConexionPersona = connect.Persona()
Пример #12
0
 def __init__(self) -> None:
     self.persona = model.Persona()
     self.id = None