def bajaValida(self, codigo_barra): """ Verifica que el producto no figure en remitos pendientes de pago, facturas liquidadas pendientes de pago o facturas pendientes de liquidación. :param codigo_barra: :return: """ detalleRemito = DetalleRemitoModel.buscarAlta(DetalleRemitoModel.producto, self.sesion, codigo_barra).all() for dr in detalleRemito: remito = RemitoModel.buscarAlta(RemitoModel.numero, self.sesion, dr.getIdRemito()).first() if remito.getCobrado() == None: QtGui.QMessageBox.critical(self, 'Error', 'Existen remitos pendientes de pago ' 'en los que figura dicho Producto.', 'Aceptar') return False detalleFactura = DetalleFacturaModel.buscar(DetalleFacturaModel.producto, self.sesion, codigo_barra).all() for df in detalleFactura: if df.getDescuento() > 0: facturaLiquidacion = FacturaLiquidacionModel.buscar(FacturaLiquidacionModel.nro_factura, self.sesion, df.getIdFactura()).first() if facturaLiquidacion: cobroObraSocial = CobroObraSocialModel.buscar( CobroObraSocialModel.id_factura_liquidacion, self.sesion, facturaLiquidacion.getNumero()).first() if cobroObraSocial == None: QtGui.QMessageBox.critical(self, 'Error', 'Existen facturas liquidadas pendientes' ' de cobro a la obra social en las que figura ' 'dicho Producto.', 'Aceptar') return False else: QtGui.QMessageBox.critical(self, 'Error', 'Existen facturas pendientes de liquidación' ' en las que figura dicho Producto.', 'Aceptar') return False return True
def bajaValida(self, dni): """ Verifica que el cliente no posea remitos sin pagar. :param dni: DNI del cliente para el cual se realiza la verificación. :return: bool """ remito = RemitoModel.buscarAlta(RemitoModel.cliente, self.sesion, dni).all() for r in remito: if not r.getCobrado(): return False return True
def bajaValida(self, dni): """ Verifica que el cliente no posea remitos sin pagar. :param dni: DNI del cliente para el cual se realiza la verificación. :return: bool """ remito = RemitoModel.buscarAlta(RemitoModel.cliente, self.sesion, dni).all() for r in remito: if r.getCobrado() == None: return False return True
def bajaValida(self, codigo_barra): """ Verifica que el producto no figure en remitos pendientes de pago, facturas liquidadas pendientes de pago o facturas pendientes de liquidación. :param codigo_barra: :return: """ detalleRemito = DetalleRemitoModel.buscarAlta( DetalleRemitoModel.producto, self.sesion, codigo_barra).all() for dr in detalleRemito: remito = RemitoModel.buscarAlta(RemitoModel.numero, self.sesion, dr.getIdRemito()).first() if remito.getCobrado() == None: QtGui.QMessageBox.critical( self, 'Error', 'Existen remitos pendientes de pago ' 'en los que figura dicho Producto.', 'Aceptar') return False detalleFactura = DetalleFacturaModel.buscar( DetalleFacturaModel.producto, self.sesion, codigo_barra).all() for df in detalleFactura: if df.getDescuento() > 0: facturaLiquidacion = FacturaLiquidacionModel.buscar( FacturaLiquidacionModel.nro_factura, self.sesion, df.getIdFactura()).first() if facturaLiquidacion: cobroObraSocial = CobroObraSocialModel.buscar( CobroObraSocialModel.id_factura_liquidacion, self.sesion, facturaLiquidacion.getNumero()).first() if cobroObraSocial == None: QtGui.QMessageBox.critical( self, 'Error', 'Existen facturas liquidadas pendientes' ' de cobro a la obra social en las que figura ' 'dicho Producto.', 'Aceptar') return False else: QtGui.QMessageBox.critical( self, 'Error', 'Existen facturas pendientes de liquidación' ' en las que figura dicho Producto.', 'Aceptar') return False return True