def buscar_cliente(self): numero_documento_cliente= self.obj_form.lne_dni_filtro_buscar.text() if numero_documento_cliente != "": try: numero_documento=int(numero_documento_cliente) except: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText('Ingresar nuevamente el numero de documento sin espacios y sin puntos') msgBox.exec_() return False obj_N_datos_personales_cliente = N_datos_personales_cliente() obj_party_party=obj_N_datos_personales_cliente.buscar_party_party_por_nro_doc(numero_documento) if obj_party_party != False: #tabla party party self.id_party = obj_party_party.id_party self.obj_form.lne_apellido_buscar.setText(obj_party_party.apellido) self.obj_form.lne_nombre_buscar.setText(obj_party_party.nombre) self.obj_form.lne_tipo_doc_buscar.setText(obj_party_party.tipo_doc) self.obj_form.lne_nro_doc_cliente.setText(obj_party_party.num_doc) self.obj_form.lne_estado.setText(obj_party_party.estado) self.obj_form.lne_fecha_nac.setText(str(obj_party_party.fec_nac)) self.obj_form.lne_estado_civil.setText(obj_party_party.estado_civil) self.obj_form.lne_limite_credito_buscar.setText(str(obj_party_party.limite_credito)) #talba address obj_N_party_address= N_party_address(1) obj_party_address = obj_N_party_address.get_party_address(self.id_party) self.obj_form.lne_domicilio_buscar.setText(obj_party_address.domicilio) self.obj_form.lne_ciudad_buscar.setText(obj_party_address.ciudad) self.obj_form.lne_barrio_buscar.setText(obj_party_address.barrio) #table contacto obj_N_party_contacto= N_party_contacto(1) list_party_contacto= obj_N_party_contacto.get_list_party_contacto(self.id_party) for item in list_party_contacto: if item.type_contacto == "Telefono": self.obj_form.lne_telefono_buscar.setText(item.value) if item.type_contacto=="Email": self.obj_form.lne_email_buscar.setText(item.value) #party cliente obj_N_party_cliente= N_party_cliente(1) obj_party_cliente=obj_N_party_cliente.get_party_cliente(self.id_party) self.obj_form.lne_nro_cliente_buscar.setText(str(obj_party_cliente.nro_cliente)) self.obj_form.txte_observaciones_buscar.setText(obj_party_cliente.comment) #terminar buscar propiedad para seteart cliente #self.obj_form.txte_observaciones_buscar.setText(obj_party_cliente.comment) #toPlainText obj_N_datos_laborales=N_datos_laborales() obj_datos_laborales= obj_N_datos_laborales.get_datos_laborales(self.id_party) self.obj_form.lne_ocupacion_buscar.setText(obj_datos_laborales.ocupacion) self.obj_form.lne_organismo_buscar.setText(obj_datos_laborales.organismo) self.obj_form.lne_telefono_laboral_buscar.setText(obj_datos_laborales.tel_laboral) self.obj_form.lne_domicilio_laboral_buscar.setText(obj_datos_laborales.dom_laboral) self.obj_form.lne_sueldo_buscar.setText(str(obj_datos_laborales.sueldo)) self.obj_form.lne_antiguedad_buscar.setText(obj_datos_laborales.anti_laboral) self.obj_form.lne_categoria_buscar.setText(obj_datos_laborales.categoria) #pyqtRemoveInputHook() #import pdb; pdb.set_trace() self.obj_form.ckbx_posee_sueldo_buscar.setChecked(obj_datos_laborales.posee_recibo_sueldo) obj_N_garante= N_party_garante(1) self.list_garante = obj_N_garante.get_list_party_garante(obj_party_cliente.nro_cliente) for item in self.list_garante : nro_cliente = item.nro_cliente tipo_garante = item.tipo_garante comment = item.comment obj_N_datos_personales_cliente=N_datos_personales_cliente() obj_datos_personales_cliente = obj_N_datos_personales_cliente.buscar_party_party_por_id(item.id_party_garante) #AGREGAR REGISTROS EN LA GRILLA #pyqtRemoveInputHook() #import pdb; pdb.set_trace() rowPosition = self.obj_form.tw_garantes_lista.rowCount() self.obj_form.tw_garantes_lista.insertRow(rowPosition) self.obj_form.tw_garantes_lista.setItem(rowPosition , 0, QTableWidgetItem(obj_datos_personales_cliente.estado)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 1, QTableWidgetItem(item.tipo_garante)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 2, QTableWidgetItem(str(obj_party_cliente.nro_cliente))) self.obj_form.tw_garantes_lista.setItem(rowPosition , 3, QTableWidgetItem(obj_datos_personales_cliente.apellido)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 4, QTableWidgetItem(obj_datos_personales_cliente.nombre)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 5, QTableWidgetItem(obj_datos_personales_cliente.nro_doc)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 6, QTableWidgetItem(comment)) #tabla party otros buscar/gonzalo #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_N_otros_datos= N_party_otros(1) obj_party_otros=obj_N_otros_datos.get_party_otros(self.id_party) self.obj_form.lne_tipo_iva_buscar.setText(obj_party_otros.tipo_iva) self.obj_form.lne_cuit_buscar.setText(obj_party_otros.cuit) self.obj_form.lne_cbu_buscar.setText(obj_party_otros.cbu) self.obj_form.lne_nro_beneficio_buscar.setText(obj_party_otros.num_beneficio) self.obj_form.ckbx_facturas_buscar.setChecked(obj_party_otros.presento_factura) self.obj_form.ckbx_veraz_buscar.setChecked(obj_party_otros.figura_veraz) self.obj_form.ckbx_jub_pens_buscar.setChecked(obj_party_otros.es_jubilado_pensionado) else: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText("Error, el asociado no existe o el campo esta vacio.") msgBox.exec_() return False
def guardar(self): apellido = self.obj_form_cliente.lne_apellido.text() nombre = self.obj_form_cliente.lne_nombre_nuevo.text() nro_dni = self.obj_form_cliente.lne_nro_doc.text() if (apellido != "") and (nombre != "") and (nro_dni != ""): numero_documento_cliente = self.obj_form_cliente.lne_nro_doc.text() try: numero_documento = int(numero_documento_cliente) except: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText( 'Ingresar nuevamente el numero de documento sin espacios y sin puntos' ) msgBox.exec_() return False obj_N_datos_personales_cliente = N_datos_personales_cliente() obj_N_datos_personales_cliente.nombre = nombre.upper() obj_N_datos_personales_cliente.apellido = self.obj_form_cliente.lne_apellido.text( ).upper() obj_N_datos_personales_cliente.fec_nac = self.obj_form_cliente.dte_nacimiento.text( ) obj_N_datos_personales_cliente.tipo_doc = self.obj_form_cliente.cbx_tipo_doc.currentText( ) obj_N_datos_personales_cliente.nro_doc = numero_documento obj_N_datos_personales_cliente.estado_civil = self.obj_form_cliente.cbx_estado_civil.currentText( ) if self.obj_form_cliente.lne_limite_credito.text() != "": try: limite_credito = float( self.obj_form_cliente.lne_limite_credito.text()) obj_N_datos_personales_cliente.limite_credito = limite_credito except: obj_N_datos_personales_cliente.limite_credito = 0 obj_N_datos_personales_cliente.estado = self.obj_form_cliente.cbx_estado.currentText( ) #boton guardar obj_N_datos_personales_cliente.id = self.id_usu self.id_party = N_datos_personales_cliente().guardar( obj_N_datos_personales_cliente) if self.id_party != "False": obj_party_cliente = N_party_cliente(self.id_party) obj_party_cliente.guardar_N_party_cliente( self.obj_form_cliente.txte_observaciones.toPlainText(), self.id_party) self.nro_cliente = obj_party_cliente.get_nro_cliente( self.id_party) self.obj_form_cliente.lne_nro_cliente.setText( str(self.nro_cliente)) obj_party_contacto3 = N_party_contacto(1) obj_party_contacto3.type_contacto = "Telefono" obj_party_contacto3.value = self.obj_form_cliente.lne_telefono.text( ) obj_party_contacto_email = N_party_contacto(1) obj_party_contacto_email.type_contacto = "Email" obj_party_contacto_email.value = self.obj_form_cliente.lne_email.text( ) obj_N_party_contacto = N_party_contacto(1) obj_N_party_contacto.guardar(obj_party_contacto3, self.id_party) obj_N_party_contacto.guardar(obj_party_contacto_email, self.id_party) ciudad = self.obj_form_cliente.lne_barrio.text() obj_N_party_address = N_party_address(ciudad) obj_N_party_address.domicilio = self.obj_form_cliente.lne_domicilio.text( ) obj_N_party_address.barrio = self.obj_form_cliente.lne_barrio.text( ) obj_N_party_address.ciudad = self.obj_form_cliente.cbx_ciudad.currentText( ) #boton guardar obj_party_address = N_party_address(ciudad) obj_party_address.guardar(obj_N_party_address, self.id_party) organismo = self.obj_form_cliente.lne_organismo.text() obj_N_datos_laborales = N_datos_laborales() if self.obj_form_cliente.lne_sueldo.text() != "": try: sueldo = float(self.obj_form_cliente.lne_sueldo.text()) obj_N_datos_laborales.sueldo = sueldo except: obj_N_datos_laborales.sueldo = 0 obj_N_datos_laborales.anti_laboral = self.obj_form_cliente.lne_antiguedad.text( ) obj_N_datos_laborales.tel_laboral = self.obj_form_cliente.lne_telefono_laboral.text( ) obj_N_datos_laborales.dom_laboral = self.obj_form_cliente.lne_domicilio_laboral.text( ) obj_N_datos_laborales.organismo = self.obj_form_cliente.lne_organismo.text( ) obj_N_datos_laborales.ocupacion = self.obj_form_cliente.lne_ocupacion.text( ) obj_N_datos_laborales.categoria = self.obj_form_cliente.lne_categoria.text( ) if self.obj_form_cliente.ckbx_recibo_sueldo_nuevo.isChecked(): obj_N_datos_laborales.posee_recibo_sueldo = True else: obj_N_datos_laborales.posee_recibo_sueldo = False #boton guardar obj_datos_laborales = N_datos_laborales() obj_datos_laborales.guardar(obj_N_datos_laborales, self.id_party) #//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7 cuit = self.obj_form_cliente.lne_cuit.text() obj_N_party_otros = N_party_otros(cuit) obj_N_party_otros.tipo_iva = self.obj_form_cliente.cbx_tipo_iva.currentText( ) obj_N_party_otros.cuit = self.obj_form_cliente.lne_cuit.text() obj_N_party_otros.cbu = self.obj_form_cliente.lne_cbu.text() obj_N_party_otros.num_beneficio = self.obj_form_cliente.lne_nro_beneficio.text( ) if self.obj_form_cliente.ckbx_facturas.isChecked(): obj_N_party_otros.presento_factura = True if self.obj_form_cliente.ckbx_veraz.isChecked(): obj_N_party_otros.figura_veraz = True if self.obj_form_cliente.ckbx_jub_pens.isChecked(): obj_N_party_otros.es_jubilado_pensionado = True #boton guardar obj_party_otros = N_party_otros(cuit) obj_party_otros.guardar(obj_N_party_otros, self.id_party) #boton guardar obj_party_garante2 = N_party_garante("A") obj_party_garante2.guardar(self.list_garante, self.nro_cliente) self.obj_form_cliente.lne_nro_cliente.setText( str(self.nro_cliente)) msgBox = QMessageBox() msgBox.setWindowTitle("Aviso") msgBox.setText("Cliente se guardo correctamente. Nro. " + str(self.nro_cliente)) msgBox.exec_() else: msgBox = QMessageBox() msgBox.setWindowTitle("Error") msgBox.setText( "No se pudo grabar: Numero de documento duplicado, actualice los datos" ) msgBox.exec_() else: msgBox = QMessageBox() msgBox.setWindowTitle("Advertencia") msgBox.setText( "Revisar campos obligatorios: Nombre, Apellido y Dni.") msgBox.exec_()
def imprimir(self): #monto_total_credito_letras = to_word(int(self.obj_form.lne_importe_prestamo_creditonuevo.text()),'EUR') #cant_cta_letras = to_word(int(self.obj_form.spbx_cantidad_cuotas_creditonuevo.text()),'EUR') obj_E_party = E_party_party() obj_asoc = obj_E_party.get_party_party( self.obj_form.lne_nro_doc_creditonuevo.text()) obj_N_party_address = N_party_address("a") obj_party_address = obj_N_party_address.get_party_address( obj_asoc.id_party) fec_hoy = datetime.date.today() hoy = fec_hoy.strftime("%d/%m/%Y") styleSheet = getSampleStyleSheet() img = Image("cabezalcaida.png", 100, 25) img.hAlign = "RIGHT" otro_estilo = ParagraphStyle('', fontSize=9, textColor='#000', leftIndent=-44, rightIndent=150) fec_estilo = ParagraphStyle('', fontSize=9, textColor='#000', leftIndent=360, rightIndent=0) style_barra = ParagraphStyle('', fontSize=10, textColor='#000', leftIndent=0, rightIndent=10) texto_principal = "" estilo_texto = ParagraphStyle( '', fontSize=5, alignment=0, spaceBefore=0, spaceAfter=0, #backColor = '#fff', textColor='#000', leftIndent=5) h = Paragraph(texto_principal, estilo_texto) banner = [[img, h]] options = QFileDialog.Options() story = [] ban = Table(banner, colWidths=270, rowHeights=-25) story.append(ban) story.append(Spacer(0, 25)) P = Paragraph("<b> Fecha: </b>" + str(hoy) + "", fec_estilo) story.append(P) story.append(Spacer(0, 5)) P = Paragraph( "<b>Sr/a: </b>" + obj_asoc.apellido + " " + obj_asoc.nombre + " ", otro_estilo) story.append(P) story.append(Spacer(0, 5)) # P=Paragraph("<|b>DNI: </b>" + obj_asoc.num_doc + " " , otro_estilo) # story.append(P) # story.append(Spacer(0,5)) P = Paragraph("<b>Domicilio: </b>" + obj_party_address.domicilio + " ", otro_estilo) story.append(P) story.append(Spacer(0, 5)) P = Paragraph("<b>Localidad: </b>" + obj_party_address.ciudad + " ", otro_estilo) story.append(P) story.append(Spacer(0, 5)) integrantes = [ [ Paragraph('''<font size=10> <b> </b></font>''', styleSheet["BodyText"]) ], [ Paragraph('''<font size=10> <b> N° Cuota</b></font>''', estilo_texto), Paragraph('''<font size=10> <b> 1er Venc </b></font>''', estilo_texto), Paragraph( '''<font size=10> <b> Importe 1er Venc </b></font>''', estilo_texto) ] ] for row in xrange( self.obj_form.tw_lista_cuotas_creditonuevo.rowCount()): nro_cuota = self.obj_form.tw_lista_cuotas_creditonuevo.item( row, 0).text() capital = self.obj_form.tw_lista_cuotas_creditonuevo.item( row, 1).text() interes = self.obj_form.tw_lista_cuotas_creditonuevo.item( row, 2).text() _1er_Venc = self.obj_form.tw_lista_cuotas_creditonuevo.item( row, 4).text() fec_venc = datetime.datetime.strptime(_1er_Venc, "%Y-%m-%d %H:%M:%S") importe_1er_Venc = self.obj_form.tw_lista_cuotas_creditonuevo.item( row, 5).text() #pyqtRemoveInputHook() #import pdb; pdb.set_trace() mes = self.convert_Mes(fec_venc.month) estilonom_plan = " <font size=9>" + nro_cuota + "</font>" estilodescuento = " <font size=9>" + str( fec_venc.day) + "/ " + mes + " </font>" estilointeres = " <font size=9>" + importe_1er_Venc + "</font>" integrantes.append([ Paragraph(estilonom_plan, estilo_texto), Paragraph(estilodescuento, estilo_texto), Paragraph(estilointeres, estilo_texto) ]) t = Table(integrantes, (175, 175, 175)) t.setStyle( TableStyle([ ('INNERGRID', (0, 1), (-1, -1), 0.25, colors.black), ('BOX', (0, 1), (-1, -1), 0.25, colors.black), ('BACKGROUND', (0, 1), (-1, 1), colors.lightgrey) ])) story.append(t) story.append(Spacer(0, 25)) P = Paragraph( "*** Informamos que ante el pago fuera de término, la empresa aplicará interés por mora***", style_barra) story.append(P) #---------------------------------------CAMBIAR RUTA (LA PALABRA slam2016 POR LA RUTA DESEADA DE LA PC)------------------------------------------------# #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_config = configuracion() cadena = obj_config.ruta() file_path = cadena + "/pdf/credito/credito" + str( datetime.date.today().year) + "_" + str( datetime.date.today().month) if not os.path.exists(file_path): os.makedirs(file_path) doc = SimpleDocTemplate(file_path + "/credito_" + obj_asoc.apellido + "_" + obj_asoc.nombre + ".pdf") doc.build(story) msgBox = QMessageBox() msgBox.setWindowTitle("Estado de Credito") msgBox.setText("El Credito se ha generado correctamente") msgBox.exec_() if sys.platform == 'linux': subprocess.call([ "xdg-open", file_path + "/credito_" + obj_asoc.apellido + "_" + obj_asoc.nombre + ".pdf" ]) else: os.startfile(file_path + "/credito_" + obj_asoc.apellido + "_" + obj_asoc.nombre + ".pdf") return True
def buscar_cliente(self): numero_documento_cliente = self.obj_form.lne_dni_filtro_buscar.text() if numero_documento_cliente != "": try: numero_documento = int(numero_documento_cliente) except: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText( 'Ingresar nuevamente el numero de documento sin espacios y sin puntos' ) msgBox.exec_() return False obj_N_datos_personales_cliente = N_datos_personales_cliente() obj_party_party = obj_N_datos_personales_cliente.buscar_party_party_por_nro_doc( numero_documento) if obj_party_party != False: #tabla party party self.id_party = obj_party_party.id_party self.obj_form.lne_apellido_buscar.setText( obj_party_party.apellido) self.obj_form.lne_nombre_buscar.setText(obj_party_party.nombre) self.obj_form.lne_tipo_doc_buscar.setText( obj_party_party.tipo_doc) self.obj_form.lne_nro_doc_cliente.setText( obj_party_party.num_doc) self.obj_form.lne_estado.setText(obj_party_party.estado) self.obj_form.lne_fecha_nac.setText( str(obj_party_party.fec_nac)) self.obj_form.lne_estado_civil.setText( obj_party_party.estado_civil) self.obj_form.lne_limite_credito_buscar.setText( str(obj_party_party.limite_credito)) #talba address obj_N_party_address = N_party_address(1) obj_party_address = obj_N_party_address.get_party_address( self.id_party) self.obj_form.lne_domicilio_buscar.setText( obj_party_address.domicilio) self.obj_form.lne_ciudad_buscar.setText( obj_party_address.ciudad) self.obj_form.lne_barrio_buscar.setText( obj_party_address.barrio) #table contacto obj_N_party_contacto = N_party_contacto(1) list_party_contacto = obj_N_party_contacto.get_list_party_contacto( self.id_party) for item in list_party_contacto: if item.type_contacto == "Telefono": self.obj_form.lne_telefono_buscar.setText(item.value) if item.type_contacto == "Email": self.obj_form.lne_email_buscar.setText(item.value) #party cliente obj_N_party_cliente = N_party_cliente(1) obj_party_cliente = obj_N_party_cliente.get_party_cliente( self.id_party) self.obj_form.lne_nro_cliente_buscar.setText( str(obj_party_cliente.nro_cliente)) self.obj_form.txte_observaciones_buscar.setText( obj_party_cliente.comment) #terminar buscar propiedad para seteart cliente #self.obj_form.txte_observaciones_buscar.setText(obj_party_cliente.comment) #toPlainText obj_N_datos_laborales = N_datos_laborales() obj_datos_laborales = obj_N_datos_laborales.get_datos_laborales( self.id_party) self.obj_form.lne_ocupacion_buscar.setText( obj_datos_laborales.ocupacion) self.obj_form.lne_organismo_buscar.setText( obj_datos_laborales.organismo) self.obj_form.lne_telefono_laboral_buscar.setText( obj_datos_laborales.tel_laboral) self.obj_form.lne_domicilio_laboral_buscar.setText( obj_datos_laborales.dom_laboral) self.obj_form.lne_sueldo_buscar.setText( str(obj_datos_laborales.sueldo)) self.obj_form.lne_antiguedad_buscar.setText( obj_datos_laborales.anti_laboral) self.obj_form.lne_categoria_buscar.setText( obj_datos_laborales.categoria) #pyqtRemoveInputHook() #import pdb; pdb.set_trace() self.obj_form.ckbx_posee_sueldo_buscar.setChecked( obj_datos_laborales.posee_recibo_sueldo) obj_N_garante = N_party_garante(1) self.list_garante = obj_N_garante.get_list_party_garante( obj_party_cliente.nro_cliente) for item in self.list_garante: nro_cliente = item.nro_cliente tipo_garante = item.tipo_garante comment = item.comment obj_N_datos_personales_cliente = N_datos_personales_cliente( ) obj_datos_personales_cliente = obj_N_datos_personales_cliente.buscar_party_party_por_id( item.id_party_garante) #AGREGAR REGISTROS EN LA GRILLA #pyqtRemoveInputHook() #import pdb; pdb.set_trace() rowPosition = self.obj_form.tw_garantes_lista.rowCount() self.obj_form.tw_garantes_lista.insertRow(rowPosition) self.obj_form.tw_garantes_lista.setItem( rowPosition, 0, QTableWidgetItem(obj_datos_personales_cliente.estado)) self.obj_form.tw_garantes_lista.setItem( rowPosition, 1, QTableWidgetItem(item.tipo_garante)) self.obj_form.tw_garantes_lista.setItem( rowPosition, 2, QTableWidgetItem(str(obj_party_cliente.nro_cliente))) self.obj_form.tw_garantes_lista.setItem( rowPosition, 3, QTableWidgetItem( obj_datos_personales_cliente.apellido)) self.obj_form.tw_garantes_lista.setItem( rowPosition, 4, QTableWidgetItem(obj_datos_personales_cliente.nombre)) self.obj_form.tw_garantes_lista.setItem( rowPosition, 5, QTableWidgetItem(obj_datos_personales_cliente.nro_doc)) self.obj_form.tw_garantes_lista.setItem( rowPosition, 6, QTableWidgetItem(comment)) #tabla party otros buscar/gonzalo #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_N_otros_datos = N_party_otros(1) obj_party_otros = obj_N_otros_datos.get_party_otros( self.id_party) self.obj_form.lne_tipo_iva_buscar.setText( obj_party_otros.tipo_iva) self.obj_form.lne_cuit_buscar.setText(obj_party_otros.cuit) self.obj_form.lne_cbu_buscar.setText(obj_party_otros.cbu) self.obj_form.lne_nro_beneficio_buscar.setText( obj_party_otros.num_beneficio) self.obj_form.ckbx_facturas_buscar.setChecked( obj_party_otros.presento_factura) self.obj_form.ckbx_veraz_buscar.setChecked( obj_party_otros.figura_veraz) self.obj_form.ckbx_jub_pens_buscar.setChecked( obj_party_otros.es_jubilado_pensionado) else: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText( "Error, el asociado no existe o el campo esta vacio.") msgBox.exec_() return False
def actualizar_cliente(self,id_party): # party party if (self.obj_form.lne_apellido_actualizar.text() !="") and (self.obj_form.lne_nombre_actualizar.text() !="") and (self.obj_form.lne_nro_doc_actualizar.text() !="") and (self.obj_form.lne_nro_cliente.text() !=""): obj_N_datos_personales_cliente = N_datos_personales_cliente() obj_party_party=obj_N_datos_personales_cliente.buscar_party_party_por_id(self.obj_form.lne_id_party_actualizar.text()) self.id_party = obj_party_party.id_party obj_party_party = N_datos_personales_cliente() obj_party_party.apellido = self.obj_form.lne_apellido_actualizar.text().upper() obj_party_party.nombre = self.obj_form.lne_nombre_actualizar.text().upper() obj_party_party.tipo_doc = self.obj_form.cbx_tipo_doc_actualizar.currentText() obj_party_party.nro_doc = self.obj_form.lne_nro_doc_actualizar.text() obj_party_party.estado_civil = self.obj_form.cbx_estado_civil_actualizar.currentText() obj_party_party.fec_nac = self.obj_form.dte_nacimiento_actualizar.text() obj_party_party.limite_credito = self.obj_form.lne_limite_credito_actualizar.text() obj_party_party.estado = self.obj_form.cbx_estado_actualizar.currentText() obj_N_datos_personales_cliente.actualizar_party_party(obj_party_party, self.id_party) obj_party_cliente = N_party_cliente(self.id_party) #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_comentario = obj_party_cliente.actualizar_comentario(self.id_party, self.obj_form.txte_observaciones_actualizar.toPlainText()) self.nro_cliente = obj_party_cliente.get_nro_cliente(self.id_party) self.obj_form.lne_nro_cliente.setText(str(self.nro_cliente)) #pyqtRemoveInputHook() #import pdb; pdb.set_trace() # tabla address ciudad = self.obj_form.lne_barrio_actualizar.text() obj_N_party_address = N_party_address(ciudad) obj_N_party_address.domicilio = self.obj_form.lne_domicilio_actualizar.text() obj_N_party_address.barrio = self.obj_form.lne_barrio_actualizar.text() obj_N_party_address.ciudad = self.obj_form.cbx_ciudad_actualizar.currentText() #boton guardar obj_party_address= N_party_address(ciudad) obj_party_address.actualizar_party_address(obj_N_party_address, self.id_party) # actualizo tabla contact obj_party_contacto3= N_party_contacto(1) obj_party_contacto3.type_contacto= "Telefono" obj_party_contacto3.value =self.obj_form.lne_telefono_actualizar.text() obj_party_contacto_email=N_party_contacto(1) obj_party_contacto_email.type_contacto="Email" obj_party_contacto_email.value= self.obj_form.lne_email_actualizar.text() obj_N_party_contacto=N_party_contacto(1) #obj_N_party_contacto.domicilio = self.obj_form.txte_observaciones_actualizar.text() obj_N_party_contacto.actualizar_party_contact(obj_party_contacto3, self.id_party) obj_N_party_contacto.actualizar_party_contact(obj_party_contacto_email, self.id_party) #actualizo party datos laborales organismo = self.obj_form.lne_organismo_actualizar.text() obj_N_datos_laborales = N_datos_laborales() obj_N_datos_laborales.sueldo = self.obj_form.lne_sueldo_actualizar.text() obj_N_datos_laborales.anti_laboral = self.obj_form.lne_antiguedad_actualizar.text() obj_N_datos_laborales.tel_laboral = self.obj_form.lne_telefono_laboral_actualizar.text() obj_N_datos_laborales.dom_laboral = self.obj_form.lne_domicilio_laboral_actualizar.text() obj_N_datos_laborales.organismo = self.obj_form.lne_organismo_actualizar.text() obj_N_datos_laborales.ocupacion = self.obj_form.lne_ocupacion_actualizar.text() obj_N_datos_laborales.categoria = self.obj_form.lne_categoria_actualizar.text() if self.obj_form.ckbx_recibo_sueldo_actualizar.isChecked(): obj_N_datos_laborales.posee_recibo_sueldo = True else: obj_N_datos_laborales.posee_recibo_sueldo = False #boton guardar obj_datos_laborales= N_datos_laborales() obj_datos_laborales.actualizar_datos_laborales(obj_N_datos_laborales,self.id_party) # tabla party otros------------ cuit = self.obj_form.lne_cuit_actualizar.text() obj_N_party_otros = N_party_otros(cuit) obj_N_party_otros.tipo_iva = self.obj_form.cbx_tipo_iva_actualizar.currentText() obj_N_party_otros.cuit = self.obj_form.lne_cuit_actualizar.text() obj_N_party_otros.cbu = self.obj_form.lne_cbu_actualizar.text() obj_N_party_otros.num_beneficio = self.obj_form.lne_nro_beneficio_actualizar.text() if self.obj_form.ckbx_facturas_actualizar.isChecked(): obj_N_party_otros.presento_factura = True if self.obj_form.ckbx_veraz_actualizar.isChecked(): obj_N_party_otros.figura_veraz = True if self.obj_form.ckbx_jub_pens_actualizar.isChecked(): obj_N_party_otros.es_jubilado_pensionado = True #if self.obj_form.ckbx_monotributista_actualizar.isChecked(): # obj_N_party_otros.monotributista = True #if self.obj_form.ckbx_cliente_bloqueado_actualizar.isChecked(): # obj_N_party_otros.cliente_bloqueado = True #boton guardar obj_party_otros= N_party_otros(cuit) obj_party_otros.actualizar_party_otros(obj_N_party_otros,self.id_party) #grilla actualizar obj_N_garante = N_party_garante(1) obj_N_garante.actualizar_lista_garante(self.list_garante, self.nro_cliente) #lne_archivo if self.obj_form.lne_archivo.text() != self.descripcion_archivo: nom_archivo = self.get_nom_archivo() #Actualizar archivo obj_config = configuracion() file_path = obj_config.ruta_server()+"/comprobantes" if not os.path.exists(file_path): os.makedirs(file_path) obj_archivo= E_archivo() obj_archivo.id_party= self.id_party obj_archivo.descripcion = file_path + nom_archivo obj_archivo.tipo_doc = "Comprobante creditos pre-existentes" obj_archivo.fec_create = datetime.date.today() obj_E_archivo = E_archivo() obj_E_archivo.actualizar(obj_archivo) cnopts = pysftp.CnOpts() cnopts.hostkeys = None try: with pysftp.Connection(host=obj_config.host_server(), username=obj_config.usu_server(), password=obj_config.pass_server(),cnopts=cnopts) as sftp: #sftp.put('/home/user/Documentos/credired/vencimientos/prueba.txt', '/home/user/Documentos/prueba.txt', confirm=True, preserve_mtime=False) # upload file to public/ on remote #sftp.put_r('/home/user/Documentos/credired/vencimientos', '/home/user/Documentos/', confirm=True, preserve_mtime=False) sftp.put(self.obj_form.lne_archivo.text(), obj_archivo.descripcion, confirm=True, preserve_mtime=False) # upload file to public/ on remote except: msgBox = QMessageBox() msgBox.setWindowTitle("Aviso") msgBox.setText("No se pudo actulizar el archivo") msgBox.exec_() msgBox = QMessageBox() msgBox.setWindowTitle("Aviso") msgBox.setText("Cliente actualizado.") msgBox.exec_() else: msgBox = QMessageBox() msgBox.setWindowTitle("Advertencia") msgBox.setText("Revisar campos obligatorios: Nombre, Apellido y Dni.") msgBox.exec_()
def buscar_cliente(self,id_party): self.limpiar() numero_documento_cliente= self.obj_form.lne_dni_filtro_actualizar.text() try: numero_documento=int(numero_documento_cliente) except: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText('Ingresar nuevamente el numero de documento sin espacios y sin puntos') msgBox.exec_() obj_N_datos_personales_cliente = N_datos_personales_cliente() obj_party_party=obj_N_datos_personales_cliente.buscar_party_party_por_nro_doc(self.obj_form.lne_dni_filtro_actualizar.text()) if obj_party_party != False: self.obj_form.tab_widget_actualizar_cliente.setEnabled(True) self.obj_form.lne_id_party_actualizar.setText(str(obj_party_party.id_party)) self.id_party = obj_party_party.id_party self.obj_form.lne_apellido_actualizar.setText(obj_party_party.apellido) self.obj_form.lne_nombre_actualizar.setText(obj_party_party.nombre) index_tipo_doc=self.obj_form.cbx_tipo_doc_actualizar.findText(str(obj_party_party.tipo_doc)) self.obj_form.cbx_tipo_doc_actualizar.setCurrentIndex(index_tipo_doc) self.obj_form.lne_dni_filtro_actualizar.setText(obj_party_party.num_doc) self.obj_form.lne_nro_doc_actualizar.setText(obj_party_party.num_doc) index_estado= self.obj_form.cbx_estado_actualizar.findText(str(obj_party_party.estado)) self.obj_form.cbx_estado_actualizar.setCurrentIndex(index_estado) self.obj_form.dte_nacimiento_actualizar.setDate(obj_party_party.fec_nac) index_estado_civil= self.obj_form.cbx_estado_civil_actualizar.findText(obj_party_party.estado_civil) self.obj_form.cbx_estado_civil_actualizar.setCurrentIndex(index_estado_civil) self.obj_form.lne_limite_credito_actualizar.setText(str(obj_party_party.limite_credito)) #tabla party adddreeeeeesssss actualizar obj_N_party_address= N_party_address(1) #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_party_address = obj_N_party_address.get_party_address(self.id_party) self.obj_form.lne_domicilio_actualizar.setText(obj_party_address.domicilio) index_ciudad=self.obj_form.cbx_ciudad_actualizar.findText(str(obj_party_address.ciudad)) self.obj_form.cbx_ciudad_actualizar.setCurrentIndex(index_ciudad) self.obj_form.lne_barrio_actualizar.setText(obj_party_address.barrio) #tabla contacto #VER EL OBSERVACIONES obj_n_cliente = N_party_cliente(1) obj_comentario = obj_n_cliente.get_party_cliente(self.id_party) self.obj_form.txte_observaciones_actualizar.setText(obj_comentario.comment) obj_N_party_contacto= N_party_contacto(1) list_party_contacto= obj_N_party_contacto.get_list_party_contacto(self.id_party) for item in list_party_contacto: if item.type_contacto == "Telefono": self.obj_form.lne_telefono_actualizar.setText(item.value) if item.type_contacto=="Email": self.obj_form.lne_email_actualizar.setText(item.value) #party cliente obj_N_party_cliente= N_party_cliente(1) obj_party_cliente=obj_N_party_cliente.get_party_cliente(self.id_party) self.obj_form.lne_nro_cliente.setText(str(obj_party_cliente.nro_cliente)) #datos laborales obj_N_datos_laborales=N_datos_laborales() obj_datos_laborales= obj_N_datos_laborales.get_datos_laborales(self.id_party) self.obj_form.lne_ocupacion_actualizar.setText(obj_datos_laborales.ocupacion) self.obj_form.lne_organismo_actualizar.setText(obj_datos_laborales.organismo) self.obj_form.lne_telefono_laboral_actualizar.setText(obj_datos_laborales.tel_laboral) self.obj_form.lne_domicilio_laboral_actualizar.setText(obj_datos_laborales.dom_laboral) self.obj_form.lne_sueldo_actualizar.setText(str(obj_datos_laborales.sueldo)) #pyqtRemoveInputHook() #import pdb; pdb.set_trace() self.obj_form.lne_antiguedad_actualizar.setText(obj_datos_laborales.anti_laboral) self.obj_form.lne_categoria_actualizar.setText(obj_datos_laborales.categoria) self.obj_form.ckbx_recibo_sueldo_actualizar.setChecked(obj_datos_laborales.posee_recibo_sueldo) #party otros obj_N_otros_datos_actualizar= N_party_otros(1) obj_party_otros=obj_N_otros_datos_actualizar.get_party_otros(self.id_party) index_tipo_iva=self.obj_form.cbx_tipo_iva_actualizar.findText(str(obj_party_otros.tipo_iva)) self.obj_form.cbx_tipo_iva_actualizar.setCurrentIndex(index_tipo_iva) self.obj_form.lne_cuit_actualizar.setText(obj_party_otros.cuit) self.obj_form.lne_cbu_actualizar.setText(obj_party_otros.cbu) self.obj_form.lne_nro_beneficio_actualizar.setText(obj_party_otros.num_beneficio) self.obj_form.ckbx_facturas_actualizar.setChecked(obj_party_otros.presento_factura) self.obj_form.ckbx_veraz_actualizar.setChecked(obj_party_otros.figura_veraz) #self.obj_form.ckbx_monotributista_actualizar.setChecked(obj_party_otros.monotributista) #self.obj_form.ckbx_cliente_bloqueado_actualizar.setChecked(obj_party_otros.cliente_bloqueado) self.obj_form.ckbx_jub_pens_actualizar.setChecked(obj_party_otros.es_jubilado_pensionado) #busca ruta de archivo #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_e_archivo = E_archivo() obj_archivo = obj_e_archivo.get_nombre_archivo(self.id_party) try: self.obj_form.lne_archivo.setText(obj_archivo.descripcion) self.descripcion_archivo = obj_archivo.descripcion except: self.obj_form.lne_archivo.setText("") #busca garantes y carga la grilla obj_N_garante= N_party_garante(1) self.list_garante = obj_N_garante.get_list_party_garante(obj_party_cliente.nro_cliente) for item in self.list_garante : nro_cliente = item.nro_cliente tipo_garante = item.tipo_garante comment = item.comment obj_N_datos_personales_cliente=N_datos_personales_cliente() obj_datos_personales_cliente = obj_N_datos_personales_cliente.buscar_party_party_por_id(item.id_party_garante) #AGREGAR REGISTROS EN LA GRILLA #pyqtRemoveInputHook() #import pdb; pdb.set_trace() rowPosition = self.obj_form.tw_garantes_lista.rowCount() self.obj_form.tw_garantes_lista.insertRow(rowPosition) self.obj_form.tw_garantes_lista.setItem(rowPosition , 0, QTableWidgetItem(obj_datos_personales_cliente.estado)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 1, QTableWidgetItem(item.tipo_garante)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 2, QTableWidgetItem(str(obj_party_cliente.nro_cliente))) self.obj_form.tw_garantes_lista.setItem(rowPosition , 3, QTableWidgetItem(obj_datos_personales_cliente.apellido)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 4, QTableWidgetItem(obj_datos_personales_cliente.nombre)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 5, QTableWidgetItem(obj_datos_personales_cliente.nro_doc)) self.obj_form.tw_garantes_lista.setItem(rowPosition , 6, QTableWidgetItem(comment)) else: msgBox = QMessageBox() msgBox.setText('Error numero de DNI inexistente') msgBox.exec_()
def imprimir(self): #monto_total_credito_letras = to_word(int(self.obj_form.lne_importe_prestamo_creditonuevo.text()),'EUR') #cant_cta_letras = to_word(int(self.obj_form.spbx_cantidad_cuotas_creditonuevo.text()),'EUR') obj_E_party = E_party_party() obj_asoc = obj_E_party.get_party_party(self.obj_form.lne_nro_doc_creditonuevo.text()) obj_N_party_address =N_party_address("a") obj_party_address =obj_N_party_address.get_party_address(obj_asoc.id_party) fec_hoy= datetime.date.today() hoy = fec_hoy.strftime("%d/%m/%Y") styleSheet=getSampleStyleSheet() img=Image("cabezalcaida.png",100,25) img.hAlign = "RIGHT" otro_estilo= ParagraphStyle('',fontSize =9,textColor = '#000',leftIndent = -44,rightIndent = 150) fec_estilo= ParagraphStyle('',fontSize =9,textColor = '#000',leftIndent = 360,rightIndent = 0) style_barra= ParagraphStyle('',fontSize = 10,textColor = '#000',leftIndent = 0,rightIndent = 10) texto_principal = "" estilo_texto = ParagraphStyle('', fontSize = 5, alignment = 0, spaceBefore = 0, spaceAfter = 0, #backColor = '#fff', textColor = '#000', leftIndent = 5 ) h = Paragraph( texto_principal, estilo_texto) banner = [ [ img,h ] ] options = QFileDialog.Options() story=[] ban = Table( banner, colWidths=270, rowHeights=-25) story.append(ban) story.append(Spacer(0,25)) P=Paragraph("<b> Fecha: </b>" + str(hoy)+"",fec_estilo) story.append(P) story.append(Spacer(0,5)) P=Paragraph("<b>Sr/a: </b>" + obj_asoc.apellido+ " "+ obj_asoc.nombre + " ",otro_estilo) story.append(P) story.append(Spacer(0,5)) # P=Paragraph("<|b>DNI: </b>" + obj_asoc.num_doc + " " , otro_estilo) # story.append(P) # story.append(Spacer(0,5)) P=Paragraph("<b>Domicilio: </b>" + obj_party_address.domicilio + " ",otro_estilo) story.append(P) story.append(Spacer(0,5)) P=Paragraph("<b>Localidad: </b>" + obj_party_address.ciudad + " ",otro_estilo) story.append(P) story.append(Spacer(0,5)) integrantes = [[Paragraph('''<font size=10> <b> </b></font>''',styleSheet["BodyText"])], [Paragraph('''<font size=10> <b> N° Cuota</b></font>''',estilo_texto), Paragraph('''<font size=10> <b> 1er Venc </b></font>''',estilo_texto), Paragraph('''<font size=10> <b> Importe 1er Venc </b></font>''',estilo_texto)]] for row in xrange(self.obj_form.tw_lista_cuotas_creditonuevo.rowCount ()): nro_cuota = self.obj_form.tw_lista_cuotas_creditonuevo.item(row,0).text() capital= self.obj_form.tw_lista_cuotas_creditonuevo.item(row,1).text() interes= self.obj_form.tw_lista_cuotas_creditonuevo.item(row,2).text() _1er_Venc= self.obj_form.tw_lista_cuotas_creditonuevo.item(row,4).text() fec_venc = datetime.datetime.strptime(_1er_Venc, "%Y-%m-%d %H:%M:%S") importe_1er_Venc= self.obj_form.tw_lista_cuotas_creditonuevo.item(row,5).text() #pyqtRemoveInputHook() #import pdb; pdb.set_trace() mes = self.convert_Mes(fec_venc.month) estilonom_plan= " <font size=9>" + nro_cuota + "</font>" estilodescuento= " <font size=9>" + str(fec_venc.day) + "/ " + mes + " </font>" estilointeres= " <font size=9>" + importe_1er_Venc + "</font>" integrantes.append([ Paragraph(estilonom_plan,estilo_texto), Paragraph(estilodescuento,estilo_texto), Paragraph(estilointeres,estilo_texto)]) t=Table(integrantes, (175, 175, 175)) t.setStyle(TableStyle([ ('INNERGRID', (0,1), (-1,-1), 0.25, colors.black), ('BOX', (0,1), (-1,-1), 0.25, colors.black), ('BACKGROUND',(0,1),(-1,1),colors.lightgrey) ])) story.append(t) story.append(Spacer(0,25)) P=Paragraph("*** Informamos que ante el pago fuera de término, la empresa aplicará interés por mora***",style_barra) story.append(P) #---------------------------------------CAMBIAR RUTA (LA PALABRA slam2016 POR LA RUTA DESEADA DE LA PC)------------------------------------------------# #pyqtRemoveInputHook() #import pdb; pdb.set_trace() obj_config = configuracion() cadena = obj_config.ruta() file_path = cadena + "/pdf/credito/credito"+str(datetime.date.today().year)+"_"+str(datetime.date.today().month) if not os.path.exists(file_path): os.makedirs(file_path) doc=SimpleDocTemplate(file_path+ "/credito_" + obj_asoc.apellido+ "_"+ obj_asoc.nombre + ".pdf") doc.build(story ) msgBox = QMessageBox() msgBox.setWindowTitle("Estado de Credito") msgBox.setText("El Credito se ha generado correctamente") msgBox.exec_() if sys.platform == 'linux': subprocess.call(["xdg-open", file_path +"/credito_" + obj_asoc.apellido+ "_"+ obj_asoc.nombre +".pdf"]) else: os.startfile( file_path +"/credito_" + obj_asoc.apellido+ "_"+ obj_asoc.nombre +".pdf") return True
def guardar(self): apellido = self.obj_form_cliente.lne_apellido.text() nombre = self.obj_form_cliente.lne_nombre_nuevo.text() nro_dni = self.obj_form_cliente.lne_nro_doc.text() if (apellido != "") and (nombre != "") and (nro_dni != ""): numero_documento_cliente= self.obj_form_cliente.lne_nro_doc.text() try: numero_documento= int(numero_documento_cliente) except: msgBox = QMessageBox() msgBox.setWindowTitle("Atencion") msgBox.setText('Ingresar nuevamente el numero de documento sin espacios y sin puntos') msgBox.exec_() return False obj_N_datos_personales_cliente = N_datos_personales_cliente() obj_N_datos_personales_cliente.nombre = nombre.upper() obj_N_datos_personales_cliente.apellido = self.obj_form_cliente.lne_apellido.text().upper() obj_N_datos_personales_cliente.fec_nac = self.obj_form_cliente.dte_nacimiento.text() obj_N_datos_personales_cliente.tipo_doc = self.obj_form_cliente.cbx_tipo_doc.currentText() obj_N_datos_personales_cliente.nro_doc = numero_documento obj_N_datos_personales_cliente.estado_civil = self.obj_form_cliente.cbx_estado_civil.currentText() if self.obj_form_cliente.lne_limite_credito.text() !="": try: limite_credito= float(self.obj_form_cliente.lne_limite_credito.text()) obj_N_datos_personales_cliente.limite_credito = limite_credito except: obj_N_datos_personales_cliente.limite_credito = 0 obj_N_datos_personales_cliente.estado = self.obj_form_cliente.cbx_estado.currentText() #boton guardar obj_N_datos_personales_cliente.id = self.id_usu self.id_party=N_datos_personales_cliente().guardar(obj_N_datos_personales_cliente) if self.id_party != "False" : obj_party_cliente = N_party_cliente(self.id_party) obj_party_cliente.guardar_N_party_cliente(self.obj_form_cliente.txte_observaciones.toPlainText(), self.id_party) self.nro_cliente = obj_party_cliente.get_nro_cliente(self.id_party) self.obj_form_cliente.lne_nro_cliente.setText(str(self.nro_cliente)) obj_party_contacto3= N_party_contacto(1) obj_party_contacto3.type_contacto= "Telefono" obj_party_contacto3.value =self.obj_form_cliente.lne_telefono.text() obj_party_contacto_email=N_party_contacto(1) obj_party_contacto_email.type_contacto="Email" obj_party_contacto_email.value= self.obj_form_cliente.lne_email.text() obj_N_party_contacto=N_party_contacto(1) obj_N_party_contacto.guardar(obj_party_contacto3, self.id_party) obj_N_party_contacto.guardar(obj_party_contacto_email, self.id_party) ciudad = self.obj_form_cliente.lne_barrio.text() obj_N_party_address = N_party_address(ciudad) obj_N_party_address.domicilio = self.obj_form_cliente.lne_domicilio.text() obj_N_party_address.barrio = self.obj_form_cliente.lne_barrio.text() obj_N_party_address.ciudad = self.obj_form_cliente.cbx_ciudad.currentText() #boton guardar obj_party_address= N_party_address(ciudad) obj_party_address.guardar(obj_N_party_address, self.id_party) organismo = self.obj_form_cliente.lne_organismo.text() obj_N_datos_laborales = N_datos_laborales() if self.obj_form_cliente.lne_sueldo.text() != "": try: sueldo = float(self.obj_form_cliente.lne_sueldo.text()) obj_N_datos_laborales.sueldo = sueldo except : obj_N_datos_laborales.sueldo = 0 obj_N_datos_laborales.anti_laboral = self.obj_form_cliente.lne_antiguedad.text() obj_N_datos_laborales.tel_laboral = self.obj_form_cliente.lne_telefono_laboral.text() obj_N_datos_laborales.dom_laboral = self.obj_form_cliente.lne_domicilio_laboral.text() obj_N_datos_laborales.organismo = self.obj_form_cliente.lne_organismo.text() obj_N_datos_laborales.ocupacion = self.obj_form_cliente.lne_ocupacion.text() obj_N_datos_laborales.categoria = self.obj_form_cliente.lne_categoria.text() if self.obj_form_cliente.ckbx_recibo_sueldo_nuevo.isChecked(): obj_N_datos_laborales.posee_recibo_sueldo = True else: obj_N_datos_laborales.posee_recibo_sueldo = False #boton guardar obj_datos_laborales= N_datos_laborales() obj_datos_laborales.guardar(obj_N_datos_laborales,self.id_party) #//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7 cuit = self.obj_form_cliente.lne_cuit.text() obj_N_party_otros = N_party_otros(cuit) obj_N_party_otros.tipo_iva = self.obj_form_cliente.cbx_tipo_iva.currentText() obj_N_party_otros.cuit = self.obj_form_cliente.lne_cuit.text() obj_N_party_otros.cbu = self.obj_form_cliente.lne_cbu.text() obj_N_party_otros.num_beneficio = self.obj_form_cliente.lne_nro_beneficio.text() if self.obj_form_cliente.ckbx_facturas.isChecked(): obj_N_party_otros.presento_factura = True if self.obj_form_cliente.ckbx_veraz.isChecked(): obj_N_party_otros.figura_veraz = True if self.obj_form_cliente.ckbx_jub_pens.isChecked(): obj_N_party_otros.es_jubilado_pensionado = True #boton guardar obj_party_otros= N_party_otros(cuit) obj_party_otros.guardar(obj_N_party_otros,self.id_party) #boton guardar obj_party_garante2 = N_party_garante("A") obj_party_garante2.guardar(self.list_garante,self.nro_cliente) self.obj_form_cliente.lne_nro_cliente.setText(str(self.nro_cliente)) msgBox = QMessageBox() msgBox.setWindowTitle("Aviso") msgBox.setText("Cliente se guardo correctamente. Nro. " + str(self.nro_cliente)) msgBox.exec_() else: msgBox = QMessageBox() msgBox.setWindowTitle("Error") msgBox.setText("No se pudo grabar: Numero de documento duplicado, actualice los datos") msgBox.exec_() else: msgBox = QMessageBox() msgBox.setWindowTitle("Advertencia") msgBox.setText("Revisar campos obligatorios: Nombre, Apellido y Dni.") msgBox.exec_()