def insertTelefonoTabla(self):
        numTel = self.winPrincipal.txtTelefono_prov.text()
        tipoTel = str(self.getTipoTelefono())

        modelListTelefono = self.winPrincipal.tvTelefonos_prov.model()
        header = ['ID', 'Tipo', 'Numero']

        if modelListTelefono is not None:
            listTabTel = list(
                self.winPrincipal.tvTelefonos_prov.model().mylist)

            if len(listTabTel) > 0 or listTabTel is not None:
                tuplaTel = ('0', tipoTel, numTel)
                listTabTel.append(tuplaTel)
                tupleTable = tuple(listTabTel)

                tableModel = MyTableModel(self.winPrincipal, tupleTable,
                                          header)
                self.winPrincipal.tvTelefonos_prov.setModel(tableModel)
                self.winPrincipal.tvTelefonos_prov.selectionModel(
                ).currentChanged.connect(self.changeSelectedTableTel)
        else:
            lista = []
            tuplaTel = ('0', tipoTel, numTel)
            lista.append(tuplaTel)

            tableModel = MyTableModel(self.winPrincipal, lista, header)
            self.winPrincipal.tvTelefonos_prov.setModel(tableModel)
            self.winPrincipal.tvTelefonos_prov.selectionModel(
            ).currentChanged.connect(self.changeSelectedTableTel)
            self.winPrincipal.tvTelefonos_prov.setColumnHidden(0, True)
            self.winPrincipal.tvTelefonos_prov.setColumnWidth(1, 36)
            self.winPrincipal.tvTelefonos_prov.setColumnWidth(2, 175)
예제 #2
0
    def cargarTablaSaldos(self):

        parameter = self.winPrincipal.txtFilterPersona_saldos.text()

        if self.winPrincipal.rbProveedores_saldos.isChecked() is True:
            listaProveedores = self.conexionesGenerales.selectProveedor(
                parameter)

            if len(listaProveedores) > 0:
                header = ['ID', 'Apellido', 'Nombre']
                self.tablaModel = MyTableModel(
                    self.winPrincipal.tvPersonas_saldos, listaProveedores,
                    header)
                self.winPrincipal.tvPersonas_saldos.setModel(self.tablaModel)
                self.winPrincipal.tvPersonas_saldos.selectionModel(
                ).currentChanged.connect(self.changeSelectedTable)

                self.winPrincipal.tvPersonas_saldos.setColumnHidden(0, True)
                self.winPrincipal.tvPersonas_saldos.setColumnWidth(1, 120)
                self.winPrincipal.tvPersonas_saldos.setColumnWidth(2, 120)
        else:
            listaClientes = self.conexionesGenerales.selectCliente(parameter)

            if len(listaClientes) > 0:
                header = ['ID', 'Apellido', 'Nombre']
                self.tablaModel = MyTableModel(
                    self.winPrincipal.tvPersonas_saldos, listaClientes, header)
                self.winPrincipal.tvPersonas_saldos.setModel(self.tablaModel)
                self.winPrincipal.tvPersonas_saldos.selectionModel(
                ).currentChanged.connect(self.changeSelectedTable)

                self.winPrincipal.tvPersonas_saldos.setColumnHidden(0, True)
                self.winPrincipal.tvPersonas_saldos.setColumnWidth(1, 120)
                self.winPrincipal.tvPersonas_saldos.setColumnWidth(2, 120)
예제 #3
0
    def cargarTabla(self):
        listaProductos = self.conexionProducto.selectProducto()

        if len(listaProductos) > 0:

            header = ['idPro','Nombre', 'Descripcion', 'PC', 'PV', 'G', 'Estado', 'Cant', 'Cantidad Min',
                      'idMar', 'Marca', 'idRubro', 'Rubro', 'idProv', 'Proveedor']
            self.tablaModel = MyTableModel(self.winPrincipal.tvProductos_p, listaProductos, header)
            self.winPrincipal.tvProductos_p.setModel(self.tablaModel)
            self.winPrincipal.tvProductos_p.selectionModel().currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvProductos_p.setColumnHidden(0, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(1, 200)
            self.winPrincipal.tvProductos_p.setColumnWidth(2, 320)
            self.winPrincipal.tvProductos_p.setColumnWidth(3, 60)
            self.winPrincipal.tvProductos_p.setColumnWidth(4, 60)
            self.winPrincipal.tvProductos_p.setColumnWidth(5, 60)
            self.winPrincipal.tvProductos_p.setColumnHidden(6, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(7, 40)
            self.winPrincipal.tvProductos_p.setColumnHidden(8, True)
            self.winPrincipal.tvProductos_p.setColumnHidden(9, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(10, 130)
            self.winPrincipal.tvProductos_p.setColumnHidden(11, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(12, 130)
            self.winPrincipal.tvProductos_p.setColumnHidden(13, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(14, 130)
예제 #4
0
    def cargarTabla(self):
        listaUsuarios = self.conexionUsuario.selectUsuario()
        if len(listaUsuarios) > 0:

            header = [
                'ID', 'Nombre', 'Apellido', 'Usuario', 'Tipo', 'Contraseña',
                'Email', 'Direccion', 'N°', 'P', 'D', 'iddire', 'idpers'
            ]
            tableModel = MyTableModel(self.winPrincipal.tvUsuarios_u,
                                      listaUsuarios, header)
            self.winPrincipal.tvUsuarios_u.setModel(tableModel)
            self.winPrincipal.tvUsuarios_u.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvUsuarios_u.setColumnHidden(0, True)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(1, 200)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(2, 200)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(3, True)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(4, 80)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(5, True)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(6, 270)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(7, 333)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(8, 50)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(9, True)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(10, True)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(11, True)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(12, True)
예제 #5
0
    def cargarTabla(self):
        parameter = self.winPrincipal.txtFilterClientes_c.text()
        typeParameter = ''

        if self.winPrincipal.cbFilterClientes_c.currentText() == 'Apellido':
            typeParameter = 'cli.apellido'
        else:
            typeParameter = 'p.nombre'

        parameterState = 1
        if self.winPrincipal.cbInactivo_c.isChecked() is True:
            parameterState = 0

        listaClientes = self.conexionCliente.selectCliente(typeParameter, parameter, parameterState)

        if len(listaClientes) > 0:
            header = ['ID','Apellido','Nombre','Email','Direccion', 'N°', 'Piso', 'Dpto', 'iddir', 'idper', 'Estado']
            self.tablaModel = MyTableModel(self.winPrincipal.tvClientes_c, listaClientes, header)
            self.winPrincipal.tvClientes_c.setModel(self.tablaModel)
            self.winPrincipal.tvClientes_c.selectionModel().currentChanged.connect(self.changeSelectedTable)


            self.winPrincipal.tvClientes_c.setColumnHidden(0, True)
            self.winPrincipal.tvClientes_c.setColumnWidth(1, 208)
            self.winPrincipal.tvClientes_c.setColumnWidth(2, 220)
            self.winPrincipal.tvClientes_c.setColumnWidth(3, 280)
            self.winPrincipal.tvClientes_c.setColumnWidth(4, 364)
            self.winPrincipal.tvClientes_c.setColumnWidth(5, 50)
            self.winPrincipal.tvClientes_c.setColumnHidden(6, True)
            self.winPrincipal.tvClientes_c.setColumnHidden(7, True)
            self.winPrincipal.tvClientes_c.setColumnHidden(8, True)
            self.winPrincipal.tvClientes_c.setColumnHidden(9, True)
            self.winPrincipal.tvClientes_c.setColumnHidden(10, True)
        else:
            self.winPrincipal.tvClientes_c.setModel(None)
예제 #6
0
    def cargarTablaCliente(self):
        tipoParametro = ''
        if self.winPrincipal.cbFilterCliente_pag.currentText() == 'Apellido':
            tipoParametro = 'c.apellido'
        elif self.winPrincipal.cbFilterCliente_pag.currentText() == 'Nombre':
            tipoParametro = 'p.nombre'

        parametro = self.winPrincipal.txtFilterPagos_pag.text()

        listaClientes = self.conexionPagos.selectClientes(
            tipoParametro, parametro)
        if len(listaClientes) > 0:
            header = ['ID', 'Apellido', 'Nombre', 'Email']
            tablaModel = MyTableModel(self.winPrincipal.tvCuentaCorriente_pag,
                                      listaClientes, header)
            self.winPrincipal.tvCuentaCorriente_pag.setModel(tablaModel)
            self.winPrincipal.tvCuentaCorriente_pag.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvCuentaCorriente_pag.setColumnHidden(0, True)
            self.winPrincipal.tvCuentaCorriente_pag.setColumnWidth(1, 140)
            self.winPrincipal.tvCuentaCorriente_pag.setColumnWidth(2, 140)
            self.winPrincipal.tvCuentaCorriente_pag.setColumnWidth(3, 207)
        else:
            self.winPrincipal.tvCuentaCorriente_pag.setModel(None)
    def cargarTabla(self):
        listProveedores = self.conexionProveedor.selectProveedor()

        if len(listProveedores) > 0:
            header = [
                'ID', 'Descripcion', 'Nombre', 'Email', 'Web', 'Direccion',
                'N°', 'P', 'D', 'idper', 'iddir'
            ]
            tableModel = MyTableModel(self.winPrincipal.tvProveedores_prov,
                                      listProveedores, header)
            self.winPrincipal.tvProveedores_prov.setModel(tableModel)
            self.winPrincipal.tvProveedores_prov.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvProveedores_prov.setColumnHidden(0, True)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(1, 190)
            if len(listProveedores) > 4:
                self.winPrincipal.tvProveedores_prov.setColumnWidth(2, 177)
            else:
                self.winPrincipal.tvProveedores_prov.setColumnWidth(2, 190)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(3, 263)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(4, 240)

            self.winPrincipal.tvProveedores_prov.setColumnWidth(5, 200)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(6, 50)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(7, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(8, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(9, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(10, True)
    def onClickRestarTelefono(self):
        listTabTel = []

        tipoTel = str(self.getTipoTelefono())
        listTelefonosNew = []

        listTabTel = list(
            self.winPrincipal.tvTelefonos_prov.model().mylist).copy()

        header = ['Id', 'Tipo', 'Numero']
        telDel = [self.telefonoSelected[0], self.telefonoSelected[1], '']
        listTabTel[self.telefonoSelectedRow] = telDel
        tableTelModel = MyTableModel(self.winPrincipal, listTabTel, header)
        self.winPrincipal.tvTelefonos_prov.setModel(tableTelModel)
        self.winPrincipal.tvTelefonos_prov.selectionModel(
        ).currentChanged.connect(self.changeSelectedTableTel)
        self.winPrincipal.tvTelefonos_prov.setRowHidden(
            self.telefonoSelectedRow, True)

        self.winPrincipal.btnCancelarTelefono_prov.setVisible(False)
        self.winPrincipal.txtTelefono_prov.setText('')
        self.winPrincipal.btnRestarTelefono_prov.setEnabled(False)
        self.winPrincipal.tvTelefonos_prov.setEnabled(True)

        self.winPrincipal.btnGuardar_prov.setEnabled(True)
예제 #9
0
    def restarTransaccion(self):

        listTransacciones = list(
            self.winPrincipal.tvDetalleTransaccion_t.model().mylist).copy()

        header = [
            'ID', 'Cantidad', 'idProducto', 'Producto', 'Descripcion',
            'Precio Unit', 'Precio Tot'
        ]

        listTransacciones.remove(self.transaccionSelected)

        if len(listTransacciones) < 1:
            self.winPrincipal.btnAceptar_t.setEnabled(False)
            self.winPrincipal.btnCancelar_t.setEnabled(False)
            self.winPrincipal.tvDetalleTransaccion_t.setModel(None)
        else:
            tableTelModel = MyTableModel(self.winPrincipal, listTransacciones,
                                         header)
            self.winPrincipal.tvDetalleTransaccion_t.setModel(tableTelModel)
            self.winPrincipal.tvDetalleTransaccion_t.selectionModel(
            ).currentChanged.connect(self.changeSelectedTableTransaccion)

        total = float(self.winPrincipal.lblTotal.text())
        total -= float(self.transaccionSelected[6])
        self.winPrincipal.lblTotal.setText("{0:.2f}".format(total))

        self.winPrincipal.btnRestarProducto_t.setEnabled(False)
예제 #10
0
    def cargarTablaProveedores(self):

        parameter = self.winPrincipal.txtFilterCliente_t.text()

        typeParameter = ''
        if self.winPrincipal.cbFilterCliente_t.currentText() == 'Apellido':
            typeParameter = 'prov.descripcion'
        elif self.winPrincipal.cbFilterCliente_t.currentText() == 'Nombre':
            typeParameter = 'p.nombre'

        listProveedores = self.conexionTransacciones.selectProveedores(
            typeParameter, parameter)
        if len(listProveedores) > 0:
            header = ['ID', 'Descripcion', 'Nombre', 'Email']
            tableModel = MyTableModel(self.winPrincipal.tvClientes_t,
                                      listProveedores, header)
            self.winPrincipal.tvClientes_t.setModel(tableModel)
            self.winPrincipal.tvClientes_t.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvClientes_t.setColumnHidden(0, True)
            self.winPrincipal.tvClientes_t.setColumnWidth(1, 130)
            self.winPrincipal.tvClientes_t.setColumnWidth(2, 130)
            self.winPrincipal.tvClientes_t.setColumnWidth(3, 150)
        else:
            self.winPrincipal.tvClientes_t.setModel(None)
예제 #11
0
    def cargarTablaClientes(self):
        parameter = self.winPrincipal.txtFilterCliente_t.text()

        typeParameter = ''
        if self.winPrincipal.cbFilterCliente_t.currentText() == 'Apellido':
            typeParameter = 'c.apellido'
        elif self.winPrincipal.cbFilterCliente_t.currentText() == 'Nombre':
            typeParameter = 'p.nombre'

        listaClientes = self.conexionTransacciones.selectClientes(
            typeParameter, parameter)
        if len(listaClientes) > 0:
            header = ['ID', 'Apellido', 'Nombre', 'Email']
            tablaModel = MyTableModel(self.winPrincipal.tvClientes_t,
                                      listaClientes, header)
            #tablaModel.setHeaderData(3, QtCore.Qt.Horizontal , 'Email', QtCore.Qt.AlignRight)
            #index = QModelIndex()
            #index.data(2)
            #index.column()
            #tablaModel.setData(index, QtCore.QVariant(QtCore.Qt.AlignHCenter), QtCore.Qt.TextAlignmentRole)
            self.winPrincipal.tvClientes_t.setModel(tablaModel)
            self.winPrincipal.tvClientes_t.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)
            #self.winPrincipal.tvClientes_t.model().headerData(2, QtCore.Qt.Horizontal, QtCore.Qt.AlignRight)
            self.winPrincipal.tvClientes_t.setColumnHidden(0, True)
            self.winPrincipal.tvClientes_t.setColumnWidth(1, 130)
            self.winPrincipal.tvClientes_t.setColumnWidth(2, 130)
            self.winPrincipal.tvClientes_t.setColumnWidth(3, 150)

        else:
            self.winPrincipal.tvClientes_t.setModel(None)
예제 #12
0
    def cargarTabla(self):
        #Seteo el dataProvider de la tabla
        listaRubros = self.conexionRubro.selectRubro()
        header = ['ID', 'Rubro']
        self.tablaModel = MyTableModel(self.winRubro.tvRubros_r, listaRubros, header)
        self.winRubro.tvRubros_r.setModel(self.tablaModel)
        self.winRubro.tvRubros_r.selectionModel().currentChanged.connect(self.changeSelectedTable)

        self.winRubro.tvRubros_r.setColumnHidden(0, True)
        self.winRubro.tvRubros_r.setColumnWidth(1, 245)
예제 #13
0
    def cargarTabla(self):

        parameter = self.winPrincipal.txtFilterProductos_p.text()
        typeParameter = ''
        if self.winPrincipal.cbFilterProducto_p.currentText() == 'Nombre':
            typeParameter = 'p.nombre'
        elif self.winPrincipal.cbFilterProducto_p.currentText() == 'Marca':
            typeParameter = 'm.descripcion'
        else:
            typeParameter = 'r.descripcion'

        parameterState = 1
        if self.winPrincipal.cbInactivo_p.isChecked() is True:
            parameterState = 0

        parameterStock = 1
        if self.winPrincipal.cbSinStock_p.isChecked() is True:
            parameterStock = 0

        listaProductos = self.conexionProducto.selectProducto(
            typeParameter, parameter, parameterState, parameterStock)

        if len(listaProductos) > 0:

            header = [
                'idPro', 'Nombre', 'Descripcion', 'PC', 'PV', 'G', 'Estado',
                'Cant', 'Cantidad Min', 'idMar', 'Marca', 'idRubro', 'Rubro',
                'idProv', 'Proveedor'
            ]
            self.tablaModel = MyTableModel(self.winPrincipal.tvProductos_p,
                                           listaProductos, header)
            self.winPrincipal.tvProductos_p.setModel(self.tablaModel)
            self.winPrincipal.tvProductos_p.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvProductos_p.setColumnHidden(0, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(1, 200)
            self.winPrincipal.tvProductos_p.setColumnWidth(2, 320)
            self.winPrincipal.tvProductos_p.setColumnWidth(3, 60)
            self.winPrincipal.tvProductos_p.setColumnWidth(4, 60)
            self.winPrincipal.tvProductos_p.setColumnWidth(5, 60)
            self.winPrincipal.tvProductos_p.setColumnHidden(6, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(7, 40)
            self.winPrincipal.tvProductos_p.setColumnHidden(8, True)
            self.winPrincipal.tvProductos_p.setColumnHidden(9, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(10, 130)
            self.winPrincipal.tvProductos_p.setColumnHidden(11, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(12, 130)
            self.winPrincipal.tvProductos_p.setColumnHidden(13, True)
            self.winPrincipal.tvProductos_p.setColumnWidth(14, 130)
        else:
            self.winPrincipal.tvProductos_p.setModel(None)
예제 #14
0
    def cargarTabla(self):
        listaMarcas = self.conexionMarca.selectMarca()
        #Creo la cabecera
        header = ['ID', 'Marca']
        #Creo el modelo
        self.tablaModel = MyTableModel(self.winMarca.tvMarcas_m, listaMarcas,
                                       header)
        #Seteo el modelo
        self.winMarca.tvMarcas_m.setModel(self.tablaModel)
        self.winMarca.tvMarcas_m.selectionModel().currentChanged.connect(
            self.changeSelectedTable)

        self.winMarca.tvMarcas_m.setColumnHidden(0, True)
        self.winMarca.tvMarcas_m.setColumnWidth(1, 245)
예제 #15
0
    def cargarTablaTelefono(self):
        self.listTelefonosInit = self.conexionTelefono.selectTelefono(self.cliente)
        if len(self.listTelefonosInit) >0:
            header = ['ID', 'Numero', 'TIPO']
            tableModel = MyTableModel(self.winPrincipal, self.listTelefonosInit, header)
            self.winPrincipal.tvTelefonos_c.setModel(tableModel)
            self.winPrincipal.tvTelefonos_c.selectionModel().currentChanged.connect(self.changeSelectedTableTel)

            self.winPrincipal.tvTelefonos_c.setColumnHidden(0, True)
            self.winPrincipal.tvTelefonos_c.setColumnWidth(1, 36)
            self.winPrincipal.tvTelefonos_c.setColumnWidth(2, 175)

            for r in range(0, len(self.listTelefonosInit)):
                self.winPrincipal.tvTelefonos_c.setRowHidden(r, False)
예제 #16
0
    def cargarTabla(self):
        #Seteo el dataProvider de la tabla
        filterText = self.winRubro.txtFilterRubros_r.text()
        listaRubros = self.conexionRubro.selectRubro(filterText)
        if len(listaRubros) > 0:
            header = ['ID', 'Rubro']
            self.tablaModel = MyTableModel(self.winRubro.tvRubros_r,
                                           listaRubros, header)
            self.winRubro.tvRubros_r.setModel(self.tablaModel)
            self.winRubro.tvRubros_r.selectionModel().currentChanged.connect(
                self.changeSelectedTable)

            self.winRubro.tvRubros_r.setColumnHidden(0, True)
            self.winRubro.tvRubros_r.setColumnWidth(1, 245)
        else:
            self.winRubro.tvRubros_r.setModel(None)
예제 #17
0
    def cargarTabla(self):
        self.listProducto = self.conexionGeneral.selectProductoStock()

        header = ['ID', 'Nombre', 'Cant', 'Cant Min']
        if len(self.listProducto) > 0:
            tableModel = MyTableModel(self.winNot.tvDetalle, self.listProducto, header)
            self.winNot.tvDetalle.setModel(tableModel)
            self.winNot.tvDetalle.selectionModel().currentChanged.connect(self.changeSelectedTable)


            self.winNot.tvDetalle.setColumnHidden(0, True)
            self.winNot.tvDetalle.setColumnWidth(1, 128)
            self.winNot.tvDetalle.setColumnWidth(2, 70)
            self.winNot.tvDetalle.setColumnWidth(3, 70)
        else:
            self.winNot.btnGenerarPdf.setEnabled(False)
예제 #18
0
    def updateTelefonoTabla(self):
        listTabTel = []
        tipoTel = str(self.getTipoTelefono())
        listTelefonosNew = []
        prob = self.winPrincipal.tvTelefonos_u.selectionModel()
        prob1 = self.winPrincipal.tvTelefonos_u.model()
        listTabTel = list(
            self.winPrincipal.tvTelefonos_u.model().mylist).copy()

        telUpd = (self.telefonoSelected[0], tipoTel,
                  int(self.winPrincipal.txtTelefono_u.text()))
        listTabTel[self.telefonoSelectedRow] = telUpd
        header = ['ID', 'Tipo', 'Numero']
        tableModel = MyTableModel(self.winPrincipal, listTabTel, header)
        self.winPrincipal.tvTelefonos_u.setModel(tableModel)
        self.winPrincipal.tvTelefonos_u.selectionModel(
        ).currentChanged.connect(self.changeSelectedTableTel)
예제 #19
0
    def cargarTabla(self):
        parameter = self.winPrincipal.txtFilterProveedores_prov.text()
        typeParameter = ''

        if self.winPrincipal.cbFilterProveedores_prov.currentText(
        ) == 'Descripcion':
            typeParameter = 'prov.descripcion'
        else:
            typeParameter = 'p.nombre'

        parameterState = 1
        if self.winPrincipal.cbInactivo_prov.isChecked() is True:
            parameterState = 0

        listProveedores = self.conexionProveedor.selectProveedor(
            typeParameter, parameter, parameterState)

        if len(listProveedores) > 0:
            header = [
                'ID', 'Descripcion', 'Nombre', 'Email', 'Web', 'Direccion',
                'N°', 'P', 'D', 'idper', 'iddir', 'Estado'
            ]
            tableModel = MyTableModel(self.winPrincipal.tvProveedores_prov,
                                      listProveedores, header)
            self.winPrincipal.tvProveedores_prov.setModel(tableModel)
            self.winPrincipal.tvProveedores_prov.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvProveedores_prov.setColumnHidden(0, True)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(1, 190)

            self.winPrincipal.tvProveedores_prov.setColumnWidth(2, 190)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(3, 263)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(4, 240)

            self.winPrincipal.tvProveedores_prov.setColumnWidth(5, 200)
            self.winPrincipal.tvProveedores_prov.setColumnWidth(6, 50)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(7, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(8, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(9, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(10, True)
            self.winPrincipal.tvProveedores_prov.setColumnHidden(11, True)
        else:
            self.winPrincipal.tvProveedores_prov.setModel(None)
예제 #20
0
    def cargarTablaProductos(self):

        parameter = self.winPrincipal.txtFilterProducto_t.text()
        typeParameter = ''
        if self.winPrincipal.cbFilterProducto_t.currentText() == 'Nombre':
            typeParameter = 'p.nombre'
        elif self.winPrincipal.cbFilterProducto_t.currentText() == 'Marca':
            typeParameter = 'm.descripcion'
        elif self.winPrincipal.cbFilterProducto_t.currentText(
        ) == 'Precio de Venta':
            typeParameter = 'p.pVenta'
        else:
            typeParameter = 'p.pCompra'

        parameterTransaccion = 'CMP'
        if self.tipoTransaccion == "VENTA":
            parameterTransaccion = 'VNT'

        listProducto = self.conexionTransacciones.selectProductos(
            typeParameter, parameter, parameterTransaccion)

        if len(listProducto) > 0:
            header = [
                'ID', 'Nombre', 'Descripcion', 'Cant', 'P.Compra', 'P.Venta',
                'Marca'
            ]

            tableModel = MyTableModel(self.winPrincipal.tvProductos_t,
                                      listProducto, header)
            self.winPrincipal.tvProductos_t.setModel(tableModel)
            self.winPrincipal.tvProductos_t.selectionModel(
            ).currentChanged.connect(self.changeSelectedTableProducto)

            self.winPrincipal.tvProductos_t.setColumnHidden(0, True)
            self.winPrincipal.tvProductos_t.setColumnWidth(1, 150)
            self.winPrincipal.tvProductos_t.setColumnWidth(2, 200)
            self.winPrincipal.tvProductos_t.setColumnWidth(3, 50)
            self.winPrincipal.tvProductos_t.setColumnWidth(4, 80)
            self.winPrincipal.tvProductos_t.setColumnWidth(5, 80)
            self.winPrincipal.tvProductos_t.setColumnWidth(6, 100)

        else:
            self.winPrincipal.tvProductos_t.setModel(None)
예제 #21
0
    def cargarTabla(self):
        if self.winPrincipal.cbFilterCliente_t.currentText() == 'Apellido':
            tipoParametro = 'c.apellido'
        elif self.winPrincipal.cbFilterCliente_t.currentText() == 'Email':
            tipoParametro = 'p.email'

        parametro = self.winPrincipal.txtFilterCliente_t.text()
        listaClientes = self.conexionTransacciones.selectClientes(
            tipoParametro, parametro)

        header = ['ID', 'Apellido', 'Nombre', 'Email']
        tablaModel = MyTableModel(self.winPrincipal.tvCuentaCorriente_pag,
                                  listaClientes, header)
        self.winPrincipal.tvCuentaCorriente_pag.setModel(tablaModel)
        #self.winPrincipal.tvCuentaCorriente_pag.selectionModel().currentChanged.connect(self.changeSelectedTable)

        self.winPrincipal.tvCuentaCorriente_pag.setColumnHidden(0, True)
        self.winPrincipal.tvCuentaCorriente_pag.setColumnWidth(1, 230)
        self.winPrincipal.tvCuentaCorriente_pag.setColumnWidth(2, 230)
        self.winPrincipal.tvCuentaCorriente_pag.setColumnWidth(3, 250)
예제 #22
0
    def updateTelefonoTabla(self):
        listTabTel = []
        #listTabTel = list(self.winPrincipal.tvTelefonos_c.model().mylist).copy()
        tipoTel = str(self.getTipoTelefono())
        listTelefonosNew = []
        #prob = self.winPrincipal.tvTelefonos_c.selectionModel()
        #prob1 = self.winPrincipal.tvTelefonos_c.model()
        listTabTel = list(self.winPrincipal.tvTelefonos_c.model().mylist).copy()
        """
        for lt in listTabTel:
            if lt[0] == self.telefonoSelected[0]:
                lt = (self.telefonoSelected[0], tipoTel, self.winPrincipal.txtTelefono_c.text())

            listTelefonosNew.append(lt)
        """
        telUpd = (self.telefonoSelected[0], tipoTel, int(self.winPrincipal.txtTelefono_c.text()))
        listTabTel[self.telefonoSelectedRow] = telUpd
        header = ['ID', 'Tipo', 'Numero']
        tableModel = MyTableModel(self.winPrincipal, listTabTel , header)
        self.winPrincipal.tvTelefonos_c.setModel(tableModel)
        self.winPrincipal.tvTelefonos_c.selectionModel().currentChanged.connect(self.changeSelectedTableTel)
예제 #23
0
    def cargarTabla(self):
        parameter = self.winPrincipal.txtFilterUsuarios_u.text()
        typeParameter = ''

        if self.winPrincipal.cbFilterUsuario_u.currentText() == 'Apellido':
            typeParameter = 'u.apellido'
        if self.winPrincipal.cbFilterUsuario_u.currentText() == 'Usuario':
            typeParameter = 'u.usuario'
        else:
            typeParameter = 'u.tipo'

        listaUsuarios = self.conexionUsuario.selectUsuario(
            typeParameter, parameter)
        if len(listaUsuarios) > 0:

            header = [
                'ID', 'Nombre', 'Apellido', 'Usuario', 'Tipo', 'Contraseña',
                'Email', 'Direccion', 'N°', 'P', 'D', 'iddire', 'idpers'
            ]
            tableModel = MyTableModel(self.winPrincipal.tvUsuarios_u,
                                      listaUsuarios, header)
            self.winPrincipal.tvUsuarios_u.setModel(tableModel)
            self.winPrincipal.tvUsuarios_u.selectionModel(
            ).currentChanged.connect(self.changeSelectedTable)

            self.winPrincipal.tvUsuarios_u.setColumnHidden(0, True)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(1, 200)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(2, 200)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(3, True)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(4, 80)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(5, True)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(6, 270)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(7, 333)
            self.winPrincipal.tvUsuarios_u.setColumnWidth(8, 50)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(9, True)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(10, True)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(11, True)
            self.winPrincipal.tvUsuarios_u.setColumnHidden(12, True)
        else:
            self.winPrincipal.tvUsuarios_u.setModel(None)
예제 #24
0
    def cargarTablaProveedores(self):
        listTransaccionesProveedore = []
        listTransaccionesProveedore = list(
            self.conexionList.selectProveedoresTransacciones())

        listPagosProveedor = self.conexionList.selectProveedoresPagos()
        self.listFinal = []
        index = 0
        for tProveedor in listTransaccionesProveedore:

            for pProveedor in listPagosProveedor:
                if tProveedor[0] == pProveedor[0]:
                    totDeuda = float(tProveedor[3] - pProveedor[1])
                    if totDeuda <= 0:
                        #listTransaccionesProveedore.remove(index)
                        pass
                    else:
                        proveedorAdd = (tProveedor[1], tProveedor[2],
                                        "$ " + "{0:.2f}".format(totDeuda))
                        self.listFinal.append(proveedorAdd)

                    break

            index += 1

        if len(self.listFinal) > 0:
            header = ['Apellido', 'Nombre', 'Deuda']
            tableModel = MyTableModel(self.winList.tvList, self.listFinal,
                                      header)

            self.winList.tvList.setModel(tableModel)

            self.winList.tvList.setColumnWidth(0, 190)
            self.winList.tvList.setColumnWidth(1, 190)
            self.winList.tvList.setColumnWidth(2, 110)

        else:
            self.winList.tvList.setModel(None)
            self.winList.btnGenerarPdf.setEnabled(False)
예제 #25
0
    def cargarTabla(self):
        #listaClientes = []
        listaClientes = self.conexionCliente.selectCliente()
        header = [
            'ID', 'Apellido', 'Nombre', 'Email', 'Direccion', 'N°', 'Piso',
            'Dpto', 'iddir', 'idper'
        ]
        self.tablaModel = MyTableModel(self.winPrincipal.tvClientes_c,
                                       listaClientes, header)
        self.winPrincipal.tvClientes_c.setModel(self.tablaModel)
        self.winPrincipal.tvClientes_c.selectionModel().currentChanged.connect(
            self.changeSelectedTable)

        self.winPrincipal.tvClientes_c.setColumnHidden(0, True)
        self.winPrincipal.tvClientes_c.setColumnWidth(1, 208)
        self.winPrincipal.tvClientes_c.setColumnWidth(2, 220)
        self.winPrincipal.tvClientes_c.setColumnWidth(3, 280)
        self.winPrincipal.tvClientes_c.setColumnWidth(4, 364)
        self.winPrincipal.tvClientes_c.setColumnWidth(5, 50)
        self.winPrincipal.tvClientes_c.setColumnHidden(6, True)
        self.winPrincipal.tvClientes_c.setColumnHidden(7, True)
        self.winPrincipal.tvClientes_c.setColumnHidden(8, True)
        self.winPrincipal.tvClientes_c.setColumnHidden(9, True)
예제 #26
0
    def agregarTransaccion(self):
        cantProducto = int(self.winPrincipal.sbCantidadProducto_t.value())

        stateProduct = True

        if self.tipoTransaccion == "VENTA" and cantProducto > self.producto.getCantidad(
        ):
            stateProduct = False

        if cantProducto == 0:
            stateProduct = False

        if stateProduct is True:  #and self.validateProduct() is True:
            modelListTransaccion = self.winPrincipal.tvDetalleTransaccion_t.model(
            )
            header = [
                'ID', 'Cantidad', 'idProducto', 'Producto', 'Descripcion',
                'Precio Unit', 'Precio Tot'
            ]

            precio_unitario = 0
            if (self.tipoTransaccion == "VENTA"):
                precio_unitario = float(self.producto.getPrecioVenta())

            elif (self.tipoTransaccion == "COMPRA"):
                precio_unitario = float(self.producto.getPrecioCompra())

            if modelListTransaccion is not None:
                listTabPro = list(
                    self.winPrincipal.tvDetalleTransaccion_t.model().mylist)

                if len(listTabPro) > 0 or listTabPro is not None:
                    tuplaProd = ('0', str(cantProducto),
                                 str(self.producto.getIdProducto()),
                                 str(self.producto.getNombre()),
                                 str(self.producto.getDescripcion()),
                                 str(precio_unitario),
                                 str(cantProducto * precio_unitario))

                    listTabPro.append(tuplaProd)
                    tupleTable = tuple(listTabPro)

                    tableModel = MyTableModel(self.winPrincipal, tupleTable,
                                              header)
                    self.winPrincipal.tvDetalleTransaccion_t.setModel(
                        tableModel)
            else:
                lista = []
                tuplaProd = ('0', str(cantProducto),
                             str(self.producto.getIdProducto()),
                             str(self.producto.getNombre()),
                             str(self.producto.getDescripcion()),
                             str(precio_unitario),
                             str(cantProducto * precio_unitario))
                lista.append(tuplaProd)

                tableModel = MyTableModel(self.winPrincipal, lista, header)
                self.winPrincipal.tvDetalleTransaccion_t.setModel(tableModel)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnHidden(
                    0, True)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnWidth(1, 80)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnHidden(
                    2, True)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnWidth(3, 200)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnWidth(4, 653)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnWidth(5, 80)
                self.winPrincipal.tvDetalleTransaccion_t.setColumnWidth(6, 80)

                self.winPrincipal.rbCompra_t.setEnabled(False)
                self.winPrincipal.rbVenta_t.setEnabled(False)

            #self.total = (cantProducto * self.producto.getPrecioVenta()) + self.total

            #self.winPrincipal.lblTotal.setText(str(self.total))

            self.winPrincipal.btnCancelar_t.setEnabled(True)
            self.winPrincipal.btnSumarProducto_t.setEnabled(False)

            self.winPrincipal.sbCantidadProducto_t.setValue(0)

            self.winPrincipal.tvDetalleTransaccion_t.selectionModel(
            ).currentChanged.connect(self.changeSelectedTableTransaccion)

            total = float(self.winPrincipal.lblTotal.text())
            total += +(cantProducto * precio_unitario)
            self.winPrincipal.lblTotal.setText("{0:.2f}".format(total))
            self.activateButton()
            #self.calcularTotal()
        else:
            alert = QDialog()
            QMessageBox.information(alert, "ERROR",
                                    "La cantidad especificada es invalida")
예제 #27
0
    def calcularTransaccion(self):
        listTransacciones = []

        listPagos = []
        #Total de los pagos
        pagosTotal = 0
        #Total de las transacciones en estado 0
        transaccionesTotal = 0

        #Lista completa (transacciones + pagos)
        listDetalle = []
        if self.state == "COBRANZA":
            listPagos = self.conexionPagos.selectListPagosCliente(self.cliente)
            listTransacciones = self.conexionPagos.selectListTransaccionCliente(
                self.cliente)

            if len(listPagos) > 0:
                for pagos in listPagos:
                    pagosTotal += float(pagos[1])
                    auxMonto = "$  + " + str("{0:.2f}".format(pagos[1]))
                    auxPagos = (str(pagos[0]), auxMonto, str(pagos[2]))
                    listDetalle.append(auxPagos)
            else:
                pagosTotal = 0

            if len(listTransacciones):
                for transacciones in listTransacciones:
                    transaccionesTotal += transacciones[1]
                    auxMonto = "$  - " + str("{0:.2f}".format(
                        transacciones[1]))
                    auxTransaccion = (str(transacciones[0]), auxMonto,
                                      str(transacciones[2]))
                    listDetalle.append(auxTransaccion)
            else:
                transaccionesTotal = 0

            total = pagosTotal - transaccionesTotal

        elif self.state == "PAGO":
            listPagos = self.conexionPagos.selectListPagosProveedor(
                self.proveedor)
            listTransacciones = self.conexionPagos.selectListTransaccionProveedor(
                self.proveedor)

            if len(listPagos) > 0:
                for pagos in listPagos:
                    pagosTotal += float(pagos[1])
                    auxMonto = "$  + " + str("{0:.2f}".format(pagos[1]))
                    auxPagos = (str(pagos[0]), auxMonto, str(pagos[2]))
                    listDetalle.append(auxPagos)
            else:
                pagosTotal = 0

            if len(listTransacciones):
                for transacciones in listTransacciones:
                    transaccionesTotal += transacciones[1]
                    auxMonto = "$  - " + str("{0:.2f}".format(
                        transacciones[1]))
                    auxTransaccion = (str(transacciones[0]), auxMonto,
                                      str(transacciones[2]))
                    listDetalle.append(auxTransaccion)
            else:
                transaccionesTotal = 0

            total = pagosTotal - transaccionesTotal

        self.winPrincipal.lblTotalDeuda_pag.setText(str(total))

        if len(listDetalle) > 0:
            header = ['Fecha', 'Monto', 'Tipo de movimiento']
            tablaModel = MyTableModel(
                self.winPrincipal.tvDetalleTransaccion_pag, listDetalle,
                header)
            self.winPrincipal.tvDetalleTransaccion_pag.setModel(tablaModel)

            self.winPrincipal.tvDetalleTransaccion_pag.setColumnWidth(0, 190)
            self.winPrincipal.tvDetalleTransaccion_pag.setColumnWidth(1, 190)
            self.winPrincipal.tvDetalleTransaccion_pag.setColumnWidth(2, 190)