Esempio n. 1
0
 def load_proveedor(self,fecha=None,hora=None):        
     self.ui.tableProveedores.setRowCount(0)
     if self.id_evento == None :
         return
                 
     bd=BdStd()
     txtsql = f"""SELECT strftime('%d-%m-%Y',fecha)||" "||hora, pre.servicio, pre.id_proveedor,  \
               p.provincia, contacto_onsite, telefono_onsite, email_onsite, pre.notas \
               FROM proveedores_evento as pre \
               JOIN proveedores as p ON  p.id_proveedor = pre.id_proveedor WHERE id_evento='{self.id_evento}' """
     if fecha != None:
         txtsql += f" AND strftime('%d-%m-%Y',fecha)='{fecha}'"
 
     bd.runsql(txtsql)
 
     if bd.rows != None :
         
         for i, row_data in enumerate(bd.rows):
             self.ui.tableProveedores.insertRow(i)
             
             for j, data in enumerate(row_data):
                 if j==0:
                     self.ui.tableProveedores.setItem(i, j, QtWidgets.QTableWidgetItem(str(data)))
                 else:
                     self.ui.tableProveedores.setItem(i, j, QtWidgets.QTableWidgetItem(str(data)))
Esempio n. 2
0
    def eliminar(self):

        row = self.ui.tableRecintos.currentRow()
        clave = self.ui.tableRecintos.item(row, 0).text()
        print(clave)
        qm = QtWidgets.QMessageBox
        ret = qm.question(
            self, '', "Quiere eliminar " +
            self.ui.tableRecintos.item(row, 1).text() + "? ", qm.Yes | qm.No)

        if ret == qm.Yes:
            #-------------- Borrar el registro
            print("Voy a borrar ", clave)
            bd = BdStd()
            bd.runsql("DELETE FROM recintos  WHERE id_recinto = '" + clave +
                      "'")
            if bd.rows != None:
                print("Ha borrado a ", clave)
                self.ui.tableRecintos.removeRow(row)
        else:
            print("No borro ", clave)
        if self.padre != None:

            if self.padre == "crearevento":
                self.padre.load_comboRecintos()

            elif self.padre == "selectrecinto":
                self.padre.loadData()
Esempio n. 3
0
    def load_comboProvincias(self):
        bdprovi = BdStd()
        bdprovi.runsql("SELECT nombre FROM provincias_es")

        if bdprovi.rows != None:
            for provincia in bdprovi.rows:
                self.ui.comboProvincia.addItem(provincia[0])
Esempio n. 4
0
    def load_personal_added(self):
        self.ui.personal_added.setRowCount(0)
        if self.id_evento == None:
            return

        bd = BdStd()
        # mere 03-02-2021 añadidos el resto de los campos a la select
        txtsql = f"""SELECT strftime('%d-%m-%Y',fecha), cargos.nombre, pev.id_personal, p.nombre, p.apellidos, 
                  suplemento, dni, telefono, email, autonomo, notas
                  FROM personal_evento as pev
                  JOIN personal as p ON p.id_personal = pev.id_personal
                  JOIN cargos ON cargos.id_cargo = pev.id_cargo 
                  WHERE id_evento = '{self.id_evento}' """
        if self.fecha != "ALL":
            txtsql += f"""AND strftime('%d-%m-%Y',fecha) = '{self.fecha}'"""
        txtsql += f"""ORDER BY fecha"""

        print("load_personal_added ", txtsql)
        bd.runsql(txtsql)

        if bd.rows != None:
            for i, row_data in enumerate(bd.rows):
                self.ui.personal_added.insertRow(i)
                for j, data in enumerate(row_data):
                    self.ui.personal_added.setItem(
                        i, j, QtWidgets.QTableWidgetItem(str(data)))
Esempio n. 5
0
    def delDate(self):

        qm = QtWidgets.QMessageBox
        ret = qm.question(self, '', "Quiere eliminar la fecha seleccionada ? ",
                          qm.Yes | qm.No)

        if ret == qm.No:
            return

        #-------------- Borrar la fecha del evento
        # for i, item in enumerate(self.ui.fechas_table.selectedItems()):
        #     if i == 0 :
        #        date = item.text()
        #     elif i == 1  :
        #         time = item.text()
        #     elif i == 2  :
        #         tarea = item.text()
        evento = self.ui.entry_id.text().upper()

        row = self.ui.fechas_table.currentRow()
        id_dias_evento = self.ui.fechas_table.item(row, 3).text()
        #----------Borra la fecha en la bbdd----------------------------------

        bd = BdStd()
        bd.runsql(
            f"""DELETE FROM dias_evento WHERE id_dias_evento = '{id_dias_evento}'"""
        )
        print(
            f"""DELETE FROM dias_evento WHERE id_dias_evento = '{id_dias_evento}'"""
        )

        #----------Muestra las fechas en la tabla------------------------------

        self.load_dias_evento(evento)
Esempio n. 6
0
 def loadData(self):
     self.ui.tableClientes.setRowCount(0)
     bd = BdStd()
     bd.runsql("SELECT * FROM clientes")
     if bd.rows != None:
         for row in bd.rows:
             self.load_one(row)
Esempio n. 7
0
    def load_datos_ficha_proveedor(self):

        bd1 = BdStd()
        txtsql = f"""SELECT empresa FROM proveedores WHERE id_proveedor = '{self.id_proveedor}'"""
        bd1.runsql(txtsql)
        if bd1.rows != None:
            for row_data in bd1.rows:
                self.ui.inputEmpresa.setText(row_data[0])
Esempio n. 8
0
 def load_datos_ficha_persona (self):
         
     bd1=BdStd() 
     txtsql = f"""SELECT nombre, apellidos FROM personal WHERE id_personal = '{self.id_personal}'"""
     bd1.runsql(txtsql) 
     if bd1.rows != None :
         for row_data in bd1.rows:
             self.ui.inputNombre.setText(row_data[0])
             self.ui.inputApellidos.setText(row_data[1])
Esempio n. 9
0
    def load_comboPais(self):

        self.ui.comboPais.addItem("")
        bdpais = BdStd()
        bdpais.runsql("SELECT nombre FROM paises")

        if bdpais.rows != None:
            for pais in bdpais.rows:
                self.ui.comboPais.addItem(pais[0])
Esempio n. 10
0
 def updateCombo(self):
     self.ui.comboBox.clear()
     bd = BdStd()
     bd.runsql(
         f"SELECT nombre FROM recintos WHERE ciudad = '{self.ui.comboBox_2.currentText()}';"
     )
     if bd.rows != None:
         for recinto in bd.rows:
             self.ui.comboBox.addItem(recinto[0])
Esempio n. 11
0
 def crear_fecha(self, fecha,hora, id_cargo):
     
     bd=BdStd()
     txtsql = "INSERT INTO personal_evento (id_personal, id_evento,fecha, id_cargo\
                    , suplemento,hora) VALUES ('{}','{}','{}','{}','{}','{}');"
     txtsql= txtsql.format(self.id_personal, self.padre.id_evento,
                           bd.gira_fecha(fecha), 
                           id_cargo, self.ui.inputSuplem.text(),hora)
     print(txtsql)
     bd.runsql(txtsql)
Esempio n. 12
0
 def loadDataDatos(self,id_evento):                 
 
     if self.id_evento == None :
         data = []
         self.load_one(data)
     else :
         bd = BdStd()
         bd.runsql(f"""SELECT * FROM evento WHERE id_evento = '{id_evento}';""")
         if bd.rows != None :
             for row in bd.rows :
                 self.loadInputs(row)
Esempio n. 13
0
    def load_personal(self, sql):
                    
        bd=BdStd()
        bd.runsql(sql)
        self.ui.personal_table.setRowCount(0)

        if bd.rows != None :
            for i, row_data in enumerate(bd.rows):
                self.ui.personal_table.insertRow(i)
                for j, data in enumerate(row_data):
                    self.ui.personal_table.setItem(i, j, QtWidgets.QTableWidgetItem(str(data)))
Esempio n. 14
0
 def liberar(self):
     row = self.ui.tableWidget.currentRow()
     column = self.ui.tableWidget.currentColumn()
     dd = self.ui.tableWidget.item(row, column).text()
     dd = dd.replace(" ", "0")
     fecha = f"{self.kale.anyo}-{self.kale.mes:02d}-{dd}"
     self.ui.tableWidget.item(row, column).setBackground(
         QtGui.QColor(255, 255, 255))
     bd = BdStd()
     bd.runsql(
         f"DELETE FROM personal_ocupado WHERE id_personal = '{self.id_personal}' AND fecha = '{fecha}';"
     )
Esempio n. 15
0
 def loadDataFechas(self,id_evento):                 
 
     if self.id_evento == None :
         data = []
         self.loadFechas(data)
     else :
         bd = BdStd()
         bd.runsql(f"""SELECT strftime('%d-%m-%Y', fecha), hora, tarea, id_dias_evento FROM dias_evento 
                   WHERE id_evento = '{id_evento}' ORDER BY fecha;""")
         if bd.rows != None :
             for row in bd.rows :
                 self.loadFechas(row)
Esempio n. 16
0
 def cargacombocargos (self):
     
     self.dic_cargos ={}    #crea un diccionario vacio
     bd1=BdStd()        
     txtsql = f"""SELECT tarifas.id_cargo,  cargos.nombre FROM tarifas
     JOIN cargos ON cargos.id_cargo = tarifas.id_cargo
     WHERE tarifas.id_personal='{self.id_personal}'"""
     bd1.runsql(txtsql) 
     if bd1.rows != None :
         for i, row_data in enumerate(bd1.rows):
             self.ui.comboBox.addItem(row_data[1])
             self.dic_cargos [row_data[1]] = row_data[0]
Esempio n. 17
0
    def anadir(self):

        #--------------------------generador de ID
        id_manager = self.ui.inputNombre.text(
        )[0:2] + self.ui.inputApellidos.text()[0:2] + self.ui.inputDni.text(
        )[0:2]
        id_manager = id_manager.upper()
        trans_table = id_manager.maketrans("Á,É,Í,Ó,Ú,À,È,Ì,Ò,Ù",
                                           "A,E,I,O,U,A,E,I,O,U")
        id_manager = id_manager.translate(trans_table)
        self.id_manager = id_manager

        #---------------FORMATO DE NOMBRE Y APELLIDOS----------------------------------

        nombre = self.ui.inputNombre.text()
        apellidos = self.ui.inputApellidos.text()
        nombre = nombre.split(" ")
        apellidos = apellidos.split(" ")
        nom = ""
        apell = ""
        for palabra in nombre:
            palabra = palabra.capitalize()
            nom += palabra + " "
        for palabra in apellidos:
            palabra = palabra.capitalize()
            apell += palabra + " "
        nom = nom[:-1]
        apell = apell[:-1]

        campos_managers = (id_manager,nom,apell, self.ui.inputDni.text().upper(),\
                    self.ui.inputTelefono.text(),self.ui.inputEmail.text().lower(),\
                    self.ui.inputNotas.toPlainText())
        if len(id_manager) > 5:
            bd = BdStd()
            bd.runsql(
                "INSERT INTO managers (id_manager, nombre, apellidos, dni, \
                      telefono, email, notas) VALUES (?,?,?,?,?,?,?);",
                campos_managers)
            self.load_one(campos_managers)
        else:
            msgBox = QtWidgets.QMessageBox()
            msgBox.warning(self, "Aleph", "Introduzca Nombre, apellidos y dni")

        #----------------Carga los datos en la tabla---------------------------

        #---------------Resetea los inputs-------------------------------------

        self.ui.inputNombre.setText("")
        self.ui.inputApellidos.setText("")
        self.ui.inputDni.setText("")
        self.ui.inputTelefono.setText("")
        self.ui.inputEmail.setText("")
        self.ui.inputNotas.setPlainText("")
Esempio n. 18
0
 def ocupar(self):
     row = self.ui.tableWidget.currentRow()
     column = self.ui.tableWidget.currentColumn()
     dd = self.ui.tableWidget.item(row, column).text()
     dd = dd.replace(" ", "0")
     fecha = f"{self.kale.anyo}-{self.kale.mes:02d}-{dd}"
     print(fecha)
     self.ui.tableWidget.item(row,
                              column).setBackground(QtGui.QColor(255, 0, 0))
     bd = BdStd()
     bd.runsql(
         f"INSERT INTO personal_ocupado (id_personal,fecha) VALUES ('{self.id_personal}','{fecha}');"
     )
Esempio n. 19
0
def getEventCale(id_personal, yyyymm):

    # devuelve un array con dias y sus eventos
    bd = BdStd()
    dias_event = ["" for x in range(31)]
    txtsql = f"""SELECT fecha, id_evento  FROM personal_evento   WHERE id_personal = '{id_personal}'
    AND  fecha BETWEEN '{yyyymm}-01' AND '{yyyymm}-31' ORDER BY id_personal, fecha"""
    bd.runsql(txtsql)
    if bd.rows != None:
        for row in bd.rows:
            dia = int0(row[0][8:10])
            dias_event[dia - 1] = row[1]
    return (dias_event)
Esempio n. 20
0
    def loadcombo1 (self) :
        
        bd=BdStd()
        bd.runsql("SELECT id_cargo, nombre FROM cargos")
        self.ui.combo_filtrar_cargos.clear()

        self.dic_cargos = {"ALL": '000'}
        self.ui.combo_filtrar_cargos.addItem("ALL")

        if bd.rows != None :
            for i, row_data in enumerate(bd.rows):
                self.dic_cargos[row_data[1]] = row_data[0]
                self.ui.combo_filtrar_cargos.addItem(row_data[1])
            print (self.dic_cargos)
Esempio n. 21
0
 def extraer_recinto(self):
     #-------------------------------------------------- extrae recinto del combo
     bdaux = BdStd()
     id_recinto = ""
     try:
         bdaux.runsql(f"""SELECT id_recinto FROM recintos WHERE 
                   nombre = '{self.ui.comboBox.currentText()}' AND 
                   ciudad = '{self.ui.comboBox_2.currentText()}'""")
         if bdaux.rows != None and len(bdaux.rows) > 0:
             print("len(bd.rows)", len(bdaux.rows))
             id_recinto = bdaux.rows[0][0]
     except:
         print("error extraer_recinto:", sys.exc_info())
     return (id_recinto)
Esempio n. 22
0
    def carga_combo_servicios(self):

        self.list_servicios = []
        bd1 = BdStd()
        bd1.runsql(
            f"SELECT servicio FROM proveedores WHERE id_proveedor='{self.id_proveedor}'"
        )
        if bd1.rows != None and len(bd1.rows) > 0:
            print(bd1.rows)
            servicios = bd1.rows[0][0].split()
            #print("servicios ",servicios)
            for item in servicios:
                self.list_servicios.append(item)
                self.ui.comboServicio.addItem(item)
Esempio n. 23
0
    def guardar(self):

        # Puesto el Update de los datos cambiados de personal en ficha personal---------
        nombre = self.ui.inputNombre.text()
        apellidos = self.ui.inputApellidos.text()
        dni = self.ui.inputDni.text()
        telefono = self.ui.inputTelefono.text()
        email = self.ui.inputMail.text()
        direccion = self.ui.inputDireccion.text()
        cp = self.ui.inputCp.text()
        ciudad = self.ui.inputCiudad.text()
        autonomo = self.ui.inputAutonomo.text()
        iban = self.ui.inputIban.text()
        notas = self.ui.inputNotas.toPlainText()

        txtsql = "UPDATE personal SET nombre = '{}', apellidos = '{}', dni = '{}'," \
        "telefono = '{}', email = '{}', direccion = '{}'," \
        "cp = '{}', ciudad = '{}', autonomo = '{}'," \
        "iban = '{}', notas = '{}'  WHERE id_personal = '{}'"
        txtsql = txtsql.format(nombre, apellidos, dni, telefono, email,
                               direccion, cp, ciudad, autonomo, iban, notas,
                               self.id_personal)
        bd = BdStd()
        bd.runsql(txtsql)

        i = 0
        for checkobj in self.ui.widget.findChildren(QtWidgets.QCheckBox):
            title = self.map_cargos[i]
            if checkobj.checkState():
                self.map_cargos[i]['checked'] = "1"
            else:
                self.map_cargos[i]['checked'] = "0"
            i += 1

        i = 0
        for caja in self.ui.widget.findChildren(QtWidgets.QLineEdit):
            title = self.map_cargos[i]

            if caja.text() != "":
                self.map_cargos[i]['tarifa'] = int(caja.text())
            i += 1

        guardaTarifas(self.id_personal, self.map_cargos)

        msgBox = QtWidgets.QMessageBox()
        msgBox.setIcon(msgBox.Information)
        msgBox.setText("Cambios guardados correctamente")
        msgBox.setWindowTitle("Aleph")
        msgBox.exec_()
Esempio n. 24
0
 def load_evento(self, id_evento):
     bd = BdStd()
     bd.runsql(f"""SELECT * FROM evento WHERE id_evento = '{id_evento}'""")
     if bd.rows != None:
         for row in bd.rows:
             self.ui.entry_id.setText(row[0])
             self.ui.entry_nombre.setText(row[1])
             self.ui.entry_cliente.setText(row[2])
             self.ui.entry_onsite.setText(row[3])
             self.ui.entry_tfn_onsite.setText(row[4])
             self.ui.entry_email_onsite.setText(row[5])
             self.ui.entry_notas.setPlainText(row[8])
             #----- se posiciona en combo  recinto / manager
             self.posiciona_recinto(row[6])
             self.posiciona_manager(row[7])
Esempio n. 25
0
 def loadData(self):
     # Creado mere
     if self.id_personal == None:
         data = [
             "PEPEAL", "Alejandro", "Pérez Pérez", "67458932M", "654321987",
             "*****@*****.**", "carrer example nº3 08012 Barcelona",
             "Sí", "ES12 2345 2345 2345 2345", "Ingles"
         ]
         self.load_one(data)
     else:
         bd = BdStd()
         bd.runsql("SELECT * FROM personal WHERE id_personal = '" +
                   self.id_personal + "'")
         if bd.rows != None:
             for row in bd.rows:
                 self.load_one(row)
Esempio n. 26
0
    def loadcombo2 (self) :

        
        bd=BdStd()
        txtsql = "SELECT fecha, tarea FROM dias_evento WHERE id_evento = '"+self.id_evento+ "'"
        txtsql += " ORDER BY fecha"
        bd.runsql(txtsql)
        self.ui.combo_dia_personal.clear()

        self.map_fechas =  {"ALL": '000'}
        self.ui.combo_dia_personal.addItem("ALL")

        if bd.rows != None :
            for row_data in bd.rows:
                self.map_fechas[row_data[0]] : row_data[1]
                self.ui.combo_dia_personal.addItem(row_data[0] + " " +row_data[1])
Esempio n. 27
0
    def load_personal_added(self):
                    
        bd=BdStd()
        txtsql = 'SELECT id_evento, id_personal, yymmdd, nombre FROM personal_evento as pev'
        txtsql += ' JOIN cargos ON cargos.id_cargo = pev.id_cargo   WHERE  id_evento = "' 
        txtsql += self.id_evento + '"'
       
        print ("load_personal_added ", txtsql)
        bd.runsql(txtsql)
        self.ui.personal_added.setRowCount(0)

        if bd.rows != None :
            for i, row_data in enumerate(bd.rows):
                self.ui.personal_added.insertRow(i)
                for j, data in enumerate(row_data):
                    self.ui.personal_added.setItem(i, j, QtWidgets.QTableWidgetItem(str(data)))
Esempio n. 28
0
    def crear_fecha(self, fecha, nom_servicio):
        hora = self.ui.hora.time()
        hora = hora.toString("hh:mm")

        bd = BdStd()
        txtsql = "INSERT INTO proveedores_evento (id_proveedor, id_evento, servicio, fecha\
                       ,hora, contacto_onsite, telefono_onsite,email_onsite, notas) \
                    VALUES ('{}','{}','{}','{}','{}','{}','{}','{}','{}');"

        txtsql = txtsql.format(self.id_proveedor, self.padre.id_evento,
                               nom_servicio, bd.gira_fecha(fecha), hora,
                               self.ui.inputContacto.text(),
                               self.ui.inputTelefono.text(),
                               self.ui.inputEmail.text().lower(),
                               self.ui.inputNotas.toPlainText())
        print(txtsql)
        bd.runsql(txtsql)
Esempio n. 29
0
def getOcupadoCale(id_personal, yyyymm):

    # devuelve un array con dias y sus eventos
    bd = BdStd()
    dias_ocupado = ["" for x in range(31)]
    txtsql = f"""SELECT fecha, id_personal FROM personal_ocupado   WHERE id_personal = '{id_personal}'
    AND  fecha BETWEEN '{yyyymm}-01' AND '{yyyymm}-31' ORDER BY id_personal, fecha"""

    print("getOcupadoCale: ", txtsql)

    bd.runsql(txtsql)
    print(bd.rows)
    if bd.rows != None:
        for row in bd.rows:
            dia = int0(row[0][8:10])
            dias_ocupado[dia - 1] = row[1]
    return (dias_ocupado)
Esempio n. 30
0
def getCargosPersonal(id_personal):
    # rellena el array de cargos con los que tiene la persona en la base de datos
    map_cargos = getArrayCargos()
    bd = BdStd()
    bd.runsql("SELECT * FROM tarifas WHERE id_personal = '" + id_personal +
              "'")
    #id_personal, id_cargo, tarifa

    if bd.rows != None:
        for row in bd.rows:
            for i, cargo in enumerate(map_cargos):
                if cargo['id'] == row[1]:
                    map_cargos[i]['checked'] = "1"  # ON
                    map_cargos[i]['tarifa'] = row[2]
                    break
    #print(map_cargos)
    return (map_cargos)