class MainWindow(QtGui.QMainWindow): def __init__(self, tipo=None, rut=None): 'Constructor de la clase' QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.show() self.importarDatos() self.setSignals() def setSignals(self): 'Enventos de los elementos de la ventana principal' self.ui.button_buscar.clicked.connect(self.buscarRegistro) self.ui.button_nuevo.clicked.connect(self.nuevoRegistro) self.ui.cbox_comuna.currentIndexChanged.connect(self.seleccionaComuna) self.ui.actionA_adir_Usuario.triggered.connect(self.reg_usuario) self.ui.actionEstablecimiento.triggered.connect(self.agregarEstablecimiento) self.ui.actionComuna.triggered.connect(self.agregarComuna) self.ui.actionInf_1er_Semestre.triggered.connect(self.nuevoInforme) self.ui.cbox_anho1.currentIndexChanged.connect(self.currentIndexChanged2) self.ui.button_buscar_registro.clicked.connect(self.cargarRegistro) self.ui.actionSalir.triggered.connect(self.salir) self.ui.actionModificar_Comuna.triggered.connect(self.mod_Comuna) self.ui.actionModificar_Establecimiento.triggered.connect(self.mod_Establecimiento) def salir(self): self.close() def errorMessage(self, message): """Función que despliega un mensaje de error. @param message""" QtGui.QMessageBox.warning( self, u"ERROR!", message) def nuevoRegistro(self): self.main = nuevoRegistroWindow(self.ui.cbox_establecimiento.currentText(), self.ui.cbox_mes2.currentText(), self.ui.cbox_anho2.currentText()) self.main.show() def buscarRegistro(self): 'Método para buscar los registros de la comuna y establecimiento seleccionado' if(self.ui.cbox_comuna.currentIndex() is not 0): self.ui.groupBox_5.setEnabled(True) self.ui.groupBox_6.setEnabled(True) self.ui.groupBox_2.setEnabled(True) self.ui.texto_comuna_label.setText(self.ui.cbox_comuna.currentText()) self.ui.texto_establecimiento_label.setText(self.ui.cbox_establecimiento.currentText()) self.cargaRegistros() self.datosMesAnho() else: self.errorMessage(u"Comuna no seleccionada") def cargarRegistro(self): if(self.ui.cbox_anho1.currentIndex() is not 0): self.main = registroCargadoWindow(self.ui.cbox_establecimiento.currentText(), self.ui.cbox_mes1.currentText(), self.ui.cbox_anho1.currentText()) self.main.show() else: self.errorMessage(u"Año no seleccionado") def cargaRegistros(self): lista_anios = list() idEstablecimiento = controller.obtenerIdEstablecimiento(self.ui.cbox_establecimiento.currentText()) registros = controller.obtenerAnhos(idEstablecimiento) for i in range(len(registros)): lista_anios.append(registros[0].anho) lista_anios_unicos = list(set(lista_anios)) if not registros: self.ui.cbox_anho1.clear() self.ui.cbox_anho1.addItem("--------") else: self.ui.cbox_anho1.clear() self.ui.cbox_anho1.addItem("--------") for i, registro in enumerate(lista_anios_unicos): self.ui.cbox_anho1.addItem(str(registro), i) def datosMesAnho(self): self.ui.cbox_mes2.clear() self.ui.cbox_anho2.clear() meses = ["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"] for i in meses: self.ui.cbox_mes2.addItem(i) for i in range(1990, datetime.date.today().year+1): self.ui.cbox_anho2.addItem(str(i)) def seleccionaComuna(self, index): if(index is not 0): idComuna = controller.obtenerIdComuna(self.ui.cbox_comuna.currentText()) establecimientos = controller.obtenerEstablecimientos(idComuna) self.ui.cbox_establecimiento.clear() for i, establecimiento in enumerate(establecimientos): self.ui.cbox_establecimiento.addItem(establecimiento.nombre, i) else: self.ui.cbox_establecimiento.clear() self.ui.cbox_establecimiento.addItem("--------") def currentIndexChanged2(self, index): if(index != 0 and index != -1): idEstablecimiento = controller.obtenerIdEstablecimiento(self.ui.cbox_establecimiento.currentText()) registros = controller.obtenerMeses(idEstablecimiento, self.ui.cbox_anho1.currentText()) self.ui.cbox_mes1.clear() for i, registro in enumerate(registros): self.ui.cbox_mes1.addItem(registro.mes, i) else: self.ui.cbox_mes1.clear() self.ui.cbox_mes1.addItem("--------") def reg_usuario(self): self.regUsuario = Form_usuario() self.regUsuario.exec_() def agregarEstablecimiento(self): self.regEstablecimiento = Form_establecimiento() self.regEstablecimiento.exec_() def agregarComuna(self): self.regComuna = Form_comuna() self.regComuna.exec_() def mod_Comuna(self): self.modComuna = Modificar_comuna() self.modComuna.exec_() def mod_Establecimiento(self): self.modEstablecimiento = Modificar_establecimiento() self.modEstablecimiento.exec_() def importarDatos(self): comunas = controller.obtenerComunas() self.ui.cbox_comuna.addItem("--------") for i, comuna in enumerate(comunas): self.ui.cbox_comuna.addItem(comuna.nombre, i) self.ui.cbox_establecimiento.addItem("--------") def nuevoInforme(self): self.generarInforme = FormInformeSemestral() self.generarInforme.show()
def reg_usuario(self): self.regUsuario = Form_usuario() self.regUsuario.exec_()