コード例 #1
0
 def _validarCampos(self, usuario: str, password: str) -> bool:
     '''
     Comprueba la validez de los campos.
     '''
     if len(usuario) == 0:
         ErrorCampoModal.errorCampoVacio("Usuario")
         return False
     elif len(password) == 0:
         ErrorCampoModal.errorCampoVacio("Password")
         return False
     else:
         return True
コード例 #2
0
 def __init__(self):
     try:
         super(VentanaPrincipal, self).__init__()
     except ConnectionError:
         ErrorCampoModal.errorConexion()
     else:
         self.setupUi(self)
         self.botonCargos.clicked.connect(self._accionCrudCargo)
         self.botonCasos.clicked.connect(self._accionCrudCaso)
         self.botonImputados.clicked.connect(self._accionCrudImputado)
         self.botonPartidos.clicked.connect(self._accionCrudPartido)
         self.botonCancelar.clicked.connect(self.close)
コード例 #3
0
ファイル: accionMysql.py プロジェクト: imbi7py/03Corrupcion
 def _accion(self):
     validos = False
     if self._revisar:
         self._prepararCampos()
         validos = self._validarCampos()
     errorNumero = 0
     if validos or not self._revisar:
         self._conexion.reconnect()
         consulta = self._crearConsulta()
         try:
             ConectarMysql.ejecutar(AccionMysql._conexion, consulta)
         except Exception as error:
             self._resetearAutoIncremento()
             errorNumero = error.errno
             if errorNumero == errorcode.ER_DUP_ENTRY:
                 # entrada duplicada
                 ErrorCampoModal.errorDuplicado(error.msg)
             elif errorNumero == errorcode.ER_ROW_IS_REFERENCED_2:
                 # fk_id en uso
                 ErrorCampoModal.campoReferenciado(error.msg)
             else:
                 ErrorCampoModal.errorDesconocido(error.msg)
             # fin if entrada duplicada
         else:
             ErrorCampoModal.correcto()
         finally:
             self._conexion.close()
         # fin try ejecutar
         if errorNumero == 0:
             self.close()
コード例 #4
0
 def _ver(self):
     '''
     Función para ver un Partido.
     '''
     try:
         ventana = VentanaListarPartidos()
     except ValueError:
         ErrorCampoModal.errorSinRegistros("Partidos")
     else:
         cadena = ventana.label.text()
         cadena = cadena.replace("...", "para verlo")
         ventana.exec_()
         identificador = ventana.verIDRegistro()
         if identificador > 0:
             ventanaVer = VentanaVerPartido(identificador)
             ventanaVer.exec_()
     finally:
         self.close()
コード例 #5
0
 def _borrar(self):
     '''
     Función para borrar un Caso.
     '''
     try:
         ventana = VentanaListarCasos()
     except ValueError:
         ErrorCampoModal.errorSinRegistros("Casos")
     else:
         cadena = ventana.label.text()
         cadena = cadena.replace("...", "para borrarlo")
         ventana.exec_()
         identificador = ventana.verIDRegistro()
         if identificador > 0:
             ventanaBorrar = VentanaBorrarCaso(identificador)
             ventanaBorrar.exec_()
     finally:
         self.close()
コード例 #6
0
    def _validarCampos(self) -> bool:
        '''
        Devuelve True si los campos son válidos.
        '''
        cargo = self._obtenerCampos()
        minimo = 4
        mensaje = "Campo vacío o muy corto: '{}'.\nMínimo {} Caracteres."
        if len(cargo) < minimo:
            errorCM = ErrorCampoModal.errorCampoCorto("Cargo", minimo)
            return False

        return True
コード例 #7
0
    def _validarCampos(self) -> bool:
        '''
        Devuelve True si los campos son válidos.
        '''
        nombre, apellidos, id_partido, id_cargo, grupoRH, fecha = \
            self._obtenerCampos()
        minimo = 2
        if len(nombre) < minimo:
            errorCM = ErrorCampoModal.errorCampoCorto("Nombre", minimo)
            return False
        if len(apellidos) < minimo:
            errorCM = ErrorCampoModal.errorCampoCorto("Apellidos", minimo)
            return False
        if id_partido < 0:
            errorCM = ErrorCampoModal.errorFaltaCampo("un partido político")
            return False
        if id_cargo < 0:
            errorCM = ErrorCampoModal.errorFaltaCampo("un cargo político")
            return False

        return True
コード例 #8
0
def loginVeces() -> bool:
    '''
    Función para hacer un login a la app.
    '''
    try:
        ventana = VentanaEntradaUsuario()
    except ConnectionError:
        ErrorCampoModal.errorConexion()
        raise ConnectionError
    else:
        total = 3
        salida = False
        veces = 0
        while veces in range(total) and not salida:
            ventana.resetear()
            ventana.inputUsuario.setFocus()
            ventana.exec_()
            salida = ventana.verCorrecto()
            veces += 1
            if not salida:
                errorEntrada = ErrorCampoModal("Error en el login")
                if veces != total:
                    mensaje = f"Error en los datos del Usuario\n\nTe quedan {total-veces} intentos"
                else:
                    mensaje = "¡¡¡AAAdiósss!!!"
                errorEntrada.mostrar(mensaje)
            # fin if
        # fin while

        return salida
コード例 #9
0
 def _validarCampos(self) -> bool:
     '''
     Devuelve True si los campos son válidos
     '''
     nombre, siglas, logo = self._obtenerCampos()
     if len(nombre) == 0:
         ErrorCampoModal.errorCampoVacio("Nombre")
         return False
     elif len(siglas) == 0:
         ErrorCampoModal.errorCampoVacio("Siglas")
         return False
     elif len(logo) == 0:
         ErrorCampoModal.errorCampoVacio("Logo")
         return False
     else:
         return True
コード例 #10
0
 def _validarCampos(self) -> bool:
     '''
     Devuelve True si los campos son válidos.
     '''
     credencial, montante = self._obtenerCampos()
     minimo = 4
     if len(credencial) < minimo:
         ErrorCampoModal.errorCampoCorto("Credencial", minimo)
         return False
     elif len(montante) == 0:
         ErrorCampoModal.errorCampoVacio("Montante")
         return False
     else:
         valor = PrepararInputs.pasarMonedaFloat(montante)
         if PrepararInputs.estaValorEntre(valor, self._min, self._max):
             return True
         else:
             cadenaMin = PrepararInputs.pasarFloatMoneda(self._min)
             cadenaMax = PrepararInputs.pasarFloatMoneda(self._max)
             ErrorCampoModal.errorFueraRango("Montante", cadenaMin,
                                             cadenaMax)
             return False
コード例 #11
0
        else:
            self.setWindowTitle("Ver un Cargo")
            self.botonAceptar.setText("Aceptar")
            self.botonCancelar.setEnabled(False)
            self.botonResetear.setEnabled(False)
            self.inputCargo.setReadOnly(True)
        # fin try

    # fin __init__

    def _accion(self):
        self.close()


# fin VentanaVerCargo

if __name__ == "__main__":
    import sys
    try:
        app = QtWidgets.QApplication(sys.argv)
        ventana = VentanaVerCargo(1)
        ventana.show()
        app.exec_()
    except ValueError:
        ErrorCampoModal.errorNoRegistro(id)
    except ConnectionError:
        ErrorCampoModal.errorConexion()
# fin if test

# fin ventanaVerCargo
コード例 #12
0
    @staticmethod
    def ejecutar(conexion: conMysql.MySQLConnection, consulta: str):
        '''
        Dada una conexion Mysql activa, ejecuta una consulta tipo CRUD (SIUD) sin retornar nada
        '''
        cursor = conexion.cursor()
        cursor.execute(consulta)
        conexion.commit()
        cursor.close()

    # fin ejecutar


# fin class ConectarMysql

if __name__ == "__main__":
    import sys
    try:
        app = QtWidgets.QApplication([])
        conexion = ConectarMysql.conectar()
    except ConnectionError:
        ErrorCampoModal.errorConexion()
    else:
        print("Salida exitosa...")
        conexion.close()
        sys.exit()
# fin if test

# fin conMysql.py
コード例 #13
0
if __name__ == "__main__":
    import sys
    try:
        app = QtWidgets.QApplication(sys.argv)
        id = 1
        ventana = VentanaInsertarImputadoCasos(id)
        ventana.show()
        app.exec_()
        try:
            conexion = ConectarMysql.conectar()
            id = 11
            lista = SeleccionarImputados.obtenerImputado(conexion, id)
            conexion.close()
            if len(lista) == 0:
                raise ValueError
            print(lista)
            print(lista[0][1])
        except ValueError:
            ErrorCampoModal.errorNoRegistro(id)
        except ConnectionError:
            ErrorCampoModal.errorConexion()
    except ValueError:
        ErrorCampoModal.errorNoRegistro(id)
    except ConnectionError:
        ErrorCampoModal.errorConexion()
    except IndexError:
        ErrorCampoModal.errorSinRegistros("Casos adecuados")
# fin if test

# fin ventanaInsertarImputadoCasos