def barrasVendedor(self,idVendedor): archNCV = abrir('NCV') archCliente = abrir('Cliente') self.groupBox_7.setEnabled(True) total = 0 pago = 0 impago = 0 for i in range (len(archNCV)): reg = leer(archNCV,i) if (reg.idVendedor==idVendedor): total +=reg.importe if (reg.pagado): pago+=reg.importe else: impago+=reg.importe self.vendedorTotalPrecio.setText('TOTAL $ '+str(total)) self.vendedorPagoPrecio.setText('PAGO $ '+str(pago)) self.vendedorImpagoPrecio.setText('IMPAGO $ '+str(impago)) self.vTotalBar.setValue(100) self.vPagoBar.setValue(101*pago/total) self.vImpagoBar.setValue(101*impago/total) cerrar(archNCV) cerrar(archCliente)
def inicializacion(self): archNCV = abrir('NCV') archCliente = abrir('Cliente') total = 0 pago = 0 impago = 0 for i in range (len(archNCV)): reg = leer(archNCV,i) total +=reg.importe if (reg.pagado): pago+=reg.importe else: impago+=reg.importe self.empresaTotalPrecio.setText('TOTAL $ '+str(total)) self.empresaPagoPrecio.setText('PAGO $ '+str(pago)) self.empresaImpagoPrecio.setText('IMPAGO $ '+str(impago)) self.eTotalBar.setValue(100) self.ePagoBar.setValue(101*pago/total) self.eImpagoBar.setValue(101*impago/total) for j in range (len(archCliente)): reg = leer(archCliente,j) self.clienteCombo.addItem(str(reg.idCliente)+' '+reg.nomCliente) cerrar(archNCV) cerrar(archCliente)
def altaBajaModif(self): #print('entro') #print(self.tabla.currentRow()) #print(self.tabla.item(self.tabla.currentRow(), 2).text()) idSeleccionado = self.tabla.item(self.tabla.currentRow(), 2).text() j = self.tabla.currentRow() self.tabla.clearSelection() for i in range (0,7): self.tabla.item(j,i).setBackground(QColor("cyan")) idCliente=abrir('id') guardarid(idCliente,int(idSeleccionado)) dial = AltaBajaModif() dial.setAttribute(QtCore.Qt.WA_DeleteOnClose) dial.setModal(True) dial.exec_() self.generarArboles() #print(leer(archNCV,len(archNCV)-1).ncv) self.clienteCombo.clear() archCliente = abrir('Cliente') for j in range (len(archCliente)): reg = leer(archCliente,j) self.clienteCombo.addItem(str(reg.idCliente)+' '+reg.nomCliente) cerrar(archCliente) self.inicializacion() self.generarReporte()
def generarArboles(self): archNCV = abrir('NCV') archCliente = abrir('Cliente') self.arbolNCV = None self.arbolNCV = cargarArbolNCV(archNCV) self.arbolCliente = None self.arbolCliente = cargarArbolCliente(archCliente) cerrar(archNCV) cerrar(archCliente)
def creararchivoclima(self): reg = clima() f = open('datos_clima.csv') a = abrir('clima') #print(f.readline()) linea = f.readline() cont = -1 while (linea): cont += 1 lista = linea.split(',') #print(lista) reg.id = (lista[0]) reg.date = (lista[1]) reg.time = (lista[2]) reg.temp = (lista[3]) reg.presion = (lista[4]) reg.viento = (lista[5]) reg.humedad = (lista[6]) reg.estado = (lista[7]) reg.zona = (lista[8]) reg.activo = True agregar(a, reg) linea = f.readline() print("listo") f.close() cerrar(a)
def creararchivoclima(): f = open('datos_clima.csv') a = abrir('clima') print(f.readline()) linea = f.readline() cont = -1 while (linea): cont += 1 lista = linea.split(',') reg = clima() reg.id = (lista[0]) reg.date = (lista[1]) reg.time = (lista[2]) reg.temp = (lista[3]) reg.presion = (lista[4]) reg.viento = (lista[5]) reg.humedad = (lista[6]) reg.estado = (lista[7]) reg.zona = (lista[8]) for campo in lista: print(campo) agregar(a, reg) linea = f.readline() print(cont) f.close() cerrar(a)
def buscar_id(self): print("aca") arbol = self.aux1[1] busc = self.buscador.text() a = abrir('clima') self.tabla.setRowCount(0) busqueda(arbol, busc, self.tabla, a) cerrar(a)
def cargararboles(self): #no funca self.azona, self.acodigo, self.afecha = None, None, None a = abrir('clima') pos = 0 #reg = clima() while (pos < len(a)): self.reg = leer(a, pos) self.azona = insertar(self.azona, self.reg.zona, pos) self.acodigo = insertar(self.acodigo, self.reg.id, pos) self.afecha = insertar(self.afecha, self.reg.date, pos) pos += 1 cerrar(a) return [self.azona, self.acodigo, self.afecha]
def modificardato(self): #ver si funciona arbolfecha = self.aux1[2] arbolzona = self.aux1[0] arbolid = self.aux1[1] lid = self.altaid.text() lfecha = self.altafecha.text() lhora = self.altahora.text() ltemp = self.altatemperatura.text() lpresion = self.altapresion.text() lviento = self.altaviento.text() lhumedad = self.altahumedad.text() lestado = self.altaestado.text() lzona = self.altazona.text() a = abrir('clima') #reg = clima() #pos = 0 #control = True #while(pos<len(a) and control): if (lid != ''): pos = buscar(arbolid, lid) if (pos != None): reg = leer(a, pos) if (reg.activo == True): if (lfecha != ''): arbolfecha = eliminar(arbolfecha, reg.date, pos) reg.date = lfecha arbolfecha = insertar( arbolfecha[0], lfecha, pos) #esta fallando en esta insercion if (lhora != ''): reg.time = (lhora) if (ltemp != ''): reg.temp = (ltemp) if (lpresion != ''): reg.presion = (lpresion) if (lviento != ''): reg.viento = (lviento) if (lhumedad != ''): reg.humedad = (lhumedad) if (lestado != ''): reg.estado = (lestado) if (lzona != ''): arbolzona = eliminar(arbolzona, reg.zona, pos) reg.zona = lzona arbolzona = insertar(arbolzona[0], lzona, pos) modificar(a, reg, pos) #ver como modificar el arbol cerrar(a) self.mostrarlista()
def insertardato(self): arbolid = self.aux1[1] arbolfecha = self.aux1[2] arbolzona = self.aux1[0] lid = self.altaid.text() lfecha = self.altafecha.text() lhora = self.altahora.text() ltemp = self.altatemperatura.text() lpresion = self.altapresion.text() lviento = self.altaviento.text() lhumedad = self.altahumedad.text() lestado = self.altaestado.text() lzona = self.altazona.text() a = abrir('clima') reg = clima() pos = 0 control = False while (pos < len(a)): reg = leer(a, pos) if (reg.id == lid): if (reg.activo != True): reg.activo = True modificar(a, reg, pos) arbolzona = insertar(arbolzona, lzona, pos) arbolid = insertar(arbolid, lid, pos) arbolfecha = insertar(arbolfecha, lfecha, pos) control = True else: control = True #es para ver si existe y esta dado de alta pos = pos + 1 if (control != True): reg.id = (lid) arbolid = insertar(arbolid, lid, pos) reg.date = (lfecha) arbolfecha = insertar(arbolfecha, lfecha, pos) reg.time = (lhora) reg.temp = (ltemp) reg.presion = (lpresion) reg.viento = (lviento) reg.humedad = (lhumedad) reg.estado = (lestado) reg.zona = (lzona) arbolzona = insertar(arbolzona, lzona, pos) reg.activo = True agregar(a, reg) cerrar(a) self.mostrarlista()
def generarReporte(self): self.inicializarBarras() self.tabla.setColumnCount(0) self.tabla.setColumnCount(7) self.tabla.setHorizontalHeaderLabels(['NCV', 'Vendedor', 'IDCliente', 'Nombre', 'Activo', 'Importe','Pagado']) self.tabla.setColumnWidth(0, 70); self.tabla.setColumnWidth(3, 150); #self.tabla.setSortingEnabled(False) self.tabla.setRowCount(0) lista = [] archNCV = abrir('NCV') if self.inordenRadio.isChecked(): lista = self.inordenNCV(self.arbolNCV, lista, archNCV) else: lista = self.postordenNCV(self.arbolNCV, lista, archNCV) cerrar(archNCV) seleccionados=self.listaSeleccionados() #print(seleccionados) for i in range(len(lista)): fila=self.tabla.rowCount() #self.tabla.insertRow(fila) if (seleccionados[0]=='saldoTotal'): self.cargarFila(seleccionados,fila,lista,i) elif (seleccionados[0]=='saldoPago'): if (lista[i].pagado): self.cargarFila(seleccionados,fila,lista,i) else: #saldoImpago if (lista[i].pagado==False): self.cargarFila(seleccionados,fila,lista,i)
def eliminardato(self): arbolid = self.aux1[1] arbolfecha = self.aux1[2] arbolzona = self.aux1[0] lid = self.altaid.text() a = abrir('clima') #reg = clima() pos = 0 control = True while (pos < len(a) and control): reg = leer(a, pos) if (reg.id == lid): if (reg.activo == True): reg.activo = False modificar(a, reg, pos) arbolzona = eliminar(arbolzona, reg.zona, pos) arbolid = eliminar(arbolid, reg.id, pos) arbolfecha = eliminar(arbolfecha, reg.date, pos) control = False pos = pos + 1 cerrar(a) self.mostrarlista()
def barrasCliente(self,idCliente): archNCV = abrir('NCV') self.groupBox_10.setEnabled(True) total = 0 pago = 0 impago = 0 for i in range (len(archNCV)): reg = leer(archNCV,i) if (reg.idCliente==idCliente): total +=reg.importe if (reg.pagado): pago+=reg.importe else: impago+=reg.importe self.clienteTotalPrecio.setText('TOTAL $ '+str(total)) self.clientePagoPrecio.setText('PAGO $ '+str(pago)) self.clienteImpagoPrecio.setText('IMPAGO $ '+str(impago)) self.cTotalBar.setValue(100) self.cPagoBar.setValue(101*pago/total) self.cImpagoBar.setValue(101*impago/total) cerrar(archNCV)
# -*- coding: utf-8 -*- """ Created on Tue May 1 01:38:10 2018 @author: Mona Thinkpad """ from PyQt4 import QtCore, QtGui, uic from archivos import abrir, leer, modificar, regNCV, guardar from arbolinConAVL import cargarArbolNCV, cargarArbolCliente menu = uic.loadUiType("interfaz/altaBajaModificacion.ui")[0] archivoId = abrir('id') archCliente = abrir('Cliente') archNCV = abrir('NCV') class AltaBajaModif(QtGui.QDialog, menu): def __init__(self, parent=None): QtGui.QDialog.__init__(self, parent) self.setupUi(self) self.setWindowTitle("Alta-Baja-Modificación") self.setWindowIcon(QtGui.QIcon('bar-chart.png')) self.nuevoNombre.setEnabled(False) self.cerrar.clicked.connect(self.hide) self.idBuscar = leer(archivoId, 0) self.pos = None self.registro = None self.inicializar()
def mostrarlista(self): self.tabla.setRowCount(0) arbol = self.aux1[1] a = abrir('clima') inordena(arbol, self.tabla, a) cerrar(a)
def cargarFila(self,seleccionados,fila,lista,i): archCliente = abrir('Cliente') if (seleccionados[1]=='vendedorTodos'): if (seleccionados[2]=='clienteTodos'): self.tabla.insertRow(fila) self.tabla.setItem(fila, 0, QTableWidgetItem(str(lista[i].ncv))) self.tabla.setItem(fila, 1, QTableWidgetItem(str(lista[i].idVendedor))) self.tabla.setItem(fila, 2, QTableWidgetItem(str(lista[i].idCliente))) self.tabla.setItem(fila, 5, QTableWidgetItem(str(lista[i].importe))) if (lista[i].pagado): self.tabla.setItem(fila, 6, QTableWidgetItem('PAGADO')) self.tabla.item(fila,6).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 6, QTableWidgetItem('IMPAGO')) self.tabla.item(fila,6).setBackground(QColor("red")) pos = busquedaCliente(self.arbolCliente,lista[i].idCliente) reg = leer(archCliente,pos) self.tabla.setItem(fila, 3, QTableWidgetItem(reg.nomCliente)) if (reg.activo): self.tabla.setItem(fila, 4, QTableWidgetItem('ACTIVO')) self.tabla.item(fila,4).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 4, QTableWidgetItem('BAJA')) self.tabla.item(fila,4).setBackground(QColor("red")) else: if (lista[i].idCliente==int(seleccionados[2])): self.barrasCliente(lista[i].idCliente) self.tabla.insertRow(fila) self.tabla.setItem(fila, 0, QTableWidgetItem(str(lista[i].ncv))) self.tabla.setItem(fila, 1, QTableWidgetItem(str(lista[i].idVendedor))) self.tabla.setItem(fila, 2, QTableWidgetItem(str(lista[i].idCliente))) self.tabla.setItem(fila, 5, QTableWidgetItem(str(lista[i].importe))) if (lista[i].pagado): self.tabla.setItem(fila, 6, QTableWidgetItem('PAGADO')) self.tabla.item(fila,6).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 6, QTableWidgetItem('IMPAGO')) self.tabla.item(fila,6).setBackground(QColor("red")) pos = busquedaCliente(self.arbolCliente,lista[i].idCliente) reg = leer(archCliente,pos) self.tabla.setItem(fila, 3, QTableWidgetItem(reg.nomCliente)) if (reg.activo): self.tabla.setItem(fila, 4, QTableWidgetItem('ACTIVO')) self.tabla.item(fila,4).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 4, QTableWidgetItem('BAJA')) self.tabla.item(fila,4).setBackground(QColor("red")) elif (lista[i].idVendedor==int(seleccionados[1])): self.barrasVendedor(lista[i].idVendedor) if (seleccionados[2]=='clienteTodos'): self.tabla.insertRow(fila) self.tabla.setItem(fila, 0, QTableWidgetItem(str(lista[i].ncv))) self.tabla.setItem(fila, 1, QTableWidgetItem(str(lista[i].idVendedor))) self.tabla.setItem(fila, 2, QTableWidgetItem(str(lista[i].idCliente))) self.tabla.setItem(fila, 5, QTableWidgetItem(str(lista[i].importe))) if (lista[i].pagado): self.tabla.setItem(fila, 6, QTableWidgetItem('PAGADO')) self.tabla.item(fila,6).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 6, QTableWidgetItem('IMPAGO')) self.tabla.item(fila,6).setBackground(QColor("red")) pos = busquedaCliente(self.arbolCliente,lista[i].idCliente) reg = leer(archCliente,pos) self.tabla.setItem(fila, 3, QTableWidgetItem(reg.nomCliente)) if (reg.activo): self.tabla.setItem(fila, 4, QTableWidgetItem('ACTIVO')) self.tabla.item(fila,4).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 4, QTableWidgetItem('BAJA')) self.tabla.item(fila,4).setBackground(QColor("red")) else: if (lista[i].idCliente==int(seleccionados[2])): self.barrasCliente(lista[i].idCliente) self.tabla.insertRow(fila) self.tabla.setItem(fila, 0, QTableWidgetItem(str(lista[i].ncv))) self.tabla.setItem(fila, 1, QTableWidgetItem(str(lista[i].idVendedor))) self.tabla.setItem(fila, 2, QTableWidgetItem(str(lista[i].idCliente))) self.tabla.setItem(fila, 5, QTableWidgetItem(str(lista[i].importe))) if (lista[i].pagado): self.tabla.setItem(fila, 6, QTableWidgetItem('PAGADO')) self.tabla.item(fila,6).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 6, QTableWidgetItem('IMPAGO')) self.tabla.item(fila,6).setBackground(QColor("red")) pos = busquedaCliente(self.arbolCliente,lista[i].idCliente) reg = leer(archCliente,pos) self.tabla.setItem(fila, 3, QTableWidgetItem(reg.nomCliente)) if (reg.activo): self.tabla.setItem(fila, 4, QTableWidgetItem('ACTIVO')) self.tabla.item(fila,4).setBackground(QColor("lightgreen")) else: self.tabla.setItem(fila, 4, QTableWidgetItem('BAJA')) self.tabla.item(fila,4).setBackground(QColor("red")) cerrar(archCliente)
def ordenar_zona(self): self.tabla.setRowCount(0) arbol = self.aux1[0] a = abrir('clima') inordena(arbol, self.tabla, a) cerrar(a)