def crear(self): """ Da de alta un medicamento nuevo y lo almacena en la base de datos. :return: """ if self.monodroga == None: QtGui.QMessageBox.warning(self, 'Atención', 'No se ha seleccionado ninguna Monodroga de la tabla.', 'Aceptar') else: if ValidarDatos.validarCamposVacios(self.camposRequeridos): medicamento = MedicamentoModel(str(self.lineNombre_Med.text()), self.monodroga, str(self.spinCantidad.value())) if medicamento.guardar(self.sesion): QtGui.QMessageBox.information(self, 'Info', 'El Medicamento fue dado de alta.', 'Aceptar') self.limpiarCampos() self.objectCreated.emit() else: medicamento = MedicamentoModel.buscar(MedicamentoModel.nombre_comercial, self.sesion, str(self.lineNombre_Med.text())).first() if medicamento.getBaja(): medicamento.setBaja(False) medicamento.modificar(self.sesion) QtGui.QMessageBox.information(self, 'Info', 'El Medicamento fue dado de alta.', 'Aceptar') self.limpiarCampos() self.objectCreated.emit() else: QtGui.QMessageBox.critical(self, 'Error', 'El Medicamento ya existe.', 'Aceptar') else: QtGui.QMessageBox.warning(self, 'Atención', 'Hay datos obligatorios que no fueron completados.', 'Aceptar')
def cargarMedicamentos(self): """ Carga la tabla de los medicamentos con los datos de todos los medicamentos disponibles. :return: """ self.cargarObjetos(self.tablaMedicamento, MedicamentoModel.buscarTodos("nombre_comercial", self.sesion).all(), ("nombre_comercial", "id_monodroga", "cantidad_monodroga") )
def cargarMedicamentos(self): """ Carga los datos de los medicamentos en las tablas de la ventana. :return: """ self.cargarObjetos(self.tablaMedicamento, MedicamentoModel.buscarTodos("nombre_comercial", self.sesion).all(), ("nombre_comercial", "id_monodroga", "cantidad_monodroga") )
def cargarMedicamentos(self): """ Carga la tabla de los medicamentos con los datos de todos los medicamentos disponibles. :return: """ self.cargarObjetos( self.tablaMedicamento, MedicamentoModel.buscarTodos("nombre_comercial", self.sesion).all(), ("nombre_comercial", "id_monodroga", "cantidad_monodroga"))
def buscarMedicamento(self): """ Busca y carga en la tabla los datos de un medicamento para un nombre ingresado. :return: """ self.limpiarTabla(self.tablaMedicamento) self.cargarObjetos(self.tablaMedicamento, MedicamentoModel.buscarLike(MedicamentoModel.nombre_comercial, self.sesion, str(self.lineNombre_Med.text())).all(), ("nombre_comercial", "id_monodroga", "cantidad_monodroga") )
def buscarMedicamento(self): """ Busca y carga en la tabla los datos de un medicamento para un nombre comercial ingresado. :return: """ self.limpiarTabla(self.tablaMedicamento) self.cargarObjetos( self.tablaMedicamento, MedicamentoModel.buscarLike(MedicamentoModel.nombre_comercial, self.sesion, str(self.lineNomb_Med.text())).all(), ("nombre_comercial", "id_monodroga", "cantidad_monodroga"))
def modificar(self): """ Modifica los datos del medicamento seleccionado. :return: """ itemActual = self.tablaMedicamento.currentItem() if itemActual != None: if ValidarDatos.validarCamposVacios(self.camposRequeridos): row = itemActual.row() nombre_comercial = str(self.tablaMedicamento.item(row, 0).text()) self.medicamento = MedicamentoModel.buscarAlta(MedicamentoModel.nombre_comercial, self.sesion, nombre_comercial).first() self.medicamento.setCantidadMonodroga(str(self.spinCantidad.value())) self.medicamento.setIdMonodroga(self.monodroga) self.medicamento.modificar(self.sesion) self.showMsjEstado("El Medicamento fue modificado") self.objectModified.emit() self.actualizar() else: self.showMsjEstado("Hay datos obligatorios que no fueron completados.") else: self.showMsjEstado("No se ha seleccionado un Medicamento de la tabla")
def eliminar(self): """ Da de baja el medicamento seleccionado :return: """ itemActual = self.tablaMedicamento.currentItem() if itemActual == None: self.showMsjEstado("No se ha seleccionado ningun Medicamento de la tabla") else: row = itemActual.row() nombre_comercial = str(self.tablaMedicamento.item(row, 0).text()) if self.bajaValida(ProductoModel, ProductoModel.id_medicamento, nombre_comercial): self.medicamento = MedicamentoModel.buscarAlta(MedicamentoModel.nombre_comercial, self.sesion, nombre_comercial).first() self.medicamento.borrar(self.sesion) self.showMsjEstado("El Medicamento ha sido dado de baja.") self.tablaMedicamento.removeRow(row) self.objectDeleted.emit() self.actualizar() else: QtGui.QMessageBox.critical(self, 'Error', 'El Medicamento no puede ser dado de baja, ' 'esta asignado a 1 ó más productos', 'Aceptar')
def modificar(self): """ Modifica los datos del medicamento seleccionado. :return: """ itemActual = self.tablaMedicamento.currentItem() if itemActual != None: if ValidarDatos.validarCamposVacios(self.camposRequeridos): row = itemActual.row() nombre_comercial = str(self.tablaMedicamento.item(row, 0).text()) self.medicamento = MedicamentoModel.buscarAlta(MedicamentoModel.nombre_comercial, self.sesion, nombre_comercial).first() self.medicamento.setCantidadMonodroga(str(self.spinCantidad.value())) self.medicamento.setIdMonodroga(self.monodroga) self.medicamento.modificar(self.sesion) QtGui.QMessageBox.information(self, 'Info', 'El Medicamento fue modificado.', 'Aceptar') self.objectModified.emit() self.actualizar() else: QtGui.QMessageBox.warning(self, 'Atención', 'Hay datos obligatorios que no fueron completados.', 'Aceptar') else: QtGui.QMessageBox.warning(self, 'Atención', 'No se ha seleccionado un Medicamento de la tabla.', 'Aceptar')