Ejemplo n.º 1
0
 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
Ejemplo n.º 2
0
 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
Ejemplo n.º 3
0
 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
Ejemplo n.º 4
0
 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