def test_wkhtmltopdf(self): """Should run wkhtmltopdf to generate a PDF""" title = 'A test template.' response = PDFTemplateResponse(self.factory.get('/'), None, context={'title': title}) temp_file = response.render_to_temporary_file('sample.html') try: # Standard call pdf_output = wkhtmltopdf(pages=[temp_file.name]) self.assertTrue(pdf_output.startswith(b'%PDF'), pdf_output) # Single page pdf_output = wkhtmltopdf(pages=temp_file.name) self.assertTrue(pdf_output.startswith(b'%PDF'), pdf_output) # Unicode pdf_output = wkhtmltopdf(pages=[temp_file.name], title=u'♥') self.assertTrue(pdf_output.startswith(b'%PDF'), pdf_output) # Invalid arguments self.assertRaises(CalledProcessError, wkhtmltopdf, pages=[]) finally: temp_file.close()
def create_pdf(self): return_file = ( "invoices/" + "Invoice_" + str(self.client.profile.last_name) + '_' + str(self.client.profile.first_name) + '_' + str(self.start_date.month) + '.pdf' ) abs_return_file = settings.MEDIA_ROOT + return_file context = { 'invoice' : self, 'user' : User.objects.get(username='******'), 'pdf' : True, } factory = RequestFactory() response = PDFTemplateResponse( request=factory.get('/admin/'), context=context, template=get_template('invoice.html'), cmd_options={ 'page-size': 'Letter', 'quiet': False }, ) temp_file = response.render_to_temporary_file( "invoice.html") try: wkhtmltopdf(pages=[temp_file.name], output=abs_return_file) self.pdf.name = return_file finally: temp_file.close() self.save()
def post(self, request, *args, **kwargs): uiu = {k:v for k, v in request.POST.iteritems() if 'uiu' in k} personal_data = {k:v for k, v in request.POST.iteritems() if 'urbutm' not in k and 'uiu' not in k} urbanistic_plans = [k for k, v in request.POST.iteritems() if 'urbutm' in k and v == 'on'] cdu_doc = cdu.document.Document(uiu, urbanistic_plans, personal_data) html_template = cdu_doc.create_html_document() if html_template: context = {'urbanistic_names': urbanistic_plans} pdf = PDFTemplateResponse(request=request, template='cdu/'+html_template, filename="cdu.pdf", context=context, show_content_in_browser=False) pdf.render() cdu_doc.remove_html_document() response = HttpResponse(content=pdf, content_type='application/pdf') response['Content-Disposition'] = 'attachment; filename="cdu.pdf"' return response else: #TODO:: adjust not intersections response #return HttpResponse('Non ci sono intersezioni') response = HttpResponse(content='json', content_type='text/javascript') return response
def test_PDFTemplateResponse_render_to_temporary_file(self): """Should render a template to a temporary file.""" title = 'A test template.' response = PDFTemplateResponse(self.factory.get('/'), None, context={'title': title}) temp_file = response.render_to_temporary_file('sample.html') temp_file.seek(0) saved_content = temp_file.read() self.assertTrue(title in saved_content) temp_file.close()
def test_wkhtmltopdf_with_unicode_content(self): """A wkhtmltopdf call should render unicode content properly""" title = u'♥' response = PDFTemplateResponse(self.factory.get('/'), None, context={'title': title}) temp_file = response.render_to_temporary_file('unicode.html') try: pdf_output = wkhtmltopdf(pages=[temp_file.name]) self.assertTrue(pdf_output.startswith(b'%PDF'), pdf_output) finally: temp_file.close()
def test_pdf_template_response(self, show_content=False): """Test PDFTemplateResponse.""" context = {'title': 'Heading'} request = RequestFactory().get('/') response = PDFTemplateResponse(request=request, template=self.template, context=context, show_content_in_browser=show_content) self.assertEqual(response._request, request) self.assertEqual(response.template_name, self.template) self.assertEqual(response.context_data, context) self.assertEqual(response.filename, None) self.assertEqual(response.header_template, None) self.assertEqual(response.footer_template, None) self.assertEqual(response.cmd_options, {}) self.assertFalse(response.has_header('Content-Disposition')) # Render to temporary file tempfile = response.render_to_temporary_file(self.template) tempfile.seek(0) html_content = smart_str(tempfile.read()) self.assertTrue(html_content.startswith('<html>')) self.assertTrue('<h1>{title}</h1>'.format(**context) in html_content) pdf_content = response.rendered_content self.assertTrue(pdf_content.startswith(b'%PDF-')) self.assertTrue(pdf_content.endswith(b'%%EOF\n')) # Footer cmd_options = {'title': 'Test PDF'} response = PDFTemplateResponse(request=request, template=self.template, context=context, filename=self.pdf_filename, show_content_in_browser=show_content, footer_template=self.footer_template, cmd_options=cmd_options) self.assertEqual(response.filename, self.pdf_filename) self.assertEqual(response.header_template, None) self.assertEqual(response.footer_template, self.footer_template) self.assertEqual(response.cmd_options, cmd_options) self.assertTrue(response.has_header('Content-Disposition')) tempfile = response.render_to_temporary_file(self.footer_template) tempfile.seek(0) footer_content = smart_str(tempfile.read()) footer_content = make_absolute_paths(footer_content) media_url = 'file://{0}/'.format(settings.MEDIA_ROOT) self.assertTrue(media_url in footer_content, True) static_url = 'file://{0}/'.format(settings.STATIC_ROOT) self.assertTrue(static_url in footer_content, True) pdf_content = response.rendered_content title = '\0'.join(cmd_options['title']) self.assertIn(six.b(title), pdf_content)
def listar(request, output=None): if request.user.has_perm('r2030.can_see_r2030infoRecurso'): filtrar = False dict_fields = {} show_fields = { 'show_r2030_recursosrec': 1, 'show_tprepasse': 1, 'show_descrecurso': 1, 'show_vlrbruto': 0, 'show_vlrretapur': 0, } post = False if request.method == 'POST': post = True dict_fields = { 'r2030_recursosrec__icontains': 'r2030_recursosrec__icontains', 'tprepasse__icontains': 'tprepasse__icontains', 'descrecurso__icontains': 'descrecurso__icontains', 'vlrbruto__icontains': 'vlrbruto__icontains', 'vlrretapur__icontains': 'vlrretapur__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'r2030_recursosrec__icontains': 'r2030_recursosrec__icontains', 'tprepasse__icontains': 'tprepasse__icontains', 'descrecurso__icontains': 'descrecurso__icontains', 'vlrbruto__icontains': 'vlrbruto__icontains', 'vlrretapur__icontains': 'vlrretapur__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) r2030_inforecurso_lista = r2030infoRecurso.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(r2030_inforecurso_lista) > 100: filtrar = True r2030_inforecurso_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) r2030_recursosrec_lista = r2030recursosRec.objects.all() #r2030_inforecurso_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'r2030_inforecurso_lista': r2030_inforecurso_lista, 'modulos': [ 'r2030', ], 'paginas': [ 'r2030_inforecurso', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, 'r2030_recursosrec_lista': r2030_recursosrec_lista, } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='r2030_inforecurso_listar.html', filename="r2030_inforecurso.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('r2030_inforecurso_listar.html', context) filename = "r2030_inforecurso.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response('csv/r2030_inforecurso.csv', context) filename = "r2030_inforecurso.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'r2030_inforecurso_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': [ 'r2030', ], 'paginas': [ 'r2030_inforecurso', ], } return render(request, 'permissao_negada.html', context)
def verificar(request, pk, output=None): if request.user.has_perm('efdreinf.can_see_r2099evtFechaEvPer'): r2099_evtfechaevper = get_object_or_404(r2099evtFechaEvPer, id=pk) r2099_evtfechaevper_lista = r2099evtFechaEvPer.objects.filter( id=pk).all() r2099_iderespinf_lista = r2099ideRespInf.objects.filter( r2099_evtfechaevper_id__in=listar_ids( r2099_evtfechaevper_lista)).all() request.session['return_pk'] = pk request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 'r2099_evtfechaevper_lista': r2099_evtfechaevper_lista, 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'r2099_evtfechaevper': r2099_evtfechaevper, 'r2099_iderespinf_lista': r2099_iderespinf_lista, 'modulos': [ 'efdreinf', ], 'paginas': [ 'r2099_evtfechaevper', ], 'data': datetime.now(), 'output': output, } if output == 'pdf': response = PDFTemplateResponse( request=request, template='r2099_evtfechaevper_verificar.html', filename="r2099_evtfechaevper.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 20, 'zoom': 1, 'viewport-size': '1366 x 513', 'javascript-delay': 1000, 'footer-center': u'Página [page]/[topage]', 'footer-font-size': 10, 'no-stop-slow-scripts': True }) return response elif output == 'xls': response = render_to_response('r2099_evtfechaevper_verificar.html', context) filename = "%s.xls" % r2099_evtfechaevper.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('r2099_evtfechaevper_verificar.html', context) filename = "%s.csv" % r2099_evtfechaevper.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'r2099_evtfechaevper_verificar.html', context) else: context = { 'modulos': [ 'efdreinf', ], 'paginas': [ 'r2099_evtfechaevper', ], 'data': datetime.now(), } return render(request, 'permissao_negada.html', context)
def test_pdf_template_response(self): """Test PDFTemplateResponse.""" from django.conf import settings with override_settings( MEDIA_URL='/media/', MEDIA_ROOT='/tmp/media', STATIC_URL='/static/', STATIC_ROOT='/tmp/static', TEMPLATE_CONTEXT_PROCESSORS=[ 'django.core.context_processors.media', 'django.core.context_processors.static', ], TEMPLATE_LOADERS=['django.template.loaders.filesystem.Loader'], TEMPLATE_DIRS=[os.path.join(os.path.dirname(__file__), '_testproject', 'templates')], WKHTMLTOPDF_DEBUG=False, ): # Setup sample.html template = 'sample.html' context = {'title': 'Heading'} request = RequestFactory().get('/') response = PDFTemplateResponse(request=request, template=template, context=context) self.assertEqual(response._request, request) self.assertEqual(response.template_name, template) self.assertEqual(response.context_data, context) self.assertEqual(response.filename, None) self.assertEqual(response.header_template, None) self.assertEqual(response.footer_template, None) self.assertEqual(response.cmd_options, {}) self.assertFalse(response.has_header('Content-Disposition')) # Render to temporary file tempfile = response.render_to_temporary_file(template) tempfile.seek(0) html_content = tempfile.read() self.assertTrue(html_content.startswith('<html>')) self.assertTrue('<h1>{title}</h1>'.format(**context) in html_content) pdf_content = response.rendered_content self.assertTrue(pdf_content.startswith('%PDF-')) self.assertTrue(pdf_content.endswith('%%EOF\n')) # Footer filename = 'output.pdf' footer_template = 'footer.html' cmd_options = {'title': 'Test PDF'} response = PDFTemplateResponse(request=request, template=template, context=context, filename=filename, footer_template=footer_template, cmd_options=cmd_options) self.assertEqual(response.filename, filename) self.assertEqual(response.header_template, None) self.assertEqual(response.footer_template, footer_template) self.assertEqual(response.cmd_options, cmd_options) self.assertTrue(response.has_header('Content-Disposition')) tempfile = response.render_to_temporary_file(footer_template) tempfile.seek(0) footer_content = tempfile.read() media_url = 'MEDIA_URL = file://{0}/'.format(settings.MEDIA_ROOT) self.assertTrue( media_url in footer_content, "{0!r} not in {1!r}".format(media_url, footer_content) ) static_url = 'STATIC_URL = file://{0}/'.format(settings.STATIC_ROOT) self.assertTrue( static_url in footer_content, "{0!r} not in {1!r}".format(static_url, footer_content) ) pdf_content = response.rendered_content self.assertTrue('\0'.join('{title}'.format(**cmd_options)) in pdf_content) # Override settings response = PDFTemplateResponse(request=request, template=template, context=context, filename=filename, footer_template=footer_template, cmd_options=cmd_options, override_settings={ 'STATIC_URL': 'file:///tmp/s/' }) tempfile = response.render_to_temporary_file(footer_template) tempfile.seek(0) footer_content = tempfile.read() static_url = 'STATIC_URL = {0}'.format('file:///tmp/s/') self.assertTrue( static_url in footer_content, "{0!r} not in {1!r}".format(static_url, footer_content) ) self.assertEqual(settings.STATIC_URL, '/static/')
def salvar(request, pk=None, tab='master', output=None): from emensageriapro.esocial.models import STATUS_EVENTO_CADASTRADO evento_dados = {} evento_dados['status'] = STATUS_EVENTO_CADASTRADO if pk: s2200_ric = get_object_or_404(s2200RIC, id=pk) evento_dados = s2200_ric.evento() if request.user.has_perm('s2200.can_see_s2200RIC'): if pk: s2200_ric_form = form_s2200_ric(request.POST or None, instance=s2200_ric) else: s2200_ric_form = form_s2200_ric(request.POST or None) if request.method == 'POST': if s2200_ric_form.is_valid(): obj = s2200_ric_form.save(request=request) messages.success(request, u'Salvo com sucesso!') if 'return_page' in request.session and request.session[ 'return_page'] and 's2200-ric' not in request.session[ 'return_page']: return HttpResponseRedirect(request.session['return_page']) if pk != obj.id: return redirect('s2200_ric_salvar', pk=obj.id) else: messages.error(request, u'Erro ao salvar!') s2200_ric_form = disabled_form_fields( s2200_ric_form, request.user.has_perm('s2200.change_s2200RIC')) if pk: if evento_dados['status'] != STATUS_EVENTO_CADASTRADO: s2200_ric_form = disabled_form_fields(s2200_ric_form, 0) if output: s2200_ric_form = disabled_form_for_print(s2200_ric_form) if pk: s2200_ric = get_object_or_404(s2200RIC, id=pk) else: s2200_ric = None tabelas_secundarias = [] controle_alteracoes = Auditoria.objects.filter( identidade=pk, tabela='s2200_ric').all() if not request.POST: request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'evento_dados': evento_dados, 'controle_alteracoes': controle_alteracoes, 's2200_ric': s2200_ric, 's2200_ric_form': s2200_ric_form, 'modulos': [ 's2200', ], 'paginas': [ 's2200_ric', ], 'data': datetime.datetime.now(), 'tabelas_secundarias': tabelas_secundarias, 'tab': tab, #s2200_ric_salvar_custom_variaveis_context# } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s2200_ric_salvar.html', filename="s2200_ric.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('s2200_ric_salvar.html', context) filename = "s2200_ric.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: return render(request, 's2200_ric_salvar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'tab': tab, 'modulos': [ 's2200', ], 'paginas': [ 's2200_ric', ], 'data': datetime.datetime.now(), } return render(request, 'permissao_negada.html', context)
def salvar(request, pk=None, tab='master', output=None): from emensageriapro.efdreinf.models import STATUS_EVENTO_CADASTRADO evento_dados = {} evento_dados['status'] = STATUS_EVENTO_CADASTRADO if pk: r9012_totapurdec = get_object_or_404(r9012totApurDec, id=pk) evento_dados = r9012_totapurdec.evento() if request.user.has_perm('r9012.can_see_r9012totApurDec'): if pk: r9012_totapurdec_form = form_r9012_totapurdec( request.POST or None, instance=r9012_totapurdec) else: r9012_totapurdec_form = form_r9012_totapurdec(request.POST or None) if request.method == 'POST': if r9012_totapurdec_form.is_valid(): obj = r9012_totapurdec_form.save(request=request) messages.success(request, u'Salvo com sucesso!') if not pk: gravar_auditoria( '{}', json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 'r9012_totapurdec', obj.id, request.user.id, 1) else: gravar_auditoria( json.dumps(model_to_dict(r9012_totapurdec), indent=4, sort_keys=True, default=str), json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 'r9012_totapurdec', pk, request.user.id, 2) if request.session['return_page'] not in ( 'r9012_totapurdec_apagar', 'r9012_totapurdec_salvar', 'r9012_totapurdec'): return redirect(request.session['return_page'], pk=request.session['return_pk']) if pk != obj.id: return redirect('r9012_totapurdec_salvar', pk=obj.id) else: messages.error(request, u'Erro ao salvar!') r9012_totapurdec_form = disabled_form_fields( r9012_totapurdec_form, request.user.has_perm('r9012.change_r9012totApurDec')) if pk: if evento_dados['status'] != STATUS_EVENTO_CADASTRADO: r9012_totapurdec_form = disabled_form_fields( r9012_totapurdec_form, 0) if output: r9012_totapurdec_form = disabled_form_for_print( r9012_totapurdec_form) if pk: r9012_totapurdec = get_object_or_404(r9012totApurDec, id=pk) else: r9012_totapurdec = None tabelas_secundarias = [] if tab or 'r9012_totapurdec' in request.session['return_page']: request.session['return_pk'] = pk request.session['return_tab'] = tab request.session['return_page'] = 'r9012_totapurdec_salvar' controle_alteracoes = Auditoria.objects.filter( identidade=pk, tabela='r9012_totapurdec').all() context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'evento_dados': evento_dados, 'controle_alteracoes': controle_alteracoes, 'r9012_totapurdec': r9012_totapurdec, 'r9012_totapurdec_form': r9012_totapurdec_form, 'modulos': [ 'r9012', ], 'paginas': [ 'r9012_totapurdec', ], 'data': datetime.datetime.now(), 'tabelas_secundarias': tabelas_secundarias, 'tab': tab, #r9012_totapurdec_salvar_custom_variaveis_context# } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='r9012_totapurdec_salvar.html', filename="r9012_totapurdec.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('r9012_totapurdec_salvar.html', context) filename = "r9012_totapurdec.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: return render(request, 'r9012_totapurdec_salvar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'tab': tab, 'modulos': [ 'r9012', ], 'paginas': [ 'r9012_totapurdec', ], 'data': datetime.datetime.now(), } return render(request, 'permissao_negada.html', context)
def listar(request, hash): for_print = 0 db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) #retorno_pagina = dict_hash['retorno_pagina'] #retorno_hash = dict_hash['retorno_hash'] #s1202_infoperapur_itensremun_id = int(dict_hash['id']) for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='s1202_infoperapur_itensremun') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_listar: filtrar = False dict_fields = {} show_fields = { 'show_excluido': 0, 'show_modificado_por': 0, 'show_modificado_em': 0, 'show_criado_por': 0, 'show_criado_em': 0, 'show_vrrubr': 1, 'show_vrunit': 0, 'show_fatorrubr': 0, 'show_qtdrubr': 0, 'show_idetabrubr': 1, 'show_codrubr': 1, 'show_s1202_infoperapur_remunperapur': 1, } post = False if request.method == 'POST': post = True dict_fields = { 'vrrubr': 'vrrubr', 'vrunit': 'vrunit', 'fatorrubr': 'fatorrubr', 'qtdrubr': 'qtdrubr', 'idetabrubr__icontains': 'idetabrubr__icontains', 'codrubr__icontains': 'codrubr__icontains', 's1202_infoperapur_remunperapur': 's1202_infoperapur_remunperapur', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'vrrubr': 'vrrubr', 'vrunit': 'vrunit', 'fatorrubr': 'fatorrubr', 'qtdrubr': 'qtdrubr', 'idetabrubr__icontains': 'idetabrubr__icontains', 'codrubr__icontains': 'codrubr__icontains', 's1202_infoperapur_remunperapur': 's1202_infoperapur_remunperapur', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) s1202_infoperapur_itensremun_lista = s1202infoPerApuritensRemun.objects.using( db_slug).filter(**dict_qs).filter(excluido=False).exclude( id=0).all() if not post and len(s1202_infoperapur_itensremun_lista) > 100: filtrar = True s1202_infoperapur_itensremun_lista = None messages.warning( request, 'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) s1202_infoperapur_remunperapur_lista = s1202infoPerApurremunPerApur.objects.using( db_slug).filter(excluido=False).all() #s1202_infoperapur_itensremun_listar_custom request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 's1202_infoperapur_itensremun' context = { 's1202_infoperapur_itensremun_lista': s1202_infoperapur_itensremun_lista, 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'show_fields': show_fields, 'for_print': for_print, 'hash': hash, 'filtrar': filtrar, 's1202_infoperapur_remunperapur_lista': s1202_infoperapur_remunperapur_lista, } if for_print in (0, 1): return render(request, 's1202_infoperapur_itensremun_listar.html', context) elif for_print == 2: #return render_to_pdf('tables/s1000_evtinfoempregador_pdf_xls.html', context) from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s1202_infoperapur_itensremun_listar.html', filename="s1202_infoperapur_itensremun.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response( 's1202_infoperapur_itensremun_listar.html', context) filename = "s1202_infoperapur_itensremun.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif for_print == 4: from django.shortcuts import render_to_response response = render_to_response( 'tables/s1202_infoperapur_itensremun_csv.html', context) filename = "s1202_infoperapur_itensremun.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def salvar(request, pk=None, tab='master', output=None): if pk: relatorios = get_object_or_404(Relatorios, id=pk) if request.user.has_perm('mensageiro.can_see_Relatorios'): if pk: relatorios_form = form_relatorios(request.POST or None, instance=relatorios) else: relatorios_form = form_relatorios(request.POST or None) if request.method == 'POST': if relatorios_form.is_valid(): #relatorios_campos_multiple_passo1 obj = relatorios_form.save(request=request) messages.success(request, 'Salvo com sucesso!') #relatorios_campos_multiple_passo2 if 'return_page' in request.session and request.session[ 'return_page'] and 'relatorios' not in request.session[ 'return_page']: return HttpResponseRedirect(request.session['return_page']) if pk != obj.id: return redirect('relatorios_salvar', pk=obj.id) else: messages.error(request, 'Erro ao salvar!') relatorios_form = disabled_form_fields( relatorios_form, request.user.has_perm('mensageiro.change_Relatorios')) #relatorios_campos_multiple_passo3 if output: relatorios_form = disabled_form_for_print(relatorios_form) if pk: relatorios = get_object_or_404(Relatorios, id=pk) else: relatorios = None #relatorios_salvar_custom_variaveis# tabelas_secundarias = [] #[FUNCOES_ESPECIAIS_SALVAR] if not request.POST: request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'tab': tab, 'relatorios': relatorios, 'relatorios_form': relatorios_form, 'modulos': [ 'mensageiro', ], 'paginas': [ 'relatorios', ], 'data': datetime.datetime.now(), 'tabelas_secundarias': tabelas_secundarias, #relatorios_salvar_custom_variaveis_context# } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse(request=request, template='relatorios_salvar.html', filename="relatorios.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('relatorios_salvar.html', context) filename = "relatorios.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: return render(request, 'relatorios_salvar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'tab': tab, 'modulos': [ 'mensageiro', ], 'paginas': [ 'relatorios', ], 'data': datetime.datetime.now(), } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('efdreinf.can_see_r2099evtFechaEvPer'): filtrar = False dict_fields = {} show_fields = { 'show_reinf': 0, 'show_evtfechaevper': 0, 'show_identidade': 1, 'show_ideevento': 0, 'show_perapur': 1, 'show_tpamb': 0, 'show_procemi': 0, 'show_verproc': 0, 'show_idecontri': 0, 'show_tpinsc': 1, 'show_nrinsc': 0, 'show_infofech': 0, 'show_evtservtm': 0, 'show_evtservpr': 0, 'show_evtassdesprec': 0, 'show_evtassdesprep': 0, 'show_evtcomprod': 0, 'show_evtcprb': 0, 'show_evtpgtos': 0, 'show_compsemmovto': 0, 'show_versao': 0, 'show_transmissor_lote_efdreinf': 0, 'show_retornos_r5001': 0, 'show_retornos_r5011': 0, 'show_retornos_r9001': 0, 'show_retornos_r9002': 0, 'show_retornos_r9011': 0, 'show_retornos_r9012': 0, 'show_ocorrencias': 0, 'show_validacao_precedencia': 0, 'show_validacoes': 0, 'show_arquivo_original': 0, 'show_arquivo': 0, 'show_status': 1, 'show_cdretorno': 1, 'show_descretorno': 0, 'show_dhprocess': 0, 'show_transmissor_lote_efdreinf_error': 0, } post = False if request.method == 'POST': post = True dict_fields = { 'reinf': 'reinf', 'evtfechaevper': 'evtfechaevper', 'identidade__icontains': 'identidade__icontains', 'ideevento': 'ideevento', 'perapur__icontains': 'perapur__icontains', 'tpamb__icontains': 'tpamb__icontains', 'procemi__icontains': 'procemi__icontains', 'verproc__icontains': 'verproc__icontains', 'idecontri': 'idecontri', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'infofech': 'infofech', 'evtservtm__icontains': 'evtservtm__icontains', 'evtservpr__icontains': 'evtservpr__icontains', 'evtassdesprec__icontains': 'evtassdesprec__icontains', 'evtassdesprep__icontains': 'evtassdesprep__icontains', 'evtcomprod__icontains': 'evtcomprod__icontains', 'evtcprb__icontains': 'evtcprb__icontains', 'evtpgtos__icontains': 'evtpgtos__icontains', 'compsemmovto__icontains': 'compsemmovto__icontains', 'versao__icontains': 'versao__icontains', 'transmissor_lote_efdreinf__icontains': 'transmissor_lote_efdreinf__icontains', 'status__icontains': 'status__icontains', 'cdretorno__icontains': 'cdretorno__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'reinf': 'reinf', 'evtfechaevper': 'evtfechaevper', 'identidade__icontains': 'identidade__icontains', 'ideevento': 'ideevento', 'perapur__icontains': 'perapur__icontains', 'tpamb__icontains': 'tpamb__icontains', 'procemi__icontains': 'procemi__icontains', 'verproc__icontains': 'verproc__icontains', 'idecontri': 'idecontri', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'infofech': 'infofech', 'evtservtm__icontains': 'evtservtm__icontains', 'evtservpr__icontains': 'evtservpr__icontains', 'evtassdesprec__icontains': 'evtassdesprec__icontains', 'evtassdesprep__icontains': 'evtassdesprep__icontains', 'evtcomprod__icontains': 'evtcomprod__icontains', 'evtcprb__icontains': 'evtcprb__icontains', 'evtpgtos__icontains': 'evtpgtos__icontains', 'compsemmovto__icontains': 'compsemmovto__icontains', 'versao__icontains': 'versao__icontains', 'transmissor_lote_efdreinf__icontains': 'transmissor_lote_efdreinf__icontains', 'status__icontains': 'status__icontains', 'cdretorno__icontains': 'cdretorno__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) r2099_evtfechaevper_lista = r2099evtFechaEvPer.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(r2099_evtfechaevper_lista) > 100: filtrar = True r2099_evtfechaevper_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) transmissor_lote_efdreinf_lista = TransmissorLoteEfdreinf.objects.all() retornos_r5001_lista = r5001evtTotal.objects.all() retornos_r5011_lista = r5011evtTotalContrib.objects.all() retornos_r9001_lista = r9001evtTotal.objects.all() retornos_r9002_lista = r9002evtRet.objects.all() retornos_r9011_lista = r9011evtTotalContrib.objects.all() retornos_r9012_lista = r9012evtRetCons.objects.all() transmissor_lote_efdreinf_error_lista = TransmissorLoteEfdreinf.objects.all( ) #r2099_evtfechaevper_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'r2099_evtfechaevper_lista': r2099_evtfechaevper_lista, 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'modulos': [ 'efdreinf', ], 'paginas': [ 'r2099_evtfechaevper', ], 'show_fields': show_fields, 'filtrar': filtrar, 'transmissor_lote_efdreinf_lista': transmissor_lote_efdreinf_lista, 'retornos_r5001_lista': retornos_r5001_lista, 'retornos_r5011_lista': retornos_r5011_lista, 'retornos_r9001_lista': retornos_r9001_lista, 'retornos_r9002_lista': retornos_r9002_lista, 'retornos_r9011_lista': retornos_r9011_lista, 'retornos_r9012_lista': retornos_r9012_lista, 'transmissor_lote_efdreinf_error_lista': transmissor_lote_efdreinf_error_lista, } if output == 'pdf': from emensageriapro.functions import render_to_pdf from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='r2099_evtfechaevper_listar.html', filename="r2099_evtfechaevper.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', 'viewport-size': "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': response = render_to_response('r2099_evtfechaevper_listar.html', context) filename = "r2099_evtfechaevper.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('csv/r2099_evtfechaevper.csv', context) filename = "r2099_evtfechaevper.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'r2099_evtfechaevper_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'data': datetime.datetime.now(), 'modulos': [ 'efdreinf', ], 'paginas': [ 'r2099_evtfechaevper', ], } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('s1005.can_see_s1005inclusao'): filtrar = False dict_fields = {} show_fields = { 'show_s1005_evttabestab': 1, 'show_ideestab': 0, 'show_tpinsc': 1, 'show_nrinsc': 1, 'show_inivalid': 0, 'show_fimvalid': 0, 'show_dadosestab': 0, 'show_cnaeprep': 0, 'show_aliqgilrat': 0, 'show_aliqrat': 0, 'show_fap': 0, 'show_aliqratajust': 0, 'show_infotrab': 0, 'show_regpt': 0, 'show_infoapr': 0, 'show_contapr': 0, 'show_nrprocjud': 0, 'show_contented': 0, } post = False if request.method == 'POST': post = True dict_fields = { 's1005_evttabestab__icontains': 's1005_evttabestab__icontains', 'ideestab': 'ideestab', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'inivalid__icontains': 'inivalid__icontains', 'fimvalid__icontains': 'fimvalid__icontains', 'dadosestab': 'dadosestab', 'cnaeprep__icontains': 'cnaeprep__icontains', 'aliqgilrat': 'aliqgilrat', 'aliqrat__icontains': 'aliqrat__icontains', 'fap__icontains': 'fap__icontains', 'aliqratajust__icontains': 'aliqratajust__icontains', 'infotrab': 'infotrab', 'regpt__icontains': 'regpt__icontains', 'infoapr': 'infoapr', 'contapr__icontains': 'contapr__icontains', 'nrprocjud__icontains': 'nrprocjud__icontains', 'contented__icontains': 'contented__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 's1005_evttabestab__icontains': 's1005_evttabestab__icontains', 'ideestab': 'ideestab', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'inivalid__icontains': 'inivalid__icontains', 'fimvalid__icontains': 'fimvalid__icontains', 'dadosestab': 'dadosestab', 'cnaeprep__icontains': 'cnaeprep__icontains', 'aliqgilrat': 'aliqgilrat', 'aliqrat__icontains': 'aliqrat__icontains', 'fap__icontains': 'fap__icontains', 'aliqratajust__icontains': 'aliqratajust__icontains', 'infotrab': 'infotrab', 'regpt__icontains': 'regpt__icontains', 'infoapr': 'infoapr', 'contapr__icontains': 'contapr__icontains', 'nrprocjud__icontains': 'nrprocjud__icontains', 'contented__icontains': 'contented__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) s1005_inclusao_lista = s1005inclusao.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(s1005_inclusao_lista) > 100: filtrar = True s1005_inclusao_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) s1005_evttabestab_lista = s1005evtTabEstab.objects.all() #s1005_inclusao_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 's1005_inclusao_lista': s1005_inclusao_lista, 'modulos': [ 's1005', ], 'paginas': [ 's1005_inclusao', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, 's1005_evttabestab_lista': s1005_evttabestab_lista, } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s1005_inclusao_listar.html', filename="s1005_inclusao.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('s1005_inclusao_listar.html', context) filename = "s1005_inclusao.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response('csv/s1005_inclusao.csv', context) filename = "s1005_inclusao.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's1005_inclusao_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': [ 's1005', ], 'paginas': [ 's1005_inclusao', ], } return render(request, 'permissao_negada.html', context)
def verificar(request, hash): for_print = 0 db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url( hash ) r2070_evtpgtosdivs_id = int(dict_hash['id']) for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using( db_slug ), excluido = False, id = usuario_id) pagina = ConfigPaginas.objects.using( db_slug ).get(excluido = False, endereco='r2070_evtpgtosdivs') permissao = ConfigPermissoes.objects.using( db_slug ).get(excluido = False, config_paginas=pagina, config_perfis=usuario.config_perfis) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_listar: r2070_evtpgtosdivs = get_object_or_404(r2070evtPgtosDivs.objects.using( db_slug ), excluido = False, id = r2070_evtpgtosdivs_id) r2070_evtpgtosdivs_lista = r2070evtPgtosDivs.objects.using( db_slug ).filter(id=r2070_evtpgtosdivs_id, excluido = False).all() r2070_inforesidext_lista = r2070infoResidExt.objects.using(db_slug).filter(r2070_evtpgtosdivs_id__in = listar_ids(r2070_evtpgtosdivs_lista) ).filter(excluido=False).all() r2070_infomolestia_lista = r2070infoMolestia.objects.using(db_slug).filter(r2070_evtpgtosdivs_id__in = listar_ids(r2070_evtpgtosdivs_lista) ).filter(excluido=False).all() r2070_ideestab_lista = r2070ideEstab.objects.using(db_slug).filter(r2070_evtpgtosdivs_id__in = listar_ids(r2070_evtpgtosdivs_lista) ).filter(excluido=False).all() r2070_pgtopf_lista = r2070pgtoPF.objects.using(db_slug).filter(r2070_ideestab_id__in = listar_ids(r2070_ideestab_lista) ).filter(excluido=False).all() r2070_detdeducao_lista = r2070detDeducao.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_rendisento_lista = r2070rendIsento.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_detcompet_lista = r2070detCompet.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_compjud_lista = r2070compJud.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_inforra_lista = r2070infoRRA.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_inforra_despprocjud_lista = r2070infoRRAdespProcJud.objects.using(db_slug).filter(r2070_inforra_id__in = listar_ids(r2070_inforra_lista) ).filter(excluido=False).all() r2070_inforra_ideadvogado_lista = r2070infoRRAideAdvogado.objects.using(db_slug).filter(r2070_inforra_despprocjud_id__in = listar_ids(r2070_inforra_despprocjud_lista) ).filter(excluido=False).all() r2070_infoprocjud_lista = r2070infoProcJud.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_infoprocjud_despprocjud_lista = r2070infoProcJuddespProcJud.objects.using(db_slug).filter(r2070_infoprocjud_id__in = listar_ids(r2070_infoprocjud_lista) ).filter(excluido=False).all() r2070_infoprocjud_ideadvogado_lista = r2070infoProcJudideAdvogado.objects.using(db_slug).filter(r2070_infoprocjud_despprocjud_id__in = listar_ids(r2070_infoprocjud_despprocjud_lista) ).filter(excluido=False).all() r2070_infoprocjud_origemrecursos_lista = r2070infoProcJudorigemRecursos.objects.using(db_slug).filter(r2070_infoprocjud_id__in = listar_ids(r2070_infoprocjud_lista) ).filter(excluido=False).all() r2070_depjudicial_lista = r2070depJudicial.objects.using(db_slug).filter(r2070_pgtopf_id__in = listar_ids(r2070_pgtopf_lista) ).filter(excluido=False).all() r2070_pgtopj_lista = r2070pgtoPJ.objects.using(db_slug).filter(r2070_ideestab_id__in = listar_ids(r2070_ideestab_lista) ).filter(excluido=False).all() r2070_pgtopj_infoprocjud_lista = r2070pgtoPJinfoProcJud.objects.using(db_slug).filter(r2070_pgtopj_id__in = listar_ids(r2070_pgtopj_lista) ).filter(excluido=False).all() r2070_pgtopj_despprocjud_lista = r2070pgtoPJdespProcJud.objects.using(db_slug).filter(r2070_pgtopj_infoprocjud_id__in = listar_ids(r2070_pgtopj_infoprocjud_lista) ).filter(excluido=False).all() r2070_pgtopj_ideadvogado_lista = r2070pgtoPJideAdvogado.objects.using(db_slug).filter(r2070_pgtopj_despprocjud_id__in = listar_ids(r2070_pgtopj_despprocjud_lista) ).filter(excluido=False).all() r2070_pgtopj_origemrecursos_lista = r2070pgtoPJorigemRecursos.objects.using(db_slug).filter(r2070_pgtopj_infoprocjud_id__in = listar_ids(r2070_pgtopj_infoprocjud_lista) ).filter(excluido=False).all() r2070_pgtoresidext_lista = r2070pgtoResidExt.objects.using(db_slug).filter(r2070_ideestab_id__in = listar_ids(r2070_ideestab_lista) ).filter(excluido=False).all() request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 'r2070_evtpgtosdivs' context = { 'r2070_evtpgtosdivs_lista': r2070_evtpgtosdivs_lista, 'r2070_evtpgtosdivs_id': r2070_evtpgtosdivs_id, 'r2070_evtpgtosdivs': r2070_evtpgtosdivs, 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'for_print': for_print, 'hash': hash, 'r2070_inforesidext_lista': r2070_inforesidext_lista, 'r2070_infomolestia_lista': r2070_infomolestia_lista, 'r2070_ideestab_lista': r2070_ideestab_lista, 'r2070_pgtopf_lista': r2070_pgtopf_lista, 'r2070_detdeducao_lista': r2070_detdeducao_lista, 'r2070_rendisento_lista': r2070_rendisento_lista, 'r2070_detcompet_lista': r2070_detcompet_lista, 'r2070_compjud_lista': r2070_compjud_lista, 'r2070_inforra_lista': r2070_inforra_lista, 'r2070_inforra_despprocjud_lista': r2070_inforra_despprocjud_lista, 'r2070_inforra_ideadvogado_lista': r2070_inforra_ideadvogado_lista, 'r2070_infoprocjud_lista': r2070_infoprocjud_lista, 'r2070_infoprocjud_despprocjud_lista': r2070_infoprocjud_despprocjud_lista, 'r2070_infoprocjud_ideadvogado_lista': r2070_infoprocjud_ideadvogado_lista, 'r2070_infoprocjud_origemrecursos_lista': r2070_infoprocjud_origemrecursos_lista, 'r2070_depjudicial_lista': r2070_depjudicial_lista, 'r2070_pgtopj_lista': r2070_pgtopj_lista, 'r2070_pgtopj_infoprocjud_lista': r2070_pgtopj_infoprocjud_lista, 'r2070_pgtopj_despprocjud_lista': r2070_pgtopj_despprocjud_lista, 'r2070_pgtopj_ideadvogado_lista': r2070_pgtopj_ideadvogado_lista, 'r2070_pgtopj_origemrecursos_lista': r2070_pgtopj_origemrecursos_lista, 'r2070_pgtoresidext_lista': r2070_pgtoresidext_lista, } if for_print == 2: from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse(request=request, template='r2070_evtpgtosdivs_verificar.html', filename="r2070_evtpgtosdivs.pdf", context=context, show_content_in_browser=True, cmd_options={'margin-top': 5, 'margin-bottom': 5, 'margin-right': 5, 'margin-left': 5, "zoom": 3, "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True}, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response('r2070_evtpgtosdivs_verificar.html', context) filename = "%s.xls" % r2070_evtpgtosdivs.identidade response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif for_print == 4: from django.shortcuts import render_to_response response = render_to_response('r2070_evtpgtosdivs_verificar.html', context) filename = "%s.csv" % r2070_evtpgtosdivs.identidade response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'r2070_evtpgtosdivs_verificar.html', context) else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def verificar(request, pk, output=None): if request.user.has_perm('esocial.can_see_s1210evtPgtos'): s1210_evtpgtos = get_object_or_404(s1210evtPgtos, id=pk) s1210_evtpgtos_lista = s1210evtPgtos.objects.filter(id=pk).all() s1210_deps_lista = s1210deps.objects.filter( s1210_evtpgtos_id__in=listar_ids(s1210_evtpgtos_lista)).all() s1210_infopgto_lista = s1210infoPgto.objects.filter( s1210_evtpgtos_id__in=listar_ids(s1210_evtpgtos_lista)).all() s1210_detpgtofl_lista = s1210detPgtoFl.objects.filter( s1210_infopgto_id__in=listar_ids(s1210_infopgto_lista)).all() s1210_detpgtofl_retpgtotot_lista = s1210detPgtoFlretPgtoTot.objects.filter( s1210_detpgtofl_id__in=listar_ids(s1210_detpgtofl_lista)).all() s1210_detpgtofl_penalim_lista = s1210detPgtoFlpenAlim.objects.filter( s1210_detpgtofl_retpgtotot_id__in=listar_ids( s1210_detpgtofl_retpgtotot_lista)).all() s1210_detpgtofl_infopgtoparc_lista = s1210detPgtoFlinfoPgtoParc.objects.filter( s1210_detpgtofl_id__in=listar_ids(s1210_detpgtofl_lista)).all() s1210_detpgtobenpr_lista = s1210detPgtoBenPr.objects.filter( s1210_infopgto_id__in=listar_ids(s1210_infopgto_lista)).all() s1210_detpgtobenpr_retpgtotot_lista = s1210detPgtoBenPrretPgtoTot.objects.filter( s1210_detpgtobenpr_id__in=listar_ids( s1210_detpgtobenpr_lista)).all() s1210_detpgtobenpr_infopgtoparc_lista = s1210detPgtoBenPrinfoPgtoParc.objects.filter( s1210_detpgtobenpr_id__in=listar_ids( s1210_detpgtobenpr_lista)).all() s1210_detpgtofer_lista = s1210detPgtoFer.objects.filter( s1210_infopgto_id__in=listar_ids(s1210_infopgto_lista)).all() s1210_detpgtofer_detrubrfer_lista = s1210detPgtoFerdetRubrFer.objects.filter( s1210_detpgtofer_id__in=listar_ids(s1210_detpgtofer_lista)).all() s1210_detpgtofer_penalim_lista = s1210detPgtoFerpenAlim.objects.filter( s1210_detpgtofer_detrubrfer_id__in=listar_ids( s1210_detpgtofer_detrubrfer_lista)).all() s1210_detpgtoant_lista = s1210detPgtoAnt.objects.filter( s1210_infopgto_id__in=listar_ids(s1210_infopgto_lista)).all() s1210_detpgtoant_infopgtoant_lista = s1210detPgtoAntinfoPgtoAnt.objects.filter( s1210_detpgtoant_id__in=listar_ids(s1210_detpgtoant_lista)).all() s1210_idepgtoext_lista = s1210idePgtoExt.objects.filter( s1210_infopgto_id__in=listar_ids(s1210_infopgto_lista)).all() request.session['return_pk'] = pk request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 's1210_evtpgtos_lista': s1210_evtpgtos_lista, 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 's1210_evtpgtos': s1210_evtpgtos, 's1210_deps_lista': s1210_deps_lista, 's1210_infopgto_lista': s1210_infopgto_lista, 's1210_detpgtofl_lista': s1210_detpgtofl_lista, 's1210_detpgtofl_retpgtotot_lista': s1210_detpgtofl_retpgtotot_lista, 's1210_detpgtofl_penalim_lista': s1210_detpgtofl_penalim_lista, 's1210_detpgtofl_infopgtoparc_lista': s1210_detpgtofl_infopgtoparc_lista, 's1210_detpgtobenpr_lista': s1210_detpgtobenpr_lista, 's1210_detpgtobenpr_retpgtotot_lista': s1210_detpgtobenpr_retpgtotot_lista, 's1210_detpgtobenpr_infopgtoparc_lista': s1210_detpgtobenpr_infopgtoparc_lista, 's1210_detpgtofer_lista': s1210_detpgtofer_lista, 's1210_detpgtofer_detrubrfer_lista': s1210_detpgtofer_detrubrfer_lista, 's1210_detpgtofer_penalim_lista': s1210_detpgtofer_penalim_lista, 's1210_detpgtoant_lista': s1210_detpgtoant_lista, 's1210_detpgtoant_infopgtoant_lista': s1210_detpgtoant_infopgtoant_lista, 's1210_idepgtoext_lista': s1210_idepgtoext_lista, 'modulos': [ 'esocial', ], 'paginas': [ 's1210_evtpgtos', ], 'data': datetime.now(), 'output': output, } if output == 'pdf': response = PDFTemplateResponse( request=request, template='s1210_evtpgtos_verificar.html', filename="s1210_evtpgtos.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 20, 'zoom': 1, 'viewport-size': '1366 x 513', 'javascript-delay': 1000, 'footer-center': u'Página [page]/[topage]', 'footer-font-size': 10, 'no-stop-slow-scripts': True }) return response elif output == 'xls': response = render_to_response('s1210_evtpgtos_verificar.html', context) filename = "%s.xls" % s1210_evtpgtos.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('s1210_evtpgtos_verificar.html', context) filename = "%s.csv" % s1210_evtpgtos.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's1210_evtpgtos_verificar.html', context) else: context = { 'modulos': [ 'esocial', ], 'paginas': [ 's1210_evtpgtos', ], 'data': datetime.now(), } return render(request, 'permissao_negada.html', context)
def verificar(request, hash): for_print = 0 db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) s2399_evttsvtermino_id = int(dict_hash['id']) for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='s2399_evttsvtermino') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_listar: s2399_evttsvtermino = get_object_or_404( s2399evtTSVTermino.objects.using(db_slug), excluido=False, id=s2399_evttsvtermino_id) s2399_evttsvtermino_lista = s2399evtTSVTermino.objects.using( db_slug).filter(id=s2399_evttsvtermino_id, excluido=False).all() s2399_verbasresc_lista = s2399verbasResc.objects.using(db_slug).filter( s2399_evttsvtermino_id__in=listar_ids( s2399_evttsvtermino_lista)).filter(excluido=False).all() s2399_dmdev_lista = s2399dmDev.objects.using(db_slug).filter( s2399_verbasresc_id__in=listar_ids(s2399_verbasresc_lista)).filter( excluido=False).all() s2399_ideestablot_lista = s2399ideEstabLot.objects.using( db_slug).filter( s2399_dmdev_id__in=listar_ids(s2399_dmdev_lista)).filter( excluido=False).all() s2399_detverbas_lista = s2399detVerbas.objects.using(db_slug).filter( s2399_ideestablot_id__in=listar_ids( s2399_ideestablot_lista)).filter(excluido=False).all() s2399_infosaudecolet_lista = s2399infoSaudeColet.objects.using( db_slug).filter(s2399_ideestablot_id__in=listar_ids( s2399_ideestablot_lista)).filter(excluido=False).all() s2399_detoper_lista = s2399detOper.objects.using(db_slug).filter( s2399_infosaudecolet_id__in=listar_ids( s2399_infosaudecolet_lista)).filter(excluido=False).all() s2399_detplano_lista = s2399detPlano.objects.using(db_slug).filter( s2399_detoper_id__in=listar_ids(s2399_detoper_lista)).filter( excluido=False).all() s2399_infoagnocivo_lista = s2399infoAgNocivo.objects.using( db_slug).filter(s2399_ideestablot_id__in=listar_ids( s2399_ideestablot_lista)).filter(excluido=False).all() s2399_infosimples_lista = s2399infoSimples.objects.using( db_slug).filter(s2399_ideestablot_id__in=listar_ids( s2399_ideestablot_lista)).filter(excluido=False).all() s2399_procjudtrab_lista = s2399procJudTrab.objects.using( db_slug).filter(s2399_verbasresc_id__in=listar_ids( s2399_verbasresc_lista)).filter(excluido=False).all() s2399_infomv_lista = s2399infoMV.objects.using(db_slug).filter( s2399_verbasresc_id__in=listar_ids(s2399_verbasresc_lista)).filter( excluido=False).all() s2399_remunoutrempr_lista = s2399remunOutrEmpr.objects.using( db_slug).filter( s2399_infomv_id__in=listar_ids(s2399_infomv_lista)).filter( excluido=False).all() s2399_quarentena_lista = s2399quarentena.objects.using(db_slug).filter( s2399_evttsvtermino_id__in=listar_ids( s2399_evttsvtermino_lista)).filter(excluido=False).all() request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 's2399_evttsvtermino' context = { 's2399_evttsvtermino_lista': s2399_evttsvtermino_lista, 's2399_evttsvtermino_id': s2399_evttsvtermino_id, 's2399_evttsvtermino': s2399_evttsvtermino, 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'for_print': for_print, 'hash': hash, 's2399_verbasresc_lista': s2399_verbasresc_lista, 's2399_dmdev_lista': s2399_dmdev_lista, 's2399_ideestablot_lista': s2399_ideestablot_lista, 's2399_detverbas_lista': s2399_detverbas_lista, 's2399_infosaudecolet_lista': s2399_infosaudecolet_lista, 's2399_detoper_lista': s2399_detoper_lista, 's2399_detplano_lista': s2399_detplano_lista, 's2399_infoagnocivo_lista': s2399_infoagnocivo_lista, 's2399_infosimples_lista': s2399_infosimples_lista, 's2399_procjudtrab_lista': s2399_procjudtrab_lista, 's2399_infomv_lista': s2399_infomv_lista, 's2399_remunoutrempr_lista': s2399_remunoutrempr_lista, 's2399_quarentena_lista': s2399_quarentena_lista, } if for_print == 2: #return render_to_pdf('%s/s2399_evttsvtermino_verificar.html' % s2399_evttsvtermino.versao, context) from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='%s/s2399_evttsvtermino_verificar.html' % s2399_evttsvtermino.versao, filename="s2399_evttsvtermino.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 5, 'margin-bottom': 5, 'margin-right': 5, 'margin-left': 5, "zoom": 3, "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response( '%s/s2399_evttsvtermino_verificar.html' % s2399_evttsvtermino.versao, context) filename = "%s.xls" % s2399_evttsvtermino.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif for_print == 4: from django.shortcuts import render_to_response response = render_to_response( '%s/s2399_evttsvtermino_verificar.html' % s2399_evttsvtermino.versao, context) filename = "%s.csv" % s2399_evttsvtermino.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render( request, '%s/s2399_evttsvtermino_verificar.html' % s2399_evttsvtermino.versao, context) else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def listar(request, hash): for_print = 0 db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) #retorno_pagina = dict_hash['retorno_pagina'] #retorno_hash = dict_hash['retorno_hash'] #retornos_eventos_id = int(dict_hash['id']) for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='retornos_eventos') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_listar: filtrar = False dict_fields = {} show_fields = { 'show_cargo': 0, 'show_categoria': 0, 'show_celetista': 0, 'show_clauasseg': 0, 'show_cnpjsindcategprof': 0, 'show_codcargo': 0, 'show_codcateg': 0, 'show_codcbocargo': 0, 'show_codcbofuncao': 0, 'show_codfuncao': 0, 'show_cpftrab': 1, 'show_deficiencia': 0, 'show_dscfuncao': 0, 'show_dscsalvar': 0, 'show_dsctpjorn': 0, 'show_dtadm': 0, 'show_dtbase': 0, 'show_dtexercicio': 0, 'show_dtposse': 0, 'show_dtterm': 0, 'show_duracao': 0, 'show_empregador': 0, 'show_empregador_nrinsc': 1, 'show_empregador_tpinsc': 1, 'show_estatutario': 0, 'show_funcao': 0, 'show_horarios_contratuais': 0, 'show_identidade': 1, 'show_infocota': 0, 'show_local_cnae': 0, 'show_local_nrinsc': 0, 'show_local_tpinsc': 0, 'show_local_trab': 0, 'show_matricula': 0, 'show_nistrab': 0, 'show_nmcargo': 0, 'show_nmtrab': 1, 'show_nrinsc': 1, 'show_processamento': 0, 'show_processamento': 0, 'show_processamento_codigo_resposta': 1, 'show_processamento_data_hora': 0, 'show_processamento_descricao_resposta': 0, 'show_processamento_versao_app_processamento': 0, 'show_qtdhrssem': 0, 'show_recepcao_data_hora': 0, 'show_recepcao_protocolo_envio_lote': 0, 'show_recepcao_tp_amb': 0, 'show_recepcao_versao_app': 0, 'show_recibo': 0, 'show_recibo_hash': 0, 'show_recibo_numero': 0, 'show_remuneracao': 0, 'show_tmpparc': 0, 'show_tpcontr': 0, 'show_tpinsc': 1, 'show_tpjornada': 0, 'show_tpregjor': 0, 'show_trabalhador': 0, 'show_transmissor_lote_esocial': 1, 'show_undsalfixo': 0, 'show_vinculo': 0, 'show_vrsalfx': 0, } post = False #ANTES-POST-LISTAGEM if request.method == 'POST': post = True dict_fields = { 'cargo': 'cargo', 'categoria': 'categoria', 'celetista': 'celetista', 'clauasseg__icontains': 'clauasseg__icontains', 'cnpjsindcategprof__icontains': 'cnpjsindcategprof__icontains', 'codcargo__icontains': 'codcargo__icontains', 'codcateg': 'codcateg', 'codcbocargo__icontains': 'codcbocargo__icontains', 'codcbofuncao__icontains': 'codcbofuncao__icontains', 'codfuncao__icontains': 'codfuncao__icontains', 'cpftrab__icontains': 'cpftrab__icontains', 'deficiencia': 'deficiencia', 'dscfuncao__icontains': 'dscfuncao__icontains', 'dscsalvar__icontains': 'dscsalvar__icontains', 'dsctpjorn__icontains': 'dsctpjorn__icontains', 'dtadm__range': 'dtadm__range', 'dtbase': 'dtbase', 'dtexercicio__range': 'dtexercicio__range', 'dtposse__range': 'dtposse__range', 'dtterm__range': 'dtterm__range', 'duracao': 'duracao', 'empregador': 'empregador', 'empregador_nrinsc__icontains': 'empregador_nrinsc__icontains', 'empregador_tpinsc': 'empregador_tpinsc', 'estatutario': 'estatutario', 'funcao': 'funcao', 'horarios_contratuais': 'horarios_contratuais', 'identidade__icontains': 'identidade__icontains', 'infocota__icontains': 'infocota__icontains', 'local_cnae': 'local_cnae', 'local_nrinsc__icontains': 'local_nrinsc__icontains', 'local_tpinsc': 'local_tpinsc', 'local_trab': 'local_trab', 'matricula__icontains': 'matricula__icontains', 'nistrab__icontains': 'nistrab__icontains', 'nmcargo__icontains': 'nmcargo__icontains', 'nmtrab__icontains': 'nmtrab__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'processamento': 'processamento', 'processamento': 'processamento', 'processamento_codigo_resposta__icontains': 'processamento_codigo_resposta__icontains', 'processamento_data_hora__range': 'processamento_data_hora__range', 'processamento_descricao_resposta__icontains': 'processamento_descricao_resposta__icontains', 'processamento_versao_app_processamento__icontains': 'processamento_versao_app_processamento__icontains', 'qtdhrssem': 'qtdhrssem', 'recepcao_data_hora__range': 'recepcao_data_hora__range', 'recepcao_protocolo_envio_lote__icontains': 'recepcao_protocolo_envio_lote__icontains', 'recepcao_tp_amb': 'recepcao_tp_amb', 'recepcao_versao_app__icontains': 'recepcao_versao_app__icontains', 'recibo': 'recibo', 'recibo_hash__icontains': 'recibo_hash__icontains', 'recibo_numero__icontains': 'recibo_numero__icontains', 'remuneracao': 'remuneracao', 'tmpparc': 'tmpparc', 'tpcontr': 'tpcontr', 'tpinsc': 'tpinsc', 'tpjornada': 'tpjornada', 'tpregjor': 'tpregjor', 'trabalhador': 'trabalhador', 'transmissor_lote_esocial': 'transmissor_lote_esocial', 'undsalfixo': 'undsalfixo', 'vinculo': 'vinculo', 'vrsalfx': 'vrsalfx', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'cargo': 'cargo', 'categoria': 'categoria', 'celetista': 'celetista', 'clauasseg__icontains': 'clauasseg__icontains', 'cnpjsindcategprof__icontains': 'cnpjsindcategprof__icontains', 'codcargo__icontains': 'codcargo__icontains', 'codcateg': 'codcateg', 'codcbocargo__icontains': 'codcbocargo__icontains', 'codcbofuncao__icontains': 'codcbofuncao__icontains', 'codfuncao__icontains': 'codfuncao__icontains', 'cpftrab__icontains': 'cpftrab__icontains', 'deficiencia': 'deficiencia', 'dscfuncao__icontains': 'dscfuncao__icontains', 'dscsalvar__icontains': 'dscsalvar__icontains', 'dsctpjorn__icontains': 'dsctpjorn__icontains', 'dtadm__range': 'dtadm__range', 'dtbase': 'dtbase', 'dtexercicio__range': 'dtexercicio__range', 'dtposse__range': 'dtposse__range', 'dtterm__range': 'dtterm__range', 'duracao': 'duracao', 'empregador': 'empregador', 'empregador_nrinsc__icontains': 'empregador_nrinsc__icontains', 'empregador_tpinsc': 'empregador_tpinsc', 'estatutario': 'estatutario', 'funcao': 'funcao', 'horarios_contratuais': 'horarios_contratuais', 'identidade__icontains': 'identidade__icontains', 'infocota__icontains': 'infocota__icontains', 'local_cnae': 'local_cnae', 'local_nrinsc__icontains': 'local_nrinsc__icontains', 'local_tpinsc': 'local_tpinsc', 'local_trab': 'local_trab', 'matricula__icontains': 'matricula__icontains', 'nistrab__icontains': 'nistrab__icontains', 'nmcargo__icontains': 'nmcargo__icontains', 'nmtrab__icontains': 'nmtrab__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'processamento': 'processamento', 'processamento': 'processamento', 'processamento_codigo_resposta__icontains': 'processamento_codigo_resposta__icontains', 'processamento_data_hora__range': 'processamento_data_hora__range', 'processamento_descricao_resposta__icontains': 'processamento_descricao_resposta__icontains', 'processamento_versao_app_processamento__icontains': 'processamento_versao_app_processamento__icontains', 'qtdhrssem': 'qtdhrssem', 'recepcao_data_hora__range': 'recepcao_data_hora__range', 'recepcao_protocolo_envio_lote__icontains': 'recepcao_protocolo_envio_lote__icontains', 'recepcao_tp_amb': 'recepcao_tp_amb', 'recepcao_versao_app__icontains': 'recepcao_versao_app__icontains', 'recibo': 'recibo', 'recibo_hash__icontains': 'recibo_hash__icontains', 'recibo_numero__icontains': 'recibo_numero__icontains', 'remuneracao': 'remuneracao', 'tmpparc': 'tmpparc', 'tpcontr': 'tpcontr', 'tpinsc': 'tpinsc', 'tpjornada': 'tpjornada', 'tpregjor': 'tpregjor', 'trabalhador': 'trabalhador', 'transmissor_lote_esocial': 'transmissor_lote_esocial', 'undsalfixo': 'undsalfixo', 'vinculo': 'vinculo', 'vrsalfx': 'vrsalfx', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) retornos_eventos_lista = RetornosEventos.objects.using(db_slug).filter( **dict_qs).filter(excluido=False).exclude(id=0).all() if not post and len(retornos_eventos_lista) > 100: filtrar = True retornos_eventos_lista = None messages.warning( request, 'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) transmissor_lote_esocial_lista = TransmissorLoteEsocial.objects.using( db_slug).filter(excluido=False).all() #retornos_eventos_listar_custom request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 'retornos_eventos' context = { 'retornos_eventos_lista': retornos_eventos_lista, 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'show_fields': show_fields, 'for_print': for_print, 'hash': hash, 'filtrar': filtrar, 'transmissor_lote_esocial_lista': transmissor_lote_esocial_lista, } if for_print in (0, 1): return render(request, 'retornos_eventos_listar.html', context) elif for_print == 2: #return render_to_pdf('tables/s1000_evtinfoempregador_pdf_xls.html', context) from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='retornos_eventos_listar.html', filename="retornos_eventos.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response('retornos_eventos_listar.html', context) filename = "retornos_eventos.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif for_print == 4: from django.shortcuts import render_to_response response = render_to_response('tables/retornos_eventos_csv.html', context) filename = "retornos_eventos.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def verificar(request, pk, output=None): if request.user.has_perm('esocial.can_see_s2416evtCdBenAlt'): s2416_evtcdbenalt = get_object_or_404(s2416evtCdBenAlt, id=pk) s2416_evtcdbenalt_lista = s2416evtCdBenAlt.objects.filter(id=pk).all() s2416_infopenmorte_lista = s2416infoPenMorte.objects.filter( s2416_evtcdbenalt_id__in=listar_ids( s2416_evtcdbenalt_lista)).all() s2416_homologtc_lista = s2416homologTC.objects.filter( s2416_evtcdbenalt_id__in=listar_ids( s2416_evtcdbenalt_lista)).all() s2416_suspensao_lista = s2416suspensao.objects.filter( s2416_evtcdbenalt_id__in=listar_ids( s2416_evtcdbenalt_lista)).all() request.session['return_pk'] = pk request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 's2416_evtcdbenalt_lista': s2416_evtcdbenalt_lista, 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 's2416_evtcdbenalt': s2416_evtcdbenalt, 's2416_infopenmorte_lista': s2416_infopenmorte_lista, 's2416_homologtc_lista': s2416_homologtc_lista, 's2416_suspensao_lista': s2416_suspensao_lista, 'modulos': [ 'esocial', ], 'paginas': [ 's2416_evtcdbenalt', ], 'data': datetime.now(), 'output': output, } if output == 'pdf': response = PDFTemplateResponse( request=request, template='s2416_evtcdbenalt_verificar.html', filename="s2416_evtcdbenalt.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 20, 'zoom': 1, 'viewport-size': '1366 x 513', 'javascript-delay': 1000, 'footer-center': u'Página [page]/[topage]', 'footer-font-size': 10, 'no-stop-slow-scripts': True }) return response elif output == 'xls': response = render_to_response('s2416_evtcdbenalt_verificar.html', context) filename = "%s.xls" % s2416_evtcdbenalt.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('s2416_evtcdbenalt_verificar.html', context) filename = "%s.csv" % s2416_evtcdbenalt.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's2416_evtcdbenalt_verificar.html', context) else: context = { 'modulos': [ 'esocial', ], 'paginas': [ 's2416_evtcdbenalt', ], 'data': datetime.now(), } return render(request, 'permissao_negada.html', context)
def verificar(request, pk, output=None): if request.user.has_perm('esocial.can_see_s1070evtTabProcesso'): s1070_evttabprocesso = get_object_or_404(s1070evtTabProcesso, id=pk) s1070_evttabprocesso_lista = s1070evtTabProcesso.objects.filter( id=pk).all() s1070_inclusao_lista = s1070inclusao.objects.filter( s1070_evttabprocesso_id__in=listar_ids( s1070_evttabprocesso_lista)).all() s1070_inclusao_dadosprocjud_lista = s1070inclusaodadosProcJud.objects.filter( s1070_inclusao_id__in=listar_ids(s1070_inclusao_lista)).all() s1070_inclusao_infosusp_lista = s1070inclusaoinfoSusp.objects.filter( s1070_inclusao_id__in=listar_ids(s1070_inclusao_lista)).all() s1070_alteracao_lista = s1070alteracao.objects.filter( s1070_evttabprocesso_id__in=listar_ids( s1070_evttabprocesso_lista)).all() s1070_alteracao_dadosprocjud_lista = s1070alteracaodadosProcJud.objects.filter( s1070_alteracao_id__in=listar_ids(s1070_alteracao_lista)).all() s1070_alteracao_infosusp_lista = s1070alteracaoinfoSusp.objects.filter( s1070_alteracao_id__in=listar_ids(s1070_alteracao_lista)).all() s1070_alteracao_novavalidade_lista = s1070alteracaonovaValidade.objects.filter( s1070_alteracao_id__in=listar_ids(s1070_alteracao_lista)).all() s1070_exclusao_lista = s1070exclusao.objects.filter( s1070_evttabprocesso_id__in=listar_ids( s1070_evttabprocesso_lista)).all() request.session['return_pk'] = pk request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 's1070_evttabprocesso_lista': s1070_evttabprocesso_lista, 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 's1070_evttabprocesso': s1070_evttabprocesso, 's1070_inclusao_lista': s1070_inclusao_lista, 's1070_inclusao_dadosprocjud_lista': s1070_inclusao_dadosprocjud_lista, 's1070_inclusao_infosusp_lista': s1070_inclusao_infosusp_lista, 's1070_alteracao_lista': s1070_alteracao_lista, 's1070_alteracao_dadosprocjud_lista': s1070_alteracao_dadosprocjud_lista, 's1070_alteracao_infosusp_lista': s1070_alteracao_infosusp_lista, 's1070_alteracao_novavalidade_lista': s1070_alteracao_novavalidade_lista, 's1070_exclusao_lista': s1070_exclusao_lista, 'modulos': [ 'esocial', ], 'paginas': [ 's1070_evttabprocesso', ], 'data': datetime.now(), 'output': output, } if output == 'pdf': response = PDFTemplateResponse( request=request, template='s1070_evttabprocesso_verificar.html', filename="s1070_evttabprocesso.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 20, 'zoom': 1, 'viewport-size': '1366 x 513', 'javascript-delay': 1000, 'footer-center': u'Página [page]/[topage]', 'footer-font-size': 10, 'no-stop-slow-scripts': True }) return response elif output == 'xls': response = render_to_response( 's1070_evttabprocesso_verificar.html', context) filename = "%s.xls" % s1070_evttabprocesso.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response( 's1070_evttabprocesso_verificar.html', context) filename = "%s.csv" % s1070_evttabprocesso.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's1070_evttabprocesso_verificar.html', context) else: context = { 'modulos': [ 'esocial', ], 'paginas': [ 's1070_evttabprocesso', ], 'data': datetime.now(), } return render(request, 'permissao_negada.html', context)
def verificar(request, hash): for_print = 0 db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) s2190_evtadmprelim_id = int(dict_hash['id']) for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='s2190_evtadmprelim') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_listar: s2190_evtadmprelim = get_object_or_404( s2190evtAdmPrelim.objects.using(db_slug), excluido=False, id=s2190_evtadmprelim_id) s2190_evtadmprelim_lista = s2190evtAdmPrelim.objects.using( db_slug).filter(id=s2190_evtadmprelim_id, excluido=False).all() request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 's2190_evtadmprelim' context = { 's2190_evtadmprelim_lista': s2190_evtadmprelim_lista, 's2190_evtadmprelim_id': s2190_evtadmprelim_id, 's2190_evtadmprelim': s2190_evtadmprelim, 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'for_print': for_print, 'hash': hash, } if for_print == 2: from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s2190_evtadmprelim_verificar.html', filename="s2190_evtadmprelim.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 5, 'margin-bottom': 5, 'margin-right': 5, 'margin-left': 5, "zoom": 3, "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response('s2190_evtadmprelim_verificar.html', context) filename = "%s.xls" % s2190_evtadmprelim.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif for_print == 4: from django.shortcuts import render_to_response response = render_to_response('s2190_evtadmprelim_verificar.html', context) filename = "%s.csv" % s2190_evtadmprelim.identidade response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's2190_evtadmprelim_verificar.html', context) else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def salvar(request, hash): db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) efdreinf_informacoes_beneficiarios_exterior_id = int(dict_hash['id']) if 'tab' not in dict_hash.keys(): dict_hash['tab'] = '' for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='efdreinf_informacoes_beneficiarios_exterior') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) if efdreinf_informacoes_beneficiarios_exterior_id: efdreinf_informacoes_beneficiarios_exterior = get_object_or_404( EFDReinfInformacoesBeneficiariosExterior.objects.using(db_slug), excluido=False, id=efdreinf_informacoes_beneficiarios_exterior_id) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_visualizar: mensagem = None if efdreinf_informacoes_beneficiarios_exterior_id: efdreinf_informacoes_beneficiarios_exterior_form = form_efdreinf_informacoes_beneficiarios_exterior( request.POST or None, instance=efdreinf_informacoes_beneficiarios_exterior, slug=db_slug) else: efdreinf_informacoes_beneficiarios_exterior_form = form_efdreinf_informacoes_beneficiarios_exterior( request.POST or None, slug=db_slug, initial={}) if request.method == 'POST': if efdreinf_informacoes_beneficiarios_exterior_form.is_valid(): dados = efdreinf_informacoes_beneficiarios_exterior_form.cleaned_data if efdreinf_informacoes_beneficiarios_exterior_id: dados['modificado_por_id'] = usuario_id dados['modificado_em'] = datetime.datetime.now() #efdreinf_informacoes_beneficiarios_exterior_campos_multiple_passo1 EFDReinfInformacoesBeneficiariosExterior.objects.using( db_slug).filter( id=efdreinf_informacoes_beneficiarios_exterior_id ).update(**dados) obj = EFDReinfInformacoesBeneficiariosExterior.objects.using( db_slug).get( id=efdreinf_informacoes_beneficiarios_exterior_id) #efdreinf_informacoes_beneficiarios_exterior_editar_custom #efdreinf_informacoes_beneficiarios_exterior_campos_multiple_passo2 messages.success(request, 'Alterado com sucesso!') else: dados['criado_por_id'] = usuario_id dados['criado_em'] = datetime.datetime.now() dados['excluido'] = False #efdreinf_informacoes_beneficiarios_exterior_cadastrar_campos_multiple_passo1 obj = EFDReinfInformacoesBeneficiariosExterior(**dados) obj.save(using=db_slug) #efdreinf_informacoes_beneficiarios_exterior_cadastrar_custom #efdreinf_informacoes_beneficiarios_exterior_cadastrar_campos_multiple_passo2 messages.success(request, 'Cadastrado com sucesso!') if request.session['retorno_pagina'] not in ( 'efdreinf_informacoes_beneficiarios_exterior_apagar', 'efdreinf_informacoes_beneficiarios_exterior_salvar', 'efdreinf_informacoes_beneficiarios_exterior'): return redirect(request.session['retorno_pagina'], hash=request.session['retorno_hash']) if efdreinf_informacoes_beneficiarios_exterior_id != obj.id: url_hash = base64.urlsafe_b64encode( '{"print": "0", "id": "%s"}' % (obj.id)) return redirect( 'efdreinf_informacoes_beneficiarios_exterior_salvar', hash=url_hash) else: messages.error(request, 'Erro ao salvar!') efdreinf_informacoes_beneficiarios_exterior_form = disabled_form_fields( efdreinf_informacoes_beneficiarios_exterior_form, permissao.permite_editar) #efdreinf_informacoes_beneficiarios_exterior_campos_multiple_passo3 for field in efdreinf_informacoes_beneficiarios_exterior_form.fields.keys( ): efdreinf_informacoes_beneficiarios_exterior_form.fields[ field].widget.attrs[ 'ng-model'] = 'efdreinf_informacoes_beneficiarios_exterior_' + field if int(dict_hash['print']): efdreinf_informacoes_beneficiarios_exterior_form = disabled_form_for_print( efdreinf_informacoes_beneficiarios_exterior_form) #[VARIAVEIS_SECUNDARIAS_VAZIAS] if efdreinf_informacoes_beneficiarios_exterior_id: efdreinf_informacoes_beneficiarios_exterior = get_object_or_404( EFDReinfInformacoesBeneficiariosExterior.objects.using( db_slug), excluido=False, id=efdreinf_informacoes_beneficiarios_exterior_id) pass else: efdreinf_informacoes_beneficiarios_exterior = None #efdreinf_informacoes_beneficiarios_exterior_salvar_custom_variaveis# tabelas_secundarias = [] #[FUNCOES_ESPECIAIS_SALVAR] if dict_hash[ 'tab'] or 'efdreinf_informacoes_beneficiarios_exterior' in request.session[ 'retorno_pagina']: request.session["retorno_hash"] = hash request.session[ "retorno_pagina"] = 'efdreinf_informacoes_beneficiarios_exterior_salvar' context = { 'efdreinf_informacoes_beneficiarios_exterior': efdreinf_informacoes_beneficiarios_exterior, 'efdreinf_informacoes_beneficiarios_exterior_form': efdreinf_informacoes_beneficiarios_exterior_form, 'mensagem': mensagem, 'efdreinf_informacoes_beneficiarios_exterior_id': int(efdreinf_informacoes_beneficiarios_exterior_id), 'usuario': usuario, 'hash': hash, #[VARIAVEIS_SECUNDARIAS] 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'for_print': int(dict_hash['print']), 'tabelas_secundarias': tabelas_secundarias, 'tab': dict_hash['tab'], #efdreinf_informacoes_beneficiarios_exterior_salvar_custom_variaveis_context# } if for_print in (0, 1): return render( request, 'efdreinf_informacoes_beneficiarios_exterior_salvar.html', context) elif for_print == 2: from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template= 'efdreinf_informacoes_beneficiarios_exterior_salvar.html', filename="efdreinf_informacoes_beneficiarios_exterior.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response( 'efdreinf_informacoes_beneficiarios_exterior_salvar.html', context) filename = "efdreinf_informacoes_beneficiarios_exterior.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def salvar(request, pk=None, tab='master', output=None): from emensageriapro.esocial.models import STATUS_EVENTO_CADASTRADO from emensageriapro.settings import VERSAO_EMENSAGERIA, VERSAO_LAYOUT_ESOCIAL TP_AMB = config.ESOCIAL_TP_AMB if pk: s1070_evttabprocesso = get_object_or_404(s1070evtTabProcesso, id=pk) if request.user.has_perm('esocial.can_see_s1070evtTabProcesso'): if pk: s1070_evttabprocesso_form = form_s1070_evttabprocesso( request.POST or None, instance=s1070_evttabprocesso, initial={'ativo': True}) else: s1070_evttabprocesso_form = form_s1070_evttabprocesso( request.POST or None, initial={ 'versao': VERSAO_LAYOUT_ESOCIAL, 'status': STATUS_EVENTO_CADASTRADO, 'tpamb': TP_AMB, 'procemi': 1, 'verproc': VERSAO_EMENSAGERIA, 'ativo': True }) if request.method == 'POST': if s1070_evttabprocesso_form.is_valid(): obj = s1070_evttabprocesso_form.save(request=request) messages.success(request, u'Salvo com sucesso!') if not pk: from emensageriapro.functions import identidade_evento identidade_evento(obj, 'esocial') if 'return_page' in request.session and request.session[ 'return_page'] and 's1070-evttabprocesso' not in request.session[ 'return_page']: return HttpResponseRedirect(request.session['return_page']) if pk != obj.id: return redirect('s1070_evttabprocesso_salvar', pk=obj.id) else: messages.error(request, u'Erro ao salvar!') s1070_evttabprocesso_form = disabled_form_fields( s1070_evttabprocesso_form, request.user.has_perm('esocial.change_s1070evtTabProcesso')) if pk: if s1070_evttabprocesso.status != 0: s1070_evttabprocesso_form = disabled_form_fields( s1070_evttabprocesso_form, False) for field in s1070_evttabprocesso_form.fields.keys(): s1070_evttabprocesso_form.fields[field].widget.attrs[ 'ng-model'] = 's1070_evttabprocesso_' + field if output: s1070_evttabprocesso_form = disabled_form_for_print( s1070_evttabprocesso_form) s1070_inclusao_lista = None s1070_inclusao_form = None s1070_alteracao_lista = None s1070_alteracao_form = None s1070_exclusao_lista = None s1070_exclusao_form = None if pk: s1070_evttabprocesso = get_object_or_404(s1070evtTabProcesso, id=pk) s1070_inclusao_form = form_s1070_inclusao( initial={'s1070_evttabprocesso': s1070_evttabprocesso}) s1070_inclusao_form.fields['s1070_evttabprocesso'].widget.attrs[ 'readonly'] = True s1070_inclusao_lista = s1070inclusao.objects.\ filter(s1070_evttabprocesso_id=s1070_evttabprocesso.id).all() s1070_alteracao_form = form_s1070_alteracao( initial={'s1070_evttabprocesso': s1070_evttabprocesso}) s1070_alteracao_form.fields['s1070_evttabprocesso'].widget.attrs[ 'readonly'] = True s1070_alteracao_lista = s1070alteracao.objects.\ filter(s1070_evttabprocesso_id=s1070_evttabprocesso.id).all() s1070_exclusao_form = form_s1070_exclusao( initial={'s1070_evttabprocesso': s1070_evttabprocesso}) s1070_exclusao_form.fields['s1070_evttabprocesso'].widget.attrs[ 'readonly'] = True s1070_exclusao_lista = s1070exclusao.objects.\ filter(s1070_evttabprocesso_id=s1070_evttabprocesso.id).all() else: s1070_evttabprocesso = None tabelas_secundarias = [] controle_alteracoes = Auditoria.objects.filter( identidade=pk, tabela='s1070_evttabprocesso').all() if not request.POST: request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'evento_totalizador': False, 'controle_alteracoes': controle_alteracoes, 's1070_evttabprocesso': s1070_evttabprocesso, 's1070_evttabprocesso_form': s1070_evttabprocesso_form, 's1070_inclusao_form': s1070_inclusao_form, 's1070_inclusao_lista': s1070_inclusao_lista, 's1070_alteracao_form': s1070_alteracao_form, 's1070_alteracao_lista': s1070_alteracao_lista, 's1070_exclusao_form': s1070_exclusao_form, 's1070_exclusao_lista': s1070_exclusao_lista, 'data': datetime.datetime.now(), 'modulos': [ 'esocial', ], 'paginas': [ 's1070_evttabprocesso', ], 'tabelas_secundarias': tabelas_secundarias, 'tab': tab, } if output == 'pdf': response = PDFTemplateResponse( request=request, template='s1070_evttabprocesso_salvar.html', filename="s1070_evttabprocesso.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': response = render_to_response('s1070_evttabprocesso_salvar.html', context) filename = "s1070_evttabprocesso.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: return render(request, 's1070_evttabprocesso_salvar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'tab': tab, 'output': output, 'modulos': [ 'esocial', ], 'paginas': [ 's1070_evttabprocesso', ], 'data': datetime.datetime.now(), } return render(request, 'permissao_negada.html', context)
def listar(request, hash): for_print = 0 db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) #retorno_pagina = dict_hash['retorno_pagina'] #retorno_hash = dict_hash['retorno_hash'] #s1040_evttabfuncao_id = int(dict_hash['id']) for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='s1040_evttabfuncao') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if permissao.permite_listar: filtrar = False dict_fields = {} show_fields = { 'show_arquivo': 0, 'show_arquivo_original': 0, 'show_evttabfuncao': 0, 'show_ideempregador': 0, 'show_ideevento': 0, 'show_identidade': 1, 'show_nrinsc': 1, 'show_ocorrencias': 0, 'show_operacao': 1, 'show_procemi': 1, 'show_processamento_codigo_resposta': 1, 'show_processamento_data_hora': 0, 'show_processamento_descricao_resposta': 1, 'show_processamento_versao_app_processamento': 0, 'show_recepcao_data_hora': 0, 'show_recepcao_protocolo_envio_lote': 0, 'show_recepcao_tp_amb': 0, 'show_recepcao_versao_app': 0, 'show_recibo_hash': 0, 'show_recibo_numero': 0, 'show_retornos_eventos': 0, 'show_status': 1, 'show_tpamb': 1, 'show_tpinsc': 1, 'show_transmissor_lote_esocial': 0, 'show_validacao_precedencia': 0, 'show_validacoes': 0, 'show_verproc': 1, 'show_versao': 0, } post = False if request.method == 'POST': post = True dict_fields = { 'evttabfuncao': 'evttabfuncao', 'ideempregador': 'ideempregador', 'ideevento': 'ideevento', 'identidade__icontains': 'identidade__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'operacao': 'operacao', 'procemi': 'procemi', 'status': 'status', 'tpamb': 'tpamb', 'tpinsc': 'tpinsc', 'transmissor_lote_esocial': 'transmissor_lote_esocial', 'verproc__icontains': 'verproc__icontains', 'versao__icontains': 'versao__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'evttabfuncao': 'evttabfuncao', 'ideempregador': 'ideempregador', 'ideevento': 'ideevento', 'identidade__icontains': 'identidade__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'operacao': 'operacao', 'procemi': 'procemi', 'status': 'status', 'tpamb': 'tpamb', 'tpinsc': 'tpinsc', 'transmissor_lote_esocial': 'transmissor_lote_esocial', 'verproc__icontains': 'verproc__icontains', 'versao__icontains': 'versao__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) s1040_evttabfuncao_lista = s1040evtTabFuncao.objects.using( db_slug).filter(**dict_qs).filter(excluido=False).exclude( id=0).all() if not post and len(s1040_evttabfuncao_lista) > 100: filtrar = True s1040_evttabfuncao_lista = None messages.warning( request, 'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) transmissor_lote_esocial_lista = TransmissorLoteEsocial.objects.using( db_slug).filter(excluido=False).all() #s1040_evttabfuncao_listar_custom request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 's1040_evttabfuncao' context = { 's1040_evttabfuncao_lista': s1040_evttabfuncao_lista, 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'show_fields': show_fields, 'for_print': for_print, 'hash': hash, 'filtrar': filtrar, 'transmissor_lote_esocial_lista': transmissor_lote_esocial_lista, } #return render(request, 's1040_evttabfuncao_listar.html', context) if for_print in (0, 1): return render(request, 's1040_evttabfuncao_listar.html', context) elif for_print == 2: #return render_to_pdf('tables/s1000_evtinfoempregador_pdf_xls.html', context) from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s1040_evttabfuncao_listar.html', filename="s1040_evttabfuncao.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', 'viewport-size': "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response('s1040_evttabfuncao_listar.html', context) filename = "s1040_evttabfuncao.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif for_print == 4: from django.shortcuts import render_to_response response = render_to_response('tables/s1040_evttabfuncao_csv.html', context) filename = "s1040_evttabfuncao.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def salvar(request, hash): db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) s1202_infoperapur_itensremun_id = int(dict_hash['id']) if 'tab' not in dict_hash.keys(): dict_hash['tab'] = '' for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='s1202_infoperapur_itensremun') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) if s1202_infoperapur_itensremun_id: s1202_infoperapur_itensremun = get_object_or_404( s1202infoPerApuritensRemun.objects.using(db_slug), excluido=False, id=s1202_infoperapur_itensremun_id) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos dados_evento = {} dados_evento['status'] = 0 if s1202_infoperapur_itensremun_id: dados_evento = s1202_infoperapur_itensremun.evento() if dados_evento['status'] != 0: dict_permissoes['s1202_infoperapur_itensremun_apagar'] = 0 dict_permissoes['s1202_infoperapur_itensremun_editar'] = 0 if permissao.permite_visualizar: mensagem = None if s1202_infoperapur_itensremun_id: s1202_infoperapur_itensremun_form = form_s1202_infoperapur_itensremun( request.POST or None, instance=s1202_infoperapur_itensremun, slug=db_slug) else: s1202_infoperapur_itensremun_form = form_s1202_infoperapur_itensremun( request.POST or None, slug=db_slug, initial={}) if request.method == 'POST': if s1202_infoperapur_itensremun_form.is_valid(): dados = s1202_infoperapur_itensremun_form.cleaned_data import json from django.forms.models import model_to_dict if s1202_infoperapur_itensremun_id: if dados_evento['status'] == 0: dados['modificado_por_id'] = usuario_id dados['modificado_em'] = datetime.datetime.now() #s1202_infoperapur_itensremun_campos_multiple_passo1 s1202infoPerApuritensRemun.objects.using( db_slug).filter( id=s1202_infoperapur_itensremun_id).update( **dados) obj = s1202infoPerApuritensRemun.objects.using( db_slug).get(id=s1202_infoperapur_itensremun_id) #s1202_infoperapur_itensremun_editar_custom #s1202_infoperapur_itensremun_campos_multiple_passo2 messages.success(request, 'Alterado com sucesso!') gravar_auditoria( json.dumps( model_to_dict(s1202_infoperapur_itensremun), indent=4, sort_keys=True, default=str), json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 's1202_infoperapur_itensremun', s1202_infoperapur_itensremun_id, usuario_id, 2) else: messages.error( request, 'Somente é possível alterar eventos com status "Cadastrado"!' ) else: dados['criado_por_id'] = usuario_id dados['criado_em'] = datetime.datetime.now() dados['excluido'] = False #s1202_infoperapur_itensremun_cadastrar_campos_multiple_passo1 obj = s1202infoPerApuritensRemun(**dados) obj.save(using=db_slug) #s1202_infoperapur_itensremun_cadastrar_custom #s1202_infoperapur_itensremun_cadastrar_campos_multiple_passo2 messages.success(request, 'Cadastrado com sucesso!') gravar_auditoria( '{}', json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 's1202_infoperapur_itensremun', obj.id, usuario_id, 1) if request.session['retorno_pagina'] not in ( 's1202_infoperapur_itensremun_apagar', 's1202_infoperapur_itensremun_salvar', 's1202_infoperapur_itensremun'): return redirect(request.session['retorno_pagina'], hash=request.session['retorno_hash']) if s1202_infoperapur_itensremun_id != obj.id: url_hash = base64.urlsafe_b64encode( '{"print": "0", "id": "%s"}' % (obj.id)) return redirect('s1202_infoperapur_itensremun_salvar', hash=url_hash) else: messages.error(request, 'Erro ao salvar!') s1202_infoperapur_itensremun_form = disabled_form_fields( s1202_infoperapur_itensremun_form, permissao.permite_editar) if s1202_infoperapur_itensremun_id: if dados_evento['status'] != 0: s1202_infoperapur_itensremun_form = disabled_form_fields( s1202_infoperapur_itensremun_form, 0) #s1202_infoperapur_itensremun_campos_multiple_passo3 for field in s1202_infoperapur_itensremun_form.fields.keys(): s1202_infoperapur_itensremun_form.fields[field].widget.attrs[ 'ng-model'] = 's1202_infoperapur_itensremun_' + field if int(dict_hash['print']): s1202_infoperapur_itensremun_form = disabled_form_for_print( s1202_infoperapur_itensremun_form) #[VARIAVEIS_SECUNDARIAS_VAZIAS] if s1202_infoperapur_itensremun_id: s1202_infoperapur_itensremun = get_object_or_404( s1202infoPerApuritensRemun.objects.using(db_slug), excluido=False, id=s1202_infoperapur_itensremun_id) pass else: s1202_infoperapur_itensremun = None #s1202_infoperapur_itensremun_salvar_custom_variaveis# tabelas_secundarias = [] #[FUNCOES_ESPECIAIS_SALVAR] if dict_hash[ 'tab'] or 's1202_infoperapur_itensremun' in request.session[ 'retorno_pagina']: request.session["retorno_hash"] = hash request.session[ "retorno_pagina"] = 's1202_infoperapur_itensremun_salvar' controle_alteracoes = Auditoria.objects.using(db_slug).filter( identidade=s1202_infoperapur_itensremun_id, tabela='s1202_infoperapur_itensremun').all() context = { 'ocorrencias': dados_evento['ocorrencias'], 'validacao_precedencia': dados_evento['validacao_precedencia'], 'validacoes': dados_evento['validacoes'], 'status': dados_evento['status'], 'controle_alteracoes': controle_alteracoes, 's1202_infoperapur_itensremun': s1202_infoperapur_itensremun, 's1202_infoperapur_itensremun_form': s1202_infoperapur_itensremun_form, 'mensagem': mensagem, 's1202_infoperapur_itensremun_id': int(s1202_infoperapur_itensremun_id), 'usuario': usuario, 'hash': hash, #[VARIAVEIS_SECUNDARIAS] 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'for_print': int(dict_hash['print']), 'tabelas_secundarias': tabelas_secundarias, 'tab': dict_hash['tab'], #s1202_infoperapur_itensremun_salvar_custom_variaveis_context# } if for_print in (0, 1): return render(request, 's1202_infoperapur_itensremun_salvar.html', context) elif for_print == 2: from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s1202_infoperapur_itensremun_salvar.html', filename="s1202_infoperapur_itensremun.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response( 's1202_infoperapur_itensremun_salvar.html', context) filename = "s1202_infoperapur_itensremun.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def salvar(request, hash): from emensageriapro.settings import VERSAO_EMENSAGERIA, VERSAO_LAYOUT_ESOCIAL, TP_AMB db_slug = 'default' try: usuario_id = request.user.id dict_hash = get_hash_url(hash) s1040_evttabfuncao_id = int(dict_hash['id']) if 'tab' not in dict_hash.keys(): dict_hash['tab'] = '' for_print = int(dict_hash['print']) except: usuario_id = False return redirect('login') usuario = get_object_or_404(Usuarios.objects.using(db_slug), excluido=False, id=usuario_id) pagina = ConfigPaginas.objects.using(db_slug).get( excluido=False, endereco='s1040_evttabfuncao') permissao = ConfigPermissoes.objects.using(db_slug).get( excluido=False, config_paginas=pagina, config_perfis=usuario.config_perfis) if s1040_evttabfuncao_id: s1040_evttabfuncao = get_object_or_404( s1040evtTabFuncao.objects.using(db_slug), excluido=False, id=s1040_evttabfuncao_id) dict_permissoes = json_to_dict(usuario.config_perfis.permissoes) paginas_permitidas_lista = usuario.config_perfis.paginas_permitidas modulos_permitidos_lista = usuario.config_perfis.modulos_permitidos if s1040_evttabfuncao_id: if s1040_evttabfuncao.status != 0: dict_permissoes['s1040_evttabfuncao_apagar'] = 0 dict_permissoes['s1040_evttabfuncao_editar'] = 0 if permissao.permite_visualizar: mensagem = None if s1040_evttabfuncao_id: s1040_evttabfuncao_form = form_s1040_evttabfuncao( request.POST or None, instance=s1040_evttabfuncao, slug=db_slug) else: s1040_evttabfuncao_form = form_s1040_evttabfuncao( request.POST or None, slug=db_slug, initial={ 'versao': VERSAO_LAYOUT_ESOCIAL, 'status': 0, 'processamento_codigo_resposta': 0, 'tpamb': TP_AMB, 'procemi': 1, 'verproc': VERSAO_EMENSAGERIA }) if request.method == 'POST': if s1040_evttabfuncao_form.is_valid(): dados = s1040_evttabfuncao_form.cleaned_data import json from django.forms.models import model_to_dict if s1040_evttabfuncao_id: if s1040_evttabfuncao.status == 0: dados['modificado_por_id'] = usuario_id dados['modificado_em'] = datetime.datetime.now() #s1040_evttabfuncao_campos_multiple_passo1 s1040evtTabFuncao.objects.using(db_slug).filter( id=s1040_evttabfuncao_id).update(**dados) obj = s1040evtTabFuncao.objects.using(db_slug).get( id=s1040_evttabfuncao_id) #s1040_evttabfuncao_editar_custom #s1040_evttabfuncao_campos_multiple_passo2 messages.success(request, 'Alterado com sucesso!') gravar_auditoria( json.dumps(model_to_dict(s1040_evttabfuncao), indent=4, sort_keys=True, default=str), json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 's1040_evttabfuncao', s1040_evttabfuncao_id, usuario_id, 2) else: obj = s1040evtTabFuncao.objects.using(db_slug).get( id=s1040_evttabfuncao_id) messages.error( request, 'Não é possível salvar o evento, pois o mesmo não está com o status "Cadastrado"!' ) else: dados['processamento_codigo_resposta'] = '- -' dados['processamento_descricao_resposta'] = '- -' dados['criado_por_id'] = usuario_id dados['criado_em'] = datetime.datetime.now() dados['excluido'] = False #s1040_evttabfuncao_cadastrar_campos_multiple_passo1 obj = s1040evtTabFuncao(**dados) obj.save(using=db_slug) #s1040_evttabfuncao_cadastrar_custom #s1040_evttabfuncao_cadastrar_campos_multiple_passo2 identidade_evento(obj.id, db_slug) messages.success(request, 'Cadastrado com sucesso!') s1040_evttabfuncao_form = form_s1040_evttabfuncao( request.POST or None, instance=obj, slug=db_slug) gravar_auditoria( '{}', json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 's1040_evttabfuncao', obj.id, usuario_id, 1) if request.session['retorno_pagina'] not in ( 's1040_evttabfuncao_apagar', 's1040_evttabfuncao_salvar', 's1040_evttabfuncao'): return redirect(request.session['retorno_pagina'], hash=request.session['retorno_hash']) if s1040_evttabfuncao_id != obj.id: url_hash = base64.urlsafe_b64encode( '{"print": "0", "id": "%s"}' % (obj.id)) return redirect('s1040_evttabfuncao_salvar', hash=url_hash) else: messages.error(request, 'Erro ao salvar!') s1040_evttabfuncao_form = disabled_form_fields( s1040_evttabfuncao_form, permissao.permite_editar) if s1040_evttabfuncao_id: if s1040_evttabfuncao.status != 0: s1040_evttabfuncao_form = disabled_form_fields( s1040_evttabfuncao_form, False) #s1040_evttabfuncao_campos_multiple_passo3 for field in s1040_evttabfuncao_form.fields.keys(): s1040_evttabfuncao_form.fields[field].widget.attrs[ 'ng-model'] = 's1040_evttabfuncao_' + field if int(dict_hash['print']): s1040_evttabfuncao_form = disabled_form_for_print( s1040_evttabfuncao_form) s1040_inclusao_form = None s1040_inclusao_lista = None s1040_alteracao_form = None s1040_alteracao_lista = None s1040_exclusao_form = None s1040_exclusao_lista = None if s1040_evttabfuncao_id: s1040_evttabfuncao = get_object_or_404( s1040evtTabFuncao.objects.using(db_slug), excluido=False, id=s1040_evttabfuncao_id) s1040_inclusao_form = form_s1040_inclusao( initial={'s1040_evttabfuncao': s1040_evttabfuncao}, slug=db_slug) s1040_inclusao_form.fields['s1040_evttabfuncao'].widget.attrs[ 'readonly'] = True s1040_inclusao_lista = s1040inclusao.objects.using(db_slug).filter( excluido=False, s1040_evttabfuncao_id=s1040_evttabfuncao.id).all() s1040_alteracao_form = form_s1040_alteracao( initial={'s1040_evttabfuncao': s1040_evttabfuncao}, slug=db_slug) s1040_alteracao_form.fields['s1040_evttabfuncao'].widget.attrs[ 'readonly'] = True s1040_alteracao_lista = s1040alteracao.objects.using( db_slug).filter( excluido=False, s1040_evttabfuncao_id=s1040_evttabfuncao.id).all() s1040_exclusao_form = form_s1040_exclusao( initial={'s1040_evttabfuncao': s1040_evttabfuncao}, slug=db_slug) s1040_exclusao_form.fields['s1040_evttabfuncao'].widget.attrs[ 'readonly'] = True s1040_exclusao_lista = s1040exclusao.objects.using(db_slug).filter( excluido=False, s1040_evttabfuncao_id=s1040_evttabfuncao.id).all() else: s1040_evttabfuncao = None #s1040_evttabfuncao_salvar_custom_variaveis# tabelas_secundarias = [] #[FUNCOES_ESPECIAIS_SALVAR] if 's1040_evttabfuncao'[1] == '5': evento_totalizador = True else: evento_totalizador = False if not evento_totalizador: s1040_evttabfuncao_form.fields['tpamb'].widget.attrs[ 'disabled'] = True s1040_evttabfuncao_form.fields['tpamb'].widget.attrs[ 'readonly'] = True s1040_evttabfuncao_form.fields['tpamb'].value = TP_AMB s1040_evttabfuncao_form.fields['procemi'].widget.attrs[ 'disabled'] = True s1040_evttabfuncao_form.fields['procemi'].widget.attrs[ 'readonly'] = True s1040_evttabfuncao_form.fields['procemi'].value = 1 s1040_evttabfuncao_form.fields['verproc'].widget.attrs[ 'readonly'] = True s1040_evttabfuncao_form.fields[ 'verproc'].value = VERSAO_EMENSAGERIA if dict_hash['tab'] or 's1040_evttabfuncao' in request.session[ 'retorno_pagina']: request.session["retorno_hash"] = hash request.session["retorno_pagina"] = 's1040_evttabfuncao_salvar' controle_alteracoes = Auditoria.objects.using(db_slug).filter( identidade=s1040_evttabfuncao_id, tabela='s1040_evttabfuncao').all() context = { 'evento_totalizador': evento_totalizador, 'controle_alteracoes': controle_alteracoes, 's1040_evttabfuncao': s1040_evttabfuncao, 's1040_evttabfuncao_form': s1040_evttabfuncao_form, 'mensagem': mensagem, 's1040_evttabfuncao_id': int(s1040_evttabfuncao_id), 'usuario': usuario, 'hash': hash, 's1040_inclusao_form': s1040_inclusao_form, 's1040_inclusao_lista': s1040_inclusao_lista, 's1040_alteracao_form': s1040_alteracao_form, 's1040_alteracao_lista': s1040_alteracao_lista, 's1040_exclusao_form': s1040_exclusao_form, 's1040_exclusao_lista': s1040_exclusao_lista, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, 'for_print': int(dict_hash['print']), 'tabelas_secundarias': tabelas_secundarias, 'tab': dict_hash['tab'], #s1040_evttabfuncao_salvar_custom_variaveis_context# } if for_print in (0, 1): return render(request, 's1040_evttabfuncao_salvar.html', context) elif for_print == 2: from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s1040_evttabfuncao_salvar.html', filename="s1040_evttabfuncao.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif for_print == 3: from django.shortcuts import render_to_response response = render_to_response('s1040_evttabfuncao_salvar.html', context) filename = "s1040_evttabfuncao.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: context = { 'usuario': usuario, 'modulos_permitidos_lista': modulos_permitidos_lista, 'paginas_permitidas_lista': paginas_permitidas_lista, 'permissao': permissao, 'data': datetime.datetime.now(), 'pagina': pagina, 'dict_permissoes': dict_permissoes, } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('s2241.can_see_s2241fimAposentEsp'): filtrar = False dict_fields = {} show_fields = { 'show_s2241_aposentesp': 1, 'show_dtfimcondicao': 1, } post = False if request.method == 'POST': post = True dict_fields = { 's2241_aposentesp__icontains': 's2241_aposentesp__icontains', 'dtfimcondicao__range': 'dtfimcondicao__range', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 's2241_aposentesp__icontains': 's2241_aposentesp__icontains', 'dtfimcondicao__range': 'dtfimcondicao__range', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) s2241_fimaposentesp_lista = s2241fimAposentEsp.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(s2241_fimaposentesp_lista) > 100: filtrar = True s2241_fimaposentesp_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) #[VARIAVEIS_LISTA_FILTRO_RELATORIO] #s2241_fimaposentesp_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 's2241_fimaposentesp_lista': s2241_fimaposentesp_lista, 'modulos': [ 's2241', ], 'paginas': [ 's2241_fimaposentesp', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, #[VARIAVEIS_FILTRO_RELATORIO] } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s2241_fimaposentesp_listar.html', filename="s2241_fimaposentesp.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('s2241_fimaposentesp_listar.html', context) filename = "s2241_fimaposentesp.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response('csv/s2241_fimaposentesp.csv', context) filename = "s2241_fimaposentesp.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's2241_fimaposentesp_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': [ 's2241', ], 'paginas': [ 's2241_fimaposentesp', ], } return render(request, 'permissao_negada.html', context)
def salvar(request, pk=None, tab='master', output=None): from emensageriapro.esocial.models import STATUS_EVENTO_CADASTRADO evento_dados = {} evento_dados['status'] = STATUS_EVENTO_CADASTRADO if pk: s5011_idelotacao = get_object_or_404(s5011ideLotacao, id=pk) evento_dados = s5011_idelotacao.evento() if request.user.has_perm('s5011.can_see_s5011ideLotacao'): if pk: s5011_idelotacao_form = form_s5011_idelotacao( request.POST or None, instance=s5011_idelotacao) else: s5011_idelotacao_form = form_s5011_idelotacao(request.POST or None) if request.method == 'POST': if s5011_idelotacao_form.is_valid(): obj = s5011_idelotacao_form.save(request=request) messages.success(request, u'Salvo com sucesso!') if not pk: gravar_auditoria( '{}', json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 's5011_idelotacao', obj.id, request.user.id, 1) else: gravar_auditoria( json.dumps(model_to_dict(s5011_idelotacao), indent=4, sort_keys=True, default=str), json.dumps(model_to_dict(obj), indent=4, sort_keys=True, default=str), 's5011_idelotacao', pk, request.user.id, 2) if request.session['return_page'] not in ( 's5011_idelotacao_apagar', 's5011_idelotacao_salvar', 's5011_idelotacao'): return redirect(request.session['return_page'], pk=request.session['return_pk']) if pk != obj.id: return redirect('s5011_idelotacao_salvar', pk=obj.id) else: messages.error(request, u'Erro ao salvar!') s5011_idelotacao_form = disabled_form_fields( s5011_idelotacao_form, request.user.has_perm('s5011.change_s5011ideLotacao')) if pk: if evento_dados['status'] != STATUS_EVENTO_CADASTRADO: s5011_idelotacao_form = disabled_form_fields( s5011_idelotacao_form, 0) if output: s5011_idelotacao_form = disabled_form_for_print( s5011_idelotacao_form) s5011_infotercsusp_lista = None s5011_infotercsusp_form = None s5011_infoemprparcial_lista = None s5011_infoemprparcial_form = None s5011_dadosopport_lista = None s5011_dadosopport_form = None s5011_basesremun_lista = None s5011_basesremun_form = None s5011_basesavnport_lista = None s5011_basesavnport_form = None s5011_infosubstpatropport_lista = None s5011_infosubstpatropport_form = None if pk: s5011_idelotacao = get_object_or_404(s5011ideLotacao, id=pk) s5011_infotercsusp_form = form_s5011_infotercsusp( initial={'s5011_idelotacao': s5011_idelotacao}) s5011_infotercsusp_form.fields['s5011_idelotacao'].widget.attrs[ 'readonly'] = True s5011_infotercsusp_lista = s5011infoTercSusp.objects.\ filter(s5011_idelotacao_id=s5011_idelotacao.id).all() s5011_infoemprparcial_form = form_s5011_infoemprparcial( initial={'s5011_idelotacao': s5011_idelotacao}) s5011_infoemprparcial_form.fields['s5011_idelotacao'].widget.attrs[ 'readonly'] = True s5011_infoemprparcial_lista = s5011infoEmprParcial.objects.\ filter(s5011_idelotacao_id=s5011_idelotacao.id).all() s5011_dadosopport_form = form_s5011_dadosopport( initial={'s5011_idelotacao': s5011_idelotacao}) s5011_dadosopport_form.fields['s5011_idelotacao'].widget.attrs[ 'readonly'] = True s5011_dadosopport_lista = s5011dadosOpPort.objects.\ filter(s5011_idelotacao_id=s5011_idelotacao.id).all() s5011_basesremun_form = form_s5011_basesremun( initial={'s5011_idelotacao': s5011_idelotacao}) s5011_basesremun_form.fields['s5011_idelotacao'].widget.attrs[ 'readonly'] = True s5011_basesremun_lista = s5011basesRemun.objects.\ filter(s5011_idelotacao_id=s5011_idelotacao.id).all() s5011_basesavnport_form = form_s5011_basesavnport( initial={'s5011_idelotacao': s5011_idelotacao}) s5011_basesavnport_form.fields['s5011_idelotacao'].widget.attrs[ 'readonly'] = True s5011_basesavnport_lista = s5011basesAvNPort.objects.\ filter(s5011_idelotacao_id=s5011_idelotacao.id).all() s5011_infosubstpatropport_form = form_s5011_infosubstpatropport( initial={'s5011_idelotacao': s5011_idelotacao}) s5011_infosubstpatropport_form.fields[ 's5011_idelotacao'].widget.attrs['readonly'] = True s5011_infosubstpatropport_lista = s5011infoSubstPatrOpPort.objects.\ filter(s5011_idelotacao_id=s5011_idelotacao.id).all() else: s5011_idelotacao = None tabelas_secundarias = [] if tab or 's5011_idelotacao' in request.session['return_page']: request.session['return_pk'] = pk request.session['return_tab'] = tab request.session['return_page'] = 's5011_idelotacao_salvar' controle_alteracoes = Auditoria.objects.filter( identidade=pk, tabela='s5011_idelotacao').all() context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'evento_dados': evento_dados, 'controle_alteracoes': controle_alteracoes, 's5011_idelotacao': s5011_idelotacao, 's5011_idelotacao_form': s5011_idelotacao_form, 'modulos': [ 's5011', ], 'paginas': [ 's5011_idelotacao', ], 's5011_infotercsusp_form': s5011_infotercsusp_form, 's5011_infotercsusp_lista': s5011_infotercsusp_lista, 's5011_infoemprparcial_form': s5011_infoemprparcial_form, 's5011_infoemprparcial_lista': s5011_infoemprparcial_lista, 's5011_dadosopport_form': s5011_dadosopport_form, 's5011_dadosopport_lista': s5011_dadosopport_lista, 's5011_basesremun_form': s5011_basesremun_form, 's5011_basesremun_lista': s5011_basesremun_lista, 's5011_basesavnport_form': s5011_basesavnport_form, 's5011_basesavnport_lista': s5011_basesavnport_lista, 's5011_infosubstpatropport_form': s5011_infosubstpatropport_form, 's5011_infosubstpatropport_lista': s5011_infosubstpatropport_lista, 'data': datetime.datetime.now(), 'tabelas_secundarias': tabelas_secundarias, 'tab': tab, #s5011_idelotacao_salvar_custom_variaveis_context# } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s5011_idelotacao_salvar.html', filename="s5011_idelotacao.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('s5011_idelotacao_salvar.html', context) filename = "s5011_idelotacao.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response else: return render(request, 's5011_idelotacao_salvar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 'output': output, 'tab': tab, 'modulos': [ 's5011', ], 'paginas': [ 's5011_idelotacao', ], 'data': datetime.datetime.now(), } return render(request, 'permissao_negada.html', context)
def verificar(request, pk, output=None): if request.user.has_perm('esocial.can_see_s1200evtRemun'): s1200_evtremun = get_object_or_404(s1200evtRemun, id=pk) s1200_evtremun_lista = s1200evtRemun.objects.filter(id=pk).all() s1200_infomv_lista = s1200infoMV.objects.filter(s1200_evtremun_id__in = listar_ids(s1200_evtremun_lista) ).all() s1200_remunoutrempr_lista = s1200remunOutrEmpr.objects.filter(s1200_infomv_id__in = listar_ids(s1200_infomv_lista) ).all() s1200_infocomplem_lista = s1200infoComplem.objects.filter(s1200_evtremun_id__in = listar_ids(s1200_evtremun_lista) ).all() s1200_sucessaovinc_lista = s1200sucessaoVinc.objects.filter(s1200_infocomplem_id__in = listar_ids(s1200_infocomplem_lista) ).all() s1200_procjudtrab_lista = s1200procJudTrab.objects.filter(s1200_evtremun_id__in = listar_ids(s1200_evtremun_lista) ).all() s1200_infointerm_lista = s1200infoInterm.objects.filter(s1200_evtremun_id__in = listar_ids(s1200_evtremun_lista) ).all() s1200_dmdev_lista = s1200dmDev.objects.filter(s1200_evtremun_id__in = listar_ids(s1200_evtremun_lista) ).all() s1200_infoperapur_lista = s1200infoPerApur.objects.filter(s1200_dmdev_id__in = listar_ids(s1200_dmdev_lista) ).all() s1200_infoperapur_ideestablot_lista = s1200infoPerApurideEstabLot.objects.filter(s1200_infoperapur_id__in = listar_ids(s1200_infoperapur_lista) ).all() s1200_infoperapur_remunperapur_lista = s1200infoPerApurremunPerApur.objects.filter(s1200_infoperapur_ideestablot_id__in = listar_ids(s1200_infoperapur_ideestablot_lista) ).all() s1200_infoperapur_itensremun_lista = s1200infoPerApuritensRemun.objects.filter(s1200_infoperapur_remunperapur_id__in = listar_ids(s1200_infoperapur_remunperapur_lista) ).all() s1200_infoperapur_infosaudecolet_lista = s1200infoPerApurinfoSaudeColet.objects.filter(s1200_infoperapur_remunperapur_id__in = listar_ids(s1200_infoperapur_remunperapur_lista) ).all() s1200_infoperapur_detoper_lista = s1200infoPerApurdetOper.objects.filter(s1200_infoperapur_infosaudecolet_id__in = listar_ids(s1200_infoperapur_infosaudecolet_lista) ).all() s1200_infoperapur_detplano_lista = s1200infoPerApurdetPlano.objects.filter(s1200_infoperapur_detoper_id__in = listar_ids(s1200_infoperapur_detoper_lista) ).all() s1200_infoperapur_infoagnocivo_lista = s1200infoPerApurinfoAgNocivo.objects.filter(s1200_infoperapur_remunperapur_id__in = listar_ids(s1200_infoperapur_remunperapur_lista) ).all() s1200_infoperapur_infotrabinterm_lista = s1200infoPerApurinfoTrabInterm.objects.filter(s1200_infoperapur_remunperapur_id__in = listar_ids(s1200_infoperapur_remunperapur_lista) ).all() s1200_infoperant_lista = s1200infoPerAnt.objects.filter(s1200_dmdev_id__in = listar_ids(s1200_dmdev_lista) ).all() s1200_infoperant_ideadc_lista = s1200infoPerAntideADC.objects.filter(s1200_infoperant_id__in = listar_ids(s1200_infoperant_lista) ).all() s1200_infoperant_ideperiodo_lista = s1200infoPerAntidePeriodo.objects.filter(s1200_infoperant_ideadc_id__in = listar_ids(s1200_infoperant_ideadc_lista) ).all() s1200_infoperant_ideestablot_lista = s1200infoPerAntideEstabLot.objects.filter(s1200_infoperant_ideperiodo_id__in = listar_ids(s1200_infoperant_ideperiodo_lista) ).all() s1200_infoperant_remunperant_lista = s1200infoPerAntremunPerAnt.objects.filter(s1200_infoperant_ideestablot_id__in = listar_ids(s1200_infoperant_ideestablot_lista) ).all() s1200_infoperant_itensremun_lista = s1200infoPerAntitensRemun.objects.filter(s1200_infoperant_remunperant_id__in = listar_ids(s1200_infoperant_remunperant_lista) ).all() s1200_infoperant_infoagnocivo_lista = s1200infoPerAntinfoAgNocivo.objects.filter(s1200_infoperant_remunperant_id__in = listar_ids(s1200_infoperant_remunperant_lista) ).all() s1200_infoperant_infotrabinterm_lista = s1200infoPerAntinfoTrabInterm.objects.filter(s1200_infoperant_remunperant_id__in = listar_ids(s1200_infoperant_remunperant_lista) ).all() s1200_infoperant_infocomplcont_lista = s1200infoPerAntinfoComplCont.objects.filter(s1200_dmdev_id__in = listar_ids(s1200_dmdev_lista) ).all() request.session['return_pk'] = pk request.session['return_page'] = request.META.get('HTTP_REFERER') context = { 's1200_evtremun_lista': s1200_evtremun_lista, 'usuario': Usuarios.objects.get(user_id=request.user.id), 'pk': pk, 's1200_evtremun': s1200_evtremun, 's1200_infomv_lista': s1200_infomv_lista, 's1200_remunoutrempr_lista': s1200_remunoutrempr_lista, 's1200_infocomplem_lista': s1200_infocomplem_lista, 's1200_sucessaovinc_lista': s1200_sucessaovinc_lista, 's1200_procjudtrab_lista': s1200_procjudtrab_lista, 's1200_infointerm_lista': s1200_infointerm_lista, 's1200_dmdev_lista': s1200_dmdev_lista, 's1200_infoperapur_lista': s1200_infoperapur_lista, 's1200_infoperapur_ideestablot_lista': s1200_infoperapur_ideestablot_lista, 's1200_infoperapur_remunperapur_lista': s1200_infoperapur_remunperapur_lista, 's1200_infoperapur_itensremun_lista': s1200_infoperapur_itensremun_lista, 's1200_infoperapur_infosaudecolet_lista': s1200_infoperapur_infosaudecolet_lista, 's1200_infoperapur_detoper_lista': s1200_infoperapur_detoper_lista, 's1200_infoperapur_detplano_lista': s1200_infoperapur_detplano_lista, 's1200_infoperapur_infoagnocivo_lista': s1200_infoperapur_infoagnocivo_lista, 's1200_infoperapur_infotrabinterm_lista': s1200_infoperapur_infotrabinterm_lista, 's1200_infoperant_lista': s1200_infoperant_lista, 's1200_infoperant_ideadc_lista': s1200_infoperant_ideadc_lista, 's1200_infoperant_ideperiodo_lista': s1200_infoperant_ideperiodo_lista, 's1200_infoperant_ideestablot_lista': s1200_infoperant_ideestablot_lista, 's1200_infoperant_remunperant_lista': s1200_infoperant_remunperant_lista, 's1200_infoperant_itensremun_lista': s1200_infoperant_itensremun_lista, 's1200_infoperant_infoagnocivo_lista': s1200_infoperant_infoagnocivo_lista, 's1200_infoperant_infotrabinterm_lista': s1200_infoperant_infotrabinterm_lista, 's1200_infoperant_infocomplcont_lista': s1200_infoperant_infocomplcont_lista, 'modulos': ['esocial', ], 'paginas': ['s1200_evtremun', ], 'data': datetime.now(), 'output': output, } if output == 'pdf': response = PDFTemplateResponse( request=request, template='s1200_evtremun_verificar.html', filename="s1200_evtremun.pdf", context=context, show_content_in_browser=True, cmd_options={'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 20, 'zoom': 1, 'viewport-size': '1366 x 513', 'javascript-delay': 1000, 'footer-center': u'Página [page]/[topage]', 'footer-font-size': 10, 'no-stop-slow-scripts': True}) return response elif output == 'xls': response = render_to_response('s1200_evtremun_verificar.html', context) filename = "%s.xls" % s1200_evtremun.identidade response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('s1200_evtremun_verificar.html', context) filename = "%s.csv" % s1200_evtremun.identidade response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's1200_evtremun_verificar.html', context) else: context = { 'modulos': ['esocial', ], 'paginas': ['s1200_evtremun', ], 'data': datetime.now(), } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('controle_de_acesso.can_see_Usuarios'): filtrar = False dict_fields = {} show_fields = { 'show_foto': 0, 'show_username': 1, 'show_password': 0, 'show_first_name': 1, 'show_last_name': 1, 'show_email': 1, 'show_is_superuser': 0, 'show_is_staff': 0, 'show_is_active': 1, 'show_last_login': 0, 'show_date_joined': 0, 'show_config_perfis': 1, 'show_name': 1, } post = False #ANTES-POST-LISTAGEM if request.method == 'POST': post = True dict_fields = { 'username__icontains': 'username__icontains', 'first_name__icontains': 'first_name__icontains', 'last_name__icontains': 'last_name__icontains', 'email__icontains': 'email__icontains', 'config_perfis__icontains': 'config_perfis__icontains', 'name__icontains': 'name__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'username__icontains': 'username__icontains', 'first_name__icontains': 'first_name__icontains', 'last_name__icontains': 'last_name__icontains', 'email__icontains': 'email__icontains', 'config_perfis__icontains': 'config_perfis__icontains', 'name__icontains': 'name__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) usuarios_lista = Usuarios.objects.filter(**dict_qs).exclude(id=0).all() if not post and len(usuarios_lista) > 100: filtrar = True usuarios_lista = None messages.warning(request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!') #[VARIAVEIS_LISTA_FILTRO_RELATORIO] #usuarios_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'usuarios_lista': usuarios_lista, 'modulos': ['controle_de_acesso', ], 'paginas': ['usuarios', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, #[VARIAVEIS_FILTRO_RELATORIO] } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='usuarios_listar.html', filename="usuarios.pdf", context=context, show_content_in_browser=True, cmd_options={'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True}, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('usuarios_listar.html', context) filename = "usuarios.xls" response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response('csv/usuarios.csv', context) filename = "usuarios.csv" response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'usuarios_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': ['controle_de_acesso', ], 'paginas': ['usuarios', ], } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('mensageiro.can_see_ImportacaoArquivosEventos'): filtrar = False dict_fields = {} show_fields = { 'show_importacao_arquivos': 0, 'show_arquivo': 1, 'show_evento': 1, 'show_versao': 0, 'show_identidade_evento': 1, 'show_identidade': 1, 'show_status': 1, 'show_data_hora': 1, 'show_validacoes': 0, } post = False #ANTES-POST-LISTAGEM if request.method == 'POST': post = True dict_fields = { 'arquivo__icontains': 'arquivo__icontains', 'evento__icontains': 'evento__icontains', 'versao__icontains': 'versao__icontains', 'identidade_evento__icontains': 'identidade_evento__icontains', 'status__icontains': 'status__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'arquivo__icontains': 'arquivo__icontains', 'evento__icontains': 'evento__icontains', 'versao__icontains': 'versao__icontains', 'identidade_evento__icontains': 'identidade_evento__icontains', 'status__icontains': 'status__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) importacao_arquivos_eventos_lista = ImportacaoArquivosEventos.objects.filter( **dict_qs).exclude(id=0).all() if not post and len(importacao_arquivos_eventos_lista) > 100: filtrar = True importacao_arquivos_eventos_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) importacao_arquivos_lista = ImportacaoArquivos.objects.all() #importacao_arquivos_eventos_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'importacao_arquivos_eventos_lista': importacao_arquivos_eventos_lista, 'modulos': [ 'mensageiro', ], 'paginas': [ 'importacao_arquivos_eventos', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, 'importacao_arquivos_lista': importacao_arquivos_lista, } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='importacao_arquivos_eventos_listar.html', filename="importacao_arquivos_eventos.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response( 'importacao_arquivos_eventos_listar.html', context) filename = "importacao_arquivos_eventos.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response( 'csv/importacao_arquivos_eventos.csv', context) filename = "importacao_arquivos_eventos.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'importacao_arquivos_eventos_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': [ 'mensageiro', ], 'paginas': [ 'importacao_arquivos_eventos', ], } return render(request, 'permissao_negada.html', context)
def test_pdf_template_response(self, show_content=False): """Test PDFTemplateResponse.""" context = {'title': 'Heading'} request = RequestFactory().get('/') response = PDFTemplateResponse(request=request, template=self.template, context=context, show_content_in_browser=show_content) self.assertEqual(response._request, request) self.assertEqual(response.template_name, self.template) self.assertEqual(response.context_data, context) self.assertEqual(response.filename, None) self.assertEqual(response.header_template, None) self.assertEqual(response.footer_template, None) self.assertEqual(response.cmd_options, {}) self.assertFalse(response.has_header('Content-Disposition')) # Render to temporary file template = loader.get_template(self.template) tempfile = render_to_temporary_file(template, context=context) tempfile.seek(0) html_content = smart_str(tempfile.read()) self.assertTrue(html_content.startswith('<html>')) self.assertTrue('<h1>{title}</h1>'.format(**context) in html_content) pdf_content = response.rendered_content self.assertTrue(pdf_content.startswith(b'%PDF-')) self.assertTrue(pdf_content.endswith(b'%%EOF\n')) # Footer cmd_options = {'title': 'Test PDF'} response = PDFTemplateResponse(request=request, template=self.template, context=context, filename=self.pdf_filename, show_content_in_browser=show_content, footer_template=self.footer_template, cmd_options=cmd_options) self.assertEqual(response.filename, self.pdf_filename) self.assertEqual(response.header_template, None) self.assertEqual(response.footer_template, self.footer_template) self.assertEqual(response.cmd_options, cmd_options) self.assertTrue(response.has_header('Content-Disposition')) footer_template = loader.get_template(self.footer_template) tempfile = render_to_temporary_file(footer_template, context=context, request=request) tempfile.seek(0) footer_content = smart_str(tempfile.read()) footer_content = make_absolute_paths(footer_content) media_url = 'file://{0}/'.format(settings.MEDIA_ROOT) self.assertTrue(media_url in footer_content, True) static_url = 'file://{0}/'.format(settings.STATIC_ROOT) self.assertTrue(static_url in footer_content, True) pdf_content = response.rendered_content title = '\0'.join(cmd_options['title']) self.assertIn(six.b(title), pdf_content)
def listar(request, output=None): if request.user.has_perm('esocial.can_see_s1207evtBenPrRP'): filtrar = False dict_fields = {} show_fields = { 'show_esocial': 0, 'show_evtbenprrp': 0, 'show_identidade': 1, 'show_ideevento': 0, 'show_indretif': 1, 'show_nrrecibo': 0, 'show_indapuracao': 1, 'show_perapur': 0, 'show_tpamb': 0, 'show_procemi': 0, 'show_verproc': 0, 'show_ideempregador': 0, 'show_tpinsc': 0, 'show_nrinsc': 0, 'show_idebenef': 0, 'show_cpfbenef': 0, 'show_versao': 0, 'show_transmissor_lote_esocial': 0, 'show_validacao_precedencia': 0, 'show_validacoes': 0, 'show_arquivo_original': 0, 'show_arquivo': 0, 'show_status': 1, 'show_transmissor_lote_esocial_error': 0, 'show_retorno_envio_json': 0, 'show_retorno_consulta_json': 0, 'show_evento_json': 0, 'show_ocorrencias_json': 0, } post = False if request.method == 'POST': post = True dict_fields = { 'esocial': 'esocial', 'evtbenprrp': 'evtbenprrp', 'identidade__icontains': 'identidade__icontains', 'ideevento': 'ideevento', 'indretif__icontains': 'indretif__icontains', 'nrrecibo__icontains': 'nrrecibo__icontains', 'indapuracao__icontains': 'indapuracao__icontains', 'perapur__icontains': 'perapur__icontains', 'tpamb__icontains': 'tpamb__icontains', 'procemi__icontains': 'procemi__icontains', 'verproc__icontains': 'verproc__icontains', 'ideempregador': 'ideempregador', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'idebenef': 'idebenef', 'cpfbenef__icontains': 'cpfbenef__icontains', 'versao__icontains': 'versao__icontains', 'transmissor_lote_esocial__icontains': 'transmissor_lote_esocial__icontains', 'status__icontains': 'status__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'esocial': 'esocial', 'evtbenprrp': 'evtbenprrp', 'identidade__icontains': 'identidade__icontains', 'ideevento': 'ideevento', 'indretif__icontains': 'indretif__icontains', 'nrrecibo__icontains': 'nrrecibo__icontains', 'indapuracao__icontains': 'indapuracao__icontains', 'perapur__icontains': 'perapur__icontains', 'tpamb__icontains': 'tpamb__icontains', 'procemi__icontains': 'procemi__icontains', 'verproc__icontains': 'verproc__icontains', 'ideempregador': 'ideempregador', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'idebenef': 'idebenef', 'cpfbenef__icontains': 'cpfbenef__icontains', 'versao__icontains': 'versao__icontains', 'transmissor_lote_esocial__icontains': 'transmissor_lote_esocial__icontains', 'status__icontains': 'status__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) s1207_evtbenprrp_lista = s1207evtBenPrRP.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(s1207_evtbenprrp_lista) > 100: filtrar = True s1207_evtbenprrp_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) transmissor_lote_esocial_lista = TransmissorLoteEsocial.objects.all() transmissor_lote_esocial_error_lista = TransmissorLoteEsocial.objects.all( ) #s1207_evtbenprrp_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 's1207_evtbenprrp_lista': s1207_evtbenprrp_lista, 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'modulos': [ 'esocial', ], 'paginas': [ 's1207_evtbenprrp', ], 'show_fields': show_fields, 'filtrar': filtrar, 'transmissor_lote_esocial_lista': transmissor_lote_esocial_lista, 'transmissor_lote_esocial_error_lista': transmissor_lote_esocial_error_lista, } if output == 'pdf': from emensageriapro.functions import render_to_pdf from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s1207_evtbenprrp_listar.html', filename="s1207_evtbenprrp.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', 'viewport-size': "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': response = render_to_response('s1207_evtbenprrp_listar.html', context) filename = "s1207_evtbenprrp.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('csv/s1207_evtbenprrp.csv', context) filename = "s1207_evtbenprrp.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's1207_evtbenprrp_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'data': datetime.datetime.now(), 'modulos': [ 'esocial', ], 'paginas': [ 's1207_evtbenprrp', ], } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('mensageiro.can_see_RegrasDeValidacao'): filtrar = False dict_fields = {} show_fields = { 'show_evento': 1, 'show_versao': 1, 'show_numero': 1, 'show_registro_campo': 1, 'show_registro_pai': 1, 'show_elemento': 0, 'show_tipo': 0, 'show_ocorrencias': 0, 'show_tamanho': 0, 'show_casas_decimais': 0, 'show_obrigatorio': 0, 'show_descricao': 0, 'show_tabela': 0, 'show_valores_validos': 0, 'show_validacoes_precedencia': 0, 'show_validacoes': 0, } post = False #ANTES-POST-LISTAGEM if request.method == 'POST': post = True dict_fields = { 'evento__icontains': 'evento__icontains', 'versao__icontains': 'versao__icontains', 'numero__icontains': 'numero__icontains', 'registro_campo__icontains': 'registro_campo__icontains', 'registro_pai__icontains': 'registro_pai__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'evento__icontains': 'evento__icontains', 'versao__icontains': 'versao__icontains', 'numero__icontains': 'numero__icontains', 'registro_campo__icontains': 'registro_campo__icontains', 'registro_pai__icontains': 'registro_pai__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) regras_validacao_lista = RegrasDeValidacao.objects.filter(**dict_qs).exclude(id=0).all() if not post and len(regras_validacao_lista) > 100: filtrar = True regras_validacao_lista = None messages.warning(request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!') #[VARIAVEIS_LISTA_FILTRO_RELATORIO] #regras_validacao_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'regras_validacao_lista': regras_validacao_lista, 'modulos': ['mensageiro', ], 'paginas': ['regras_validacao', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, #[VARIAVEIS_FILTRO_RELATORIO] } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='regras_validacao_listar.html', filename="regras_validacao.pdf", context=context, show_content_in_browser=True, cmd_options={'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True}, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('regras_validacao_listar.html', context) filename = "regras_validacao.xls" response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response('csv/regras_validacao.csv', context) filename = "regras_validacao.csv" response['Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'regras_validacao_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': ['mensageiro', ], 'paginas': ['regras_validacao', ], } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('r1000.can_see_r1000alteracao'): filtrar = False dict_fields = {} show_fields = { 'show_r1000_evtinfocontri': 1, 'show_ideperiodo': 0, 'show_inivalid': 1, 'show_fimvalid': 0, 'show_infocadastro': 0, 'show_classtrib': 1, 'show_indescrituracao': 0, 'show_inddesoneracao': 0, 'show_indacordoisenmulta': 0, 'show_indsitpj': 0, 'show_contato': 0, 'show_nmctt': 0, 'show_cpfctt': 0, 'show_fonefixo': 0, 'show_fonecel': 0, 'show_email': 0, } post = False if request.method == 'POST': post = True dict_fields = { 'r1000_evtinfocontri__icontains': 'r1000_evtinfocontri__icontains', 'ideperiodo': 'ideperiodo', 'inivalid__icontains': 'inivalid__icontains', 'fimvalid__icontains': 'fimvalid__icontains', 'infocadastro': 'infocadastro', 'classtrib__icontains': 'classtrib__icontains', 'indescrituracao__icontains': 'indescrituracao__icontains', 'inddesoneracao__icontains': 'inddesoneracao__icontains', 'indacordoisenmulta__icontains': 'indacordoisenmulta__icontains', 'indsitpj__icontains': 'indsitpj__icontains', 'contato': 'contato', 'nmctt__icontains': 'nmctt__icontains', 'cpfctt__icontains': 'cpfctt__icontains', 'fonefixo__icontains': 'fonefixo__icontains', 'fonecel__icontains': 'fonecel__icontains', 'email__icontains': 'email__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'r1000_evtinfocontri__icontains': 'r1000_evtinfocontri__icontains', 'ideperiodo': 'ideperiodo', 'inivalid__icontains': 'inivalid__icontains', 'fimvalid__icontains': 'fimvalid__icontains', 'infocadastro': 'infocadastro', 'classtrib__icontains': 'classtrib__icontains', 'indescrituracao__icontains': 'indescrituracao__icontains', 'inddesoneracao__icontains': 'inddesoneracao__icontains', 'indacordoisenmulta__icontains': 'indacordoisenmulta__icontains', 'indsitpj__icontains': 'indsitpj__icontains', 'contato': 'contato', 'nmctt__icontains': 'nmctt__icontains', 'cpfctt__icontains': 'cpfctt__icontains', 'fonefixo__icontains': 'fonefixo__icontains', 'fonecel__icontains': 'fonecel__icontains', 'email__icontains': 'email__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) r1000_alteracao_lista = r1000alteracao.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(r1000_alteracao_lista) > 100: filtrar = True r1000_alteracao_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) #[VARIAVEIS_LISTA_FILTRO_RELATORIO] #r1000_alteracao_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'r1000_alteracao_lista': r1000_alteracao_lista, 'modulos': [ 'r1000', ], 'paginas': [ 'r1000_alteracao', ], 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'show_fields': show_fields, 'filtrar': filtrar, #[VARIAVEIS_FILTRO_RELATORIO] } if output == 'pdf': from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='r1000_alteracao_listar.html', filename="r1000_alteracao.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', "viewport-size": "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': from django.shortcuts import render_to_response response = render_to_response('r1000_alteracao_listar.html', context) filename = "r1000_alteracao.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': from django.shortcuts import render_to_response response = render_to_response('csv/r1000_alteracao.csv', context) filename = "r1000_alteracao.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 'r1000_alteracao_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 'data': datetime.datetime.now(), 'modulos': [ 'r1000', ], 'paginas': [ 'r1000_alteracao', ], } return render(request, 'permissao_negada.html', context)
def listar(request, output=None): if request.user.has_perm('esocial.can_see_s2260evtConvInterm'): filtrar = False dict_fields = {} show_fields = { 'show_esocial': 0, 'show_evtconvinterm': 0, 'show_identidade': 1, 'show_ideevento': 0, 'show_indretif': 1, 'show_nrrecibo': 0, 'show_tpamb': 0, 'show_procemi': 0, 'show_verproc': 0, 'show_ideempregador': 0, 'show_tpinsc': 1, 'show_nrinsc': 0, 'show_idevinculo': 0, 'show_cpftrab': 0, 'show_nistrab': 0, 'show_matricula': 0, 'show_infoconvinterm': 0, 'show_codconv': 0, 'show_dtinicio': 0, 'show_dtfim': 0, 'show_dtprevpgto': 0, 'show_jornada': 0, 'show_codhorcontrat': 0, 'show_dscjornada': 0, 'show_localtrab': 0, 'show_indlocal': 0, 'show_versao': 0, 'show_transmissor_lote_esocial': 0, 'show_retornos_eventos': 0, 'show_ocorrencias': 0, 'show_validacao_precedencia': 0, 'show_validacoes': 0, 'show_arquivo_original': 0, 'show_arquivo': 0, 'show_status': 1, 'show_transmissor_lote_esocial_error': 0, } post = False if request.method == 'POST': post = True dict_fields = { 'esocial': 'esocial', 'evtconvinterm': 'evtconvinterm', 'identidade__icontains': 'identidade__icontains', 'ideevento': 'ideevento', 'indretif__icontains': 'indretif__icontains', 'nrrecibo__icontains': 'nrrecibo__icontains', 'tpamb__icontains': 'tpamb__icontains', 'procemi__icontains': 'procemi__icontains', 'verproc__icontains': 'verproc__icontains', 'ideempregador': 'ideempregador', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'idevinculo': 'idevinculo', 'cpftrab__icontains': 'cpftrab__icontains', 'nistrab__icontains': 'nistrab__icontains', 'matricula__icontains': 'matricula__icontains', 'infoconvinterm': 'infoconvinterm', 'codconv__icontains': 'codconv__icontains', 'dtinicio__range': 'dtinicio__range', 'dtfim__range': 'dtfim__range', 'dtprevpgto__range': 'dtprevpgto__range', 'jornada': 'jornada', 'codhorcontrat__icontains': 'codhorcontrat__icontains', 'dscjornada__icontains': 'dscjornada__icontains', 'localtrab': 'localtrab', 'indlocal__icontains': 'indlocal__icontains', 'versao__icontains': 'versao__icontains', 'transmissor_lote_esocial__icontains': 'transmissor_lote_esocial__icontains', 'status__icontains': 'status__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(a or None) for a in show_fields: show_fields[a] = request.POST.get(a or None) if request.method == 'POST': dict_fields = { 'esocial': 'esocial', 'evtconvinterm': 'evtconvinterm', 'identidade__icontains': 'identidade__icontains', 'ideevento': 'ideevento', 'indretif__icontains': 'indretif__icontains', 'nrrecibo__icontains': 'nrrecibo__icontains', 'tpamb__icontains': 'tpamb__icontains', 'procemi__icontains': 'procemi__icontains', 'verproc__icontains': 'verproc__icontains', 'ideempregador': 'ideempregador', 'tpinsc__icontains': 'tpinsc__icontains', 'nrinsc__icontains': 'nrinsc__icontains', 'idevinculo': 'idevinculo', 'cpftrab__icontains': 'cpftrab__icontains', 'nistrab__icontains': 'nistrab__icontains', 'matricula__icontains': 'matricula__icontains', 'infoconvinterm': 'infoconvinterm', 'codconv__icontains': 'codconv__icontains', 'dtinicio__range': 'dtinicio__range', 'dtfim__range': 'dtfim__range', 'dtprevpgto__range': 'dtprevpgto__range', 'jornada': 'jornada', 'codhorcontrat__icontains': 'codhorcontrat__icontains', 'dscjornada__icontains': 'dscjornada__icontains', 'localtrab': 'localtrab', 'indlocal__icontains': 'indlocal__icontains', 'versao__icontains': 'versao__icontains', 'transmissor_lote_esocial__icontains': 'transmissor_lote_esocial__icontains', 'status__icontains': 'status__icontains', } for a in dict_fields: dict_fields[a] = request.POST.get(dict_fields[a] or None) dict_qs = clear_dict_fields(dict_fields) s2260_evtconvinterm_lista = s2260evtConvInterm.objects.filter( **dict_qs).filter().exclude(id=0).all() if not post and len(s2260_evtconvinterm_lista) > 100: filtrar = True s2260_evtconvinterm_lista = None messages.warning( request, u'Listagem com mais de 100 resultados! Filtre os resultados um melhor desempenho!' ) #[VARIAVEIS_LISTA_FILTRO_RELATORIO] #s2260_evtconvinterm_listar_custom request.session['return'] = request.META.get('HTTP_REFERER') context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'output': output, 's2260_evtconvinterm_lista': s2260_evtconvinterm_lista, 'dict_fields': dict_fields, 'data': datetime.datetime.now(), 'modulos': [ 'esocial', ], 'paginas': [ 's2260_evtconvinterm', ], 'show_fields': show_fields, 'filtrar': filtrar, #[VARIAVEIS_FILTRO_RELATORIO] } if output == 'pdf': from emensageriapro.functions import render_to_pdf from wkhtmltopdf.views import PDFTemplateResponse response = PDFTemplateResponse( request=request, template='s2260_evtconvinterm_listar.html', filename="s2260_evtconvinterm.pdf", context=context, show_content_in_browser=True, cmd_options={ 'margin-top': 10, 'margin-bottom': 10, 'margin-right': 10, 'margin-left': 10, 'zoom': 1, 'dpi': 72, 'orientation': 'Landscape', 'viewport-size': "1366 x 513", 'javascript-delay': 1000, 'footer-center': '[page]/[topage]', "no-stop-slow-scripts": True }, ) return response elif output == 'xls': response = render_to_response('s2260_evtconvinterm_listar.html', context) filename = "s2260_evtconvinterm.xls" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response[ 'Content-Type'] = 'application/vnd.ms-excel; charset=UTF-8' return response elif output == 'csv': response = render_to_response('csv/s2260_evtconvinterm.csv', context) filename = "s2260_evtconvinterm.csv" response[ 'Content-Disposition'] = 'attachment; filename=' + filename response['Content-Type'] = 'text/csv; charset=UTF-8' return response else: return render(request, 's2260_evtconvinterm_listar.html', context) else: context = { 'usuario': Usuarios.objects.get(user_id=request.user.id), 'data': datetime.datetime.now(), 'modulos': [ 'esocial', ], 'paginas': [ 's2260_evtconvinterm', ], } return render(request, 'permissao_negada.html', context)