def concesion_de_permisos_grupos(self, codigo): cant = len(self.obj("grilla").get_model()) if cant > 0: eleccion = Mens.pregunta_generico( "¿Desea conservar los permisos?", "El usuario ya posee pemisos sobre unas " + str(cant) + " entidades.") if not eleccion: self.on_btn_per_todos_clicked(0) conexion = Op.conectar(self.datos_conexion) cursor = Op.consultar( conexion, "*", "grupousuarios_permisos_s", " WHERE idGrupoUsuario = " + codigo + " ORDER BY idTabla") datos = cursor.fetchall() cant = cursor.rowcount conexion.close() # Finaliza la conexión for i in range(0, cant): self.idTabla = datos[i][2] con = True if datos[i][4] == 1 else False ins = True if datos[i][5] == 1 else False act = True if datos[i][6] == 1 else False eli = True if datos[i][7] == 1 else False anu = True if datos[i][8] == 1 else False self.permisos_tablas(con, ins, act, eli, anu, True) self.cargar_grilla()
def on_btn_pedido_clicked(self, objeto): # Si ya se ha elegido un pedido anterior, pregunta si esta seguro, # ya que se modificarán los registros agregados a la Orden de Compra eleccion = True if len(self.obj("txt_02").get_text()) == 0 \ else Mens.pregunta_generico("¿Está seguro?", "Elegir OTRO PEDIDO modificará los registros de ítems de la Orden actual.") if eleccion: from clases.llamadas import pedidocompras pedidocompras(self.nav.datos_conexion, self)
def on_btn_orden_clicked(self, objeto): # Si ya se ha elegido una orden anterior, pregunta si esta seguro de # querer eliminar todos los registros agregados a la Factura de Compra eleccion = True if len(self.obj("txt_orden").get_text()) == 0 \ else Mens.pregunta_generico("¿Está seguro?", "Elegir OTRA ORDEN modificará los registros de ítems de la Factura actual.") if eleccion: proveedor = self.obj("txt_03").get_text() condicion = None if len(proveedor) == 0 else "idProveedor = " + proveedor from clases.llamadas import ordencompras ordencompras(self.nav.datos_conexion, self, condicion)
def on_btn_limpiar_pedido_clicked(self, objeto): self.guardar_encabezado() if len(self.obj("txt_02").get_text()) > 0: eleccion = Mens.pregunta_generico( "¿Está seguro?", "Ha elegido eliminar la relación entre el Pedido\n" + "previamente seleccionado y la Orden actual.") if eleccion: orden = self.obj("txt_00").get_text() Op.eliminar(self.conexion, "ordencompras_pedidos", orden) self.obj("txt_02").set_text("") self.editando_pedido = self.pedido_guardado = False
def on_btn_limpiar_orden_clicked(self, objeto): self.guardar_encabezado() if len(self.obj("txt_orden").get_text()) > 0: eleccion = Mens.pregunta_generico("¿Está seguro?", "Ha elegido eliminar la relación entre la Orden de Compra\n" + "previamente seleccionada y la Factura actual.") if eleccion: fact = self.obj("txt_00").get_text() timb = self.obj("txt_01").get_text() Op.eliminar(self.conexion, self.nav.tabla + "_ordenes", timb + ", '" + fact + "'") self.obj("txt_orden").set_text("") self.obj("txt_fecha").set_text("") self.editando_orden = self.orden_guardada = False
def on_btn_factura_clicked(self, objeto): tabla = self.obj("grilla").get_model() if len(tabla) > 0: eleccion = Mens.pregunta_generico( "Guardar Cambios", "¿Desea guardar los cambios que haya realizado en las Cuotas?") if eleccion: self.conexion.commit() else: self.conexion.rollback() if self.tabla == "cuentascobrar": from ventas.facturas import factura_buscar factura_buscar(self.datos_conexion, self, "idTipoFactura = 2") else: pass
def __init__(self, datos, v_or): self.datos_conexion = datos self.origen = v_or if self.origen.estab is not None: #cerrar = self.comprobar_cierre_arqueo() cerrar = True if not cerrar: eleccion = Mens.pregunta_generico( "Aún no ha sido registrado el Arqueo de Caja", "Se ha registrado movimiento desde el último Arqueo.\n" + "¿Desea registra dicho Arqueo en este momento?") if eleccion: from arqueos import arqueos arqueos(self.datos_conexion, self.origen.estab, self.origen.caja, self.origen.numero) else: self.cerrar_caja() else: self.cerrar_caja()
def on_btn_factura_clicked(self, objeto): nota = self.obj("txt_00_3").get_text() timb = self.obj("txt_01_1").get_text() datos = self.obj("grilla").get_model() cant = len(datos) eleccion = True if cant == 0 else Mens.pregunta_generico( "¿Está seguro?", "Elegir una NUEVA FACTURA eliminará todos los registros actuales.") if eleccion: for i in range(0, cant): item = datos[i][0] self.eliminar_nota_lote(item) Op.eliminar(self.conexion, self.tabla + "_detalles", timb + ", " + nota + ", " + item) import venta_facturas venta_facturas.factura_buscar(self.conexion, self) if cant > 0: self.obj("barraestado").push( 0, "Los Ítems de la Nota de Débito han sido Eliminados.") self.cargar_grilla_detalles()
def buscar_empleado(self, objeto, campo, valor, nombre): conexion = Op.conectar(self.nav.datos_conexion) cursor = Op.consultar( conexion, "idPersona, RazonSocial, NroDocumento, " + "idTipoDocumento, NroSeguroIPS, idAsegurado, Genero, Nacionalidad, " + "EstadoCivil, FechaNacimiento, LugarNacimiento", "personas_s", " WHERE " + campo + " = " + valor + " AND Empleado = 1") datos = cursor.fetchall() cant = cursor.rowcount if cant > 0: nro_seg = "" if datos[0][4] is None else datos[0][4] id_aseg = "" if datos[0][5] is None else datos[0][5] self.obj("txt_00").set_text(str(datos[0][0])) self.obj("txt_00_1").set_text(datos[0][1]) self.obj("txt_00_2").set_text(datos[0][2]) self.obj("txt_00_3").set_text(nro_seg) self.obj("txt_00_4").set_text(id_aseg) self.obj("txt_00_5").set_text(datos[0][6]) self.obj("txt_00_6").set_text(datos[0][7]) self.obj("txt_00_7").set_text(datos[0][8]) self.obj("txt_00_8").set_text(Cal.mysql_fecha(datos[0][9])) self.obj("txt_00_9").set_text(datos[0][10]) # Asignación de Tipo de Documento en Combo model, i = self.obj("cmb_tipo_doc_emp").get_model(), 0 while model[i][0] != datos[0][3]: i += 1 self.obj("cmb_tipo_doc_emp").set_active(i) # Buscar Dirección Actual cursor = Op.consultar( conexion, "CONCAT(Direccion, " + "IFNULL(CONCAT(' Nº ', NroCasa), '')), " + "Barrio, Ciudad", "personas_direcciones_s", " WHERE idPersona = " + self.obj("txt_00").get_text()) datos = cursor.fetchall() if cursor.rowcount > 0: self.obj("txt_00_10").set_text(datos[0][0]) self.obj("txt_00_11").set_text(datos[0][1]) # Barrio self.obj("txt_00_12").set_text(datos[0][2]) # Ciudad # Buscar Teléfono Laboral (2) cursor = Op.consultar( conexion, "Descripcion", "personas_mediocontactos_s", " WHERE idPersona = " + self.obj("txt_00").get_text() + " AND idTipoMedioContacto = 2") datos = cursor.fetchall() if cursor.rowcount > 0: medio = "" if len(datos[0][0]) == 0 else datos[0][0] self.obj("txt_00_13").set_text(medio) # Buscar Teléfono Particular (1) cursor = Op.consultar( conexion, "Descripcion", "personas_mediocontactos_s", " WHERE idPersona = " + self.obj("txt_00").get_text() + " AND idTipoMedioContacto = 1") datos = cursor.fetchall() if cursor.rowcount > 0: medio = "" if len(datos[0][0]) == 0 else datos[0][0] self.obj("txt_00_14").set_text(medio) # Buscar Teléfono Móvil o Celular (3) cursor = Op.consultar( conexion, "Descripcion", "personas_mediocontactos_s", " WHERE idPersona = " + self.obj("txt_00").get_text() + " AND idTipoMedioContacto = 3") datos = cursor.fetchall() if cursor.rowcount > 0: medio = "" if len(datos[0][0]) == 0 else datos[0][0] self.obj("txt_00_15").set_text(medio) # Buscar Correo Electrónico (4) cursor = Op.consultar( conexion, "Descripcion", "personas_mediocontactos_s", " WHERE idPersona = " + self.obj("txt_00").get_text() + " AND idTipoMedioContacto = 4") datos = cursor.fetchall() if cursor.rowcount > 0: medio = "" if len(datos[0][0]) == 0 else datos[0][0] self.obj("txt_00_16").set_text(medio) # Verificar si el Empleado ya fue registrado cursor = Op.consultar( conexion, "idEmpleado", "beneficiarios_s", " WHERE idEmpleado = " + self.obj("txt_00").get_text()) datos = cursor.fetchall() cant = cursor.rowcount conexion.close() # Finaliza la conexión if cant > 0: if len(self.obj( "grilla").get_model()) > 0: # Ya hay datos cargados eleccion = Mens.pregunta_generico( "¿Qué Desea?", "Este Empleado ya posee familiares beneficiados con el Seguro de IPS" ) # - Si hay datos cargados preguntar si desea vincularlos al empleado actual o eliminarlos # - - modificar o eliminar (se usa condicion) self.cond_empleado = self.obj("txt_00").get_text() self.cargar_grilla_beneficiarios() self.obj("barraestado").push(0, "") self.verificacion(0) else: conexion.close() # Finaliza la conexión objeto.grab_focus() self.estadoguardar(False) self.obj("barraestado").push(0, "El " + nombre + " no es válido.") otro = self.obj("txt_00_2") if objeto == self.obj( "txt_00") else self.obj("txt_00") otro.set_text("") self.limpiar_empleado()