コード例 #1
0
ファイル: cobrador.py プロジェクト: dravix/pyventa
  def cobrar(self):
    if len(str(self.leRecibo.text()))>0:
      recibo=float(self.leRecibo.text())
      cambio=recibo-self.total
      if cambio<0:
	self.leRecibo.selectAll()
      else:
	venta=Venta(self.conexion)
	self.retorno=venta.cambiarEstado(self.ventas,1)
	if self.retorno:
	  self.dsbCambio.setValue(cambio)
	  self.wCambio.setVisible(True)
	  self.leRecibo.setEnabled(False)
	  self.tbCobrar.setEnabled(False)
	  #self.tbCerrar.setFocus(True)
	  QTimer.singleShot(10000,self.accept)
  
    
  #def seleccionado(self):
    #if len(self.tabla.selectedIndexes())>0:
      #nrow=(len(self.tabla.selectedIndexes())/self.modelo.columnCount(self))
      #ret = [range(self.modelo.columnCount(self)) for i in range(nrow)]
      #offset=self.tabla.selectedIndexes()[0].row()
      #for index in self.tabla.selectedIndexes():
	  ##print index.row(),index.column()
	  #ret[index.row()-offset][index.column()]=str(index.data().toString())
      #self.retorno=ret
      #self.done(1)
コード例 #2
0
ファイル: reporte.py プロジェクト: dravix/pyventa
    def facturar(self):
	ide=str(self.tVentas.selectedIndexes()[0].data().toString())
	venta=Venta(self.parent.conexion)
	venta.cambiarTipo(ide,1)
	F=Factura(self.parent, ide)
	F.imprimir()
	self.actualizar()
コード例 #3
0
ファイル: cobrador.py プロジェクト: dravix/pyventa
  def iniciar(self):
    self.retorno=False
    venta=Venta(self.conexion)
    total=venta.sumaTotales(" id in ({ide}) and status=0".format(ide=",".join(self.ventas)))
    if total!=None:
      if total[0]==None:
	print "Todas las ventas ya estan pagadas"
	self.reject()
      else:
	self.total=float(total[0])
	self.dsbTotal.setValue(self.total)
	self.modelo.query("""Select notas.id, usuarios.usuario, cajas.nombre,total from notas,usuarios,cajas 
	where status=0 and notas.id in ({ide}) and id_usuario=notas.usuario and cajas.num_caja=caja """.format(ide=",".join(self.ventas)),
	    "id,usuario,caja,total".split(','))
	self.tabla.resizeColumnsToContents()  
	self.leRecibo.selectAll()
コード例 #4
0
ファイル: cventa.py プロジェクト: dravix/pyventa
    def allocate(self,tipo,forma):
#Almacena en la base de datos, l nota con todos sus elementos
      #self.cursor.execute("SELECT count(fecha) from ventas where fecha=CURDATE();")
      #qry=self.cursor.fetchone()
      last=0
      if len(self.parent.basket)>0:
	venta=Venta(conexion=self.parent.conexion)
	if (self.parent.banderas['edicion']!=False):#Si se esta guardando una nota que se reedito
	  last=self.parent.banderas['edicion']
	  self.parent.banderas['edicion']=False
	  ret=venta.actualizar(ide=last,canasta=self.parent.basket,cliente=self.parent.cliente['id'],usuario=self.parent.sesion['usuario']['id_usuario'], caja=self.parent.caja, tipo=tipo,status=forma)

	else: 		#en el caso que se trate de guardar una venta por primera vez
	  ret=venta.guardar(canasta=self.parent.basket,cliente=self.parent.cliente['id'],usuario=self.parent.sesion['usuario']['id_usuario'], caja=self.parent.caja, tipo=tipo,status=forma)
	if  not ret:
	      mb=QtGui.QMessageBox.critical(self, "Error!", "La nota no pudo ser registrada !!")
	      print "Error al registrar la venta"
	      return False
	return ret