Esempio n. 1
0
    def edita_venta(self):
        """
        Funcion que edita una venta
        """
        folio = int(self.ui.folio.text())
        detalle = db_model.obtener_ventas_formulario(folio)
        data1 = self.ui.grilla_prod.model()
        index = self.fila
        producto = str(
            data1.index(index.row(), 0, QtCore.QModelIndex()).data())
        cantidad = int(self.ui.cantidad.text())
        precio = int(self.ui.precio.text())

        try:

            db_model.editar_venta(folio, producto, cantidad, precio)
            detalle = db_model.obtener_ventas_formulario(folio)

            #Creamos el modelo asociado a la tabla
            self.data = QtGui.QStandardItemModel(len(detalle), 4)
            self.data.setHorizontalHeaderItem(0,
                                              QtGui.QStandardItem(u"producto"))
            self.data.setHorizontalHeaderItem(1,
                                              QtGui.QStandardItem(u"cantidad"))
            self.data.setHorizontalHeaderItem(
                2, QtGui.QStandardItem(u"precio unitario"))
            self.data.setHorizontalHeaderItem(3, QtGui.QStandardItem(u"Total"))

            for r, row in enumerate(detalle):
                index = self.data.index(r, 0, QtCore.QModelIndex())
                self.data.setData(index, row['producto_sku'])
                index = self.data.index(r, 1, QtCore.QModelIndex())
                self.data.setData(index, row['cantidad'])
                index = self.data.index(r, 2, QtCore.QModelIndex())
                self.data.setData(index, row['precio_unitario'])
                index = self.data.index(r, 3, QtCore.QModelIndex())
                self.data.setData(index, row['total'])

            self.ui.grilla_prod.setModel(self.data)

        except sqlite3.Error as e:
            msgBox = QtGui.QMessageBox()
            msgBox.setText(u"Error, revise los datos!")
            msgBox.exec_()
Esempio n. 2
0
    def edita_venta(self): 
        """
        Funcion que edita una venta
        """
        folio = int(self.ui.folio.text())
        detalle = db_model.obtener_ventas_formulario(folio)
        data1 = self.ui.grilla_prod.model()
        index = self.fila
        producto = str(data1.index(index.row(), 0, QtCore.QModelIndex()).data())
        cantidad = int(self.ui.cantidad.text())
        precio = int(self.ui.precio.text())
        
        try:
            
            db_model.editar_venta(folio, producto, cantidad, precio)
            detalle = db_model.obtener_ventas_formulario(folio)
                        
            #Creamos el modelo asociado a la tabla
            self.data = QtGui.QStandardItemModel(len(detalle), 4)
            self.data.setHorizontalHeaderItem(
                0, QtGui.QStandardItem(u"producto"))
            self.data.setHorizontalHeaderItem(
                1, QtGui.QStandardItem(u"cantidad"))
            self.data.setHorizontalHeaderItem(
                2, QtGui.QStandardItem(u"precio unitario"))
            self.data.setHorizontalHeaderItem(
                3, QtGui.QStandardItem(u"Total"))           

            for r, row in enumerate(detalle):
                index = self.data.index(r, 0, QtCore.QModelIndex())
                self.data.setData(index, row['producto_sku'])
                index = self.data.index(r, 1, QtCore.QModelIndex())
                self.data.setData(index, row['cantidad'])
                index = self.data.index(r, 2, QtCore.QModelIndex())
                self.data.setData(index, row['precio_unitario'])
                index = self.data.index(r, 3, QtCore.QModelIndex())
                self.data.setData(index, row['total'])               

            self.ui.grilla_prod.setModel(self.data)
            
        except sqlite3.Error as e: 
            msgBox = QtGui.QMessageBox()
            msgBox.setText(u"Error, revise los datos!")
            msgBox.exec_()  
Esempio n. 3
0
    def crear_venta(self): 
        """
        Funcion que crea una venta
        """       
        folio,producto,precio,cantidad=self.obtener_datos()
        try:
            
            db_model.agregar_venta(folio, producto, cantidad, precio)
            detalle = db_model.obtener_ventas_formulario(folio)
            self.ui.comboRut.setEnabled(False)
            self.ui.folio.setText(str(folio))
            self.ui.folio.setEnabled(False)
            
            #Creamos el modelo asociado a la tabla
            self.data = QtGui.QStandardItemModel(len(detalle), 4)
            self.data.setHorizontalHeaderItem(
                0, QtGui.QStandardItem(u"producto"))
            self.data.setHorizontalHeaderItem(
                1, QtGui.QStandardItem(u"cantidad"))
            self.data.setHorizontalHeaderItem(
                2, QtGui.QStandardItem(u"precio unitario"))
            self.data.setHorizontalHeaderItem(
                3, QtGui.QStandardItem(u"Total"))           

            for r, row in enumerate(detalle):
                index = self.data.index(r, 0, QtCore.QModelIndex())
                self.data.setData(index, row['producto_sku'])
                index = self.data.index(r, 1, QtCore.QModelIndex())
                self.data.setData(index, row['cantidad'])
                index = self.data.index(r, 2, QtCore.QModelIndex())
                self.data.setData(index, row['precio_unitario'])
                index = self.data.index(r, 3, QtCore.QModelIndex())
                self.data.setData(index, row['total'])               

            self.ui.grilla_prod.setModel(self.data)
            
        except sqlite3.Error as e: 
            msgBox = QtGui.QMessageBox()
            msgBox.setText(u"Error, revise los datos!")
            msgBox.exec_() 
Esempio n. 4
0
    def crear_venta(self):
        """
        Funcion que crea una venta
        """
        folio, producto, precio, cantidad = self.obtener_datos()
        try:

            db_model.agregar_venta(folio, producto, cantidad, precio)
            detalle = db_model.obtener_ventas_formulario(folio)
            self.ui.comboRut.setEnabled(False)
            self.ui.folio.setText(str(folio))
            self.ui.folio.setEnabled(False)

            #Creamos el modelo asociado a la tabla
            self.data = QtGui.QStandardItemModel(len(detalle), 4)
            self.data.setHorizontalHeaderItem(0,
                                              QtGui.QStandardItem(u"producto"))
            self.data.setHorizontalHeaderItem(1,
                                              QtGui.QStandardItem(u"cantidad"))
            self.data.setHorizontalHeaderItem(
                2, QtGui.QStandardItem(u"precio unitario"))
            self.data.setHorizontalHeaderItem(3, QtGui.QStandardItem(u"Total"))

            for r, row in enumerate(detalle):
                index = self.data.index(r, 0, QtCore.QModelIndex())
                self.data.setData(index, row['producto_sku'])
                index = self.data.index(r, 1, QtCore.QModelIndex())
                self.data.setData(index, row['cantidad'])
                index = self.data.index(r, 2, QtCore.QModelIndex())
                self.data.setData(index, row['precio_unitario'])
                index = self.data.index(r, 3, QtCore.QModelIndex())
                self.data.setData(index, row['total'])

            self.ui.grilla_prod.setModel(self.data)

        except sqlite3.Error as e:
            msgBox = QtGui.QMessageBox()
            msgBox.setText(u"Error, revise los datos!")
            msgBox.exec_()
Esempio n. 5
0
    def __init__(self, parent=None, folio=None, rut=None):
        """
        Formulario para crear y editar cliente.
        Si se recibe la var folio
        entonces se está en modo de edición.
        """
        super(FormVenta, self).__init__(parent)
        self.ui = Ui_Form()
        self.ui.setupUi(self)
        self.ui.id_prod.activated[int].connect(self.onActivated_idprod)

        if folio is None:
            self.ui.aceptar.setText("Agregar")
            self.ui.venta.setText("Terminar Venta")
            self.ui.guardar.setEnabled(False)
            self.ui.aceptar.clicked.connect(self.crear_venta)
            self.ui.venta.clicked.connect(self.crear_venta2)
            rut = db_model.obtener_rut()
            for dato in range(len(rut)):
                self.ui.comboRut.addItem(str(rut[dato][0]))
            idprod = db_model.obtener_idprod()
            for dato in range(len(idprod)):
                self.ui.id_prod.addItem(str(idprod[dato][0]))
        else:
            self.ui.aceptar.setText("Editar Producto")
            self.ui.venta.setText("Terminar")

            detalle = db_model.obtener_ventas_formulario(folio)
            self.ui.comboRut.setEnabled(False)
            self.ui.folio.setText(str(folio))
            self.ui.folio.setEnabled(False)
            self.ui.id_prod.setEnabled(False)
            self.ui.cantidad.setEnabled(False)
            self.ui.precio.setEnabled(False)
            #Creamos el modelo asociado a la tabla
            self.data = QtGui.QStandardItemModel(len(detalle), 4)
            self.data.setHorizontalHeaderItem(0,
                                              QtGui.QStandardItem(u"producto"))
            self.data.setHorizontalHeaderItem(1,
                                              QtGui.QStandardItem(u"cantidad"))
            self.data.setHorizontalHeaderItem(
                2, QtGui.QStandardItem(u"precio unitario"))
            self.data.setHorizontalHeaderItem(3, QtGui.QStandardItem(u"Total"))

            for r, row in enumerate(detalle):
                index = self.data.index(r, 0, QtCore.QModelIndex())
                self.data.setData(index, row['producto_sku'])
                index = self.data.index(r, 1, QtCore.QModelIndex())
                self.data.setData(index, row['cantidad'])
                index = self.data.index(r, 2, QtCore.QModelIndex())
                self.data.setData(index, row['precio_unitario'])
                index = self.data.index(r, 3, QtCore.QModelIndex())
                self.data.setData(index, row['total'])

            self.ui.grilla_prod.setModel(self.data)

            self.ui.grilla_prod.setColumnWidth(0, 100)
            self.ui.grilla_prod.setColumnWidth(1, 100)
            self.ui.grilla_prod.setColumnWidth(2, 100)
            self.ui.grilla_prod.setColumnWidth(3, 100)

            self.ui.aceptar.clicked.connect(self.carga_venta)
            self.ui.guardar.clicked.connect(self.edita_venta)
            self.ui.venta.clicked.connect(self.cerrar)
Esempio n. 6
0
    def __init__(self, parent=None, folio=None,rut=None):
        """
        Formulario para crear y editar cliente.
        Si se recibe la var folio
        entonces se está en modo de edición.
        """
        super(FormVenta, self).__init__(parent)
        self.ui = Ui_Form()
        self.ui.setupUi(self)
        self.ui.id_prod.activated[int].connect(self.onActivated_idprod)

        if folio is None:
            self.ui.aceptar.setText("Agregar")
            self.ui.venta.setText("Terminar Venta")
            self.ui.guardar.setEnabled(False)
            self.ui.aceptar.clicked.connect(self.crear_venta)
            self.ui.venta.clicked.connect(self.crear_venta2)
            rut= db_model.obtener_rut()
            for dato in range(len(rut)):
                self.ui.comboRut.addItem(str(rut[dato][0]))
            idprod= db_model.obtener_idprod()
            for dato in range(len(idprod)):
                self.ui.id_prod.addItem(str(idprod[dato][0]))
        else:
            self.ui.aceptar.setText("Editar Producto")
            self.ui.venta.setText("Terminar")
            
            
            detalle = db_model.obtener_ventas_formulario(folio)
            self.ui.comboRut.setEnabled(False)
            self.ui.folio.setText(str(folio))
            self.ui.folio.setEnabled(False)
            self.ui.id_prod.setEnabled(False)
            self.ui.cantidad.setEnabled(False)
            self.ui.precio.setEnabled(False)
            #Creamos el modelo asociado a la tabla
            self.data = QtGui.QStandardItemModel(len(detalle), 4)
            self.data.setHorizontalHeaderItem(
                0, QtGui.QStandardItem(u"producto"))
            self.data.setHorizontalHeaderItem(
                1, QtGui.QStandardItem(u"cantidad"))
            self.data.setHorizontalHeaderItem(
                2, QtGui.QStandardItem(u"precio unitario"))
            self.data.setHorizontalHeaderItem(
                3, QtGui.QStandardItem(u"Total"))
           

            for r, row in enumerate(detalle):
                index = self.data.index(r, 0, QtCore.QModelIndex())
                self.data.setData(index, row['producto_sku'])
                index = self.data.index(r, 1, QtCore.QModelIndex())
                self.data.setData(index, row['cantidad'])
                index = self.data.index(r, 2, QtCore.QModelIndex())
                self.data.setData(index, row['precio_unitario'])
                index = self.data.index(r, 3, QtCore.QModelIndex())
                self.data.setData(index, row['total'])                

            self.ui.grilla_prod.setModel(self.data)

            self.ui.grilla_prod.setColumnWidth(0, 100)
            self.ui.grilla_prod.setColumnWidth(1, 100)
            self.ui.grilla_prod.setColumnWidth(2, 100)
            self.ui.grilla_prod.setColumnWidth(3, 100)

            self.ui.aceptar.clicked.connect(self.carga_venta)
            self.ui.guardar.clicked.connect(self.edita_venta)
            self.ui.venta.clicked.connect(self.cerrar)