def documentos_print(request): col = "-organismo" query = None dependencia='' usuario = '' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaDocumentoForm(request.GET) if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u"documentos.organismo_id =%s"%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"documentos.dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] if 'idusuario_creac' in request.GET: if request.GET['idusuario_creac']: filtro.append(u"idusuario_creac_id =%s"%request.GET['idusuario_creac']) usuario=request.GET['idusuario_creac'] if 'categoria' in request.GET: if request.GET['categoria']: filtro.append(u"categoria ='%s'"%request.GET['categoria']) if 'tipo' in request.GET: if request.GET['tipo']: filtro.append(u"tipo ='%s'"%request.GET['tipo']) query = Documento.objects.extra(where=filtro,select={'dependencia':"case documentos.organismo_id when 1 then (select ministerio from ministerio where nummin=documentos.dependencia) when 2 then (select odp from odp where numodp=documentos.dependencia) when 3 then (select gobernacion from gobernacion where numgob=documentos.dependencia) end"}) html = render_to_string('extras/reporte_doc.html',{'data': query,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "doc_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def digprint(request): col = "-organismo" query = None dependencia='' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] if request.user.get_profile().nivel.codigo == 2: if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u"documentointeresgeneral.organismo_id =%s"%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"documentointeresgeneral.dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] else: filtro.append(u"documentointeresgeneral.organismo_id =%s"%request.user.get_profile().organismo.codigo) filtro.append(u"documentointeresgeneral.dependencia =%s"%request.user.get_profile().dependencia) filtro.append(u"idusuario_creac="+str(request.user.get_profile().numero)) filtro.append(u"idusuario_creac=usuario.numero") filtro.append(u"documentointeresgeneral.organismo_id=organismo.codigo") query = DocumentoInteresGeneral.objects.extra(tables=['usuario','organismo'],where=filtro,select={'organismo':'organismo.nombre','usuario':'usuario.usuario','dependencia':"case documentointeresgeneral.organismo_id when 1 then (select ministerio from ministerio where nummin=documentointeresgeneral.dependencia) when 2 then (select odp from odp where numodp=documentointeresgeneral.dependencia) when 3 then (select gobernacion from gobernacion where numgob=documentointeresgeneral.dependencia) end",'tipomis1':"SUBSTRING_INDEX(archmis1, '.', -1)",'tipomis2':"SUBSTRING_INDEX(archmis2, '.', -1)",'tipomis3':"SUBSTRING_INDEX(archmis3, '.', -1)",'tipoaca1':"SUBSTRING_INDEX(archaca1, '.', -1)",'tipoaca2':"SUBSTRING_INDEX(archaca2, '.', -1)",'tipoaca3':"SUBSTRING_INDEX(archaca3, '.', -1)",'tipobue1':"SUBSTRING_INDEX(archbue1, '.', -1)",'tipobue2':"SUBSTRING_INDEX(archbue2, '.', -1)",'tipobue3':"SUBSTRING_INDEX(archbue3, '.', -1)"}).order_by(col).values('organismo','dependencia','fec_creac','usuario','dependencia','urlmis1','urlmis2','urlmis3','urlaca1','urlaca2','urlaca3','urlbue1','urlbue2','urlbue3','tipomis1','tipomis2','tipomis3','tipoaca1','tipoaca2','tipoaca3','tipobue1','tipobue2','tipobue3') data = list() dmg = dict() for mg in query: for ar in ('mis','aca','bue'): for a in range(1,4): if mg['tipo'+ar+str(a)]: dmg = {'organismo':mg['organismo'],'dependencia':mg['dependencia'],'fecha':mg['fec_creac'],'usuario':mg['usuario'],'tipoarchivo':mg['tipo'+ar+str(a)],'tipo':ar.upper()} data.append(dmg) html = render_to_string('extras/reporte_dig.html',{'data': data,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "dig_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def ariprint(request): col = "-organismo" query = None filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] filtro.append(u"idusuario_creac=usuario.numero") query = ActaReunionIntersectorial.objects.extra( tables=[ 'usuario', ], where=filtro, select={ 'usuario': 'usuario.usuario', 'dependencia': "case actareunionintersectorial.organismo_id when 1 then (select ministerio from ministerio where nummin=actareunionintersectorial.dependencia) when 2 then (select odp from odp where numodp=actareunionintersectorial.dependencia) when 3 then (select gobernacion from gobernacion where numgob=actareunionintersectorial.dependencia) end" }).filter(nombreari__icontains=request.GET['nombreari'] if 'nombreari' in request.GET else '') html = render_to_string( 'extras/reporte_ari.html', { 'data': query, 'pagesize': 'A4', 'usuario': request.user.get_profile() }, context_instance=RequestContext(request)) filename = "ari_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html, filename)
def youtubediario_print(request): filtro = [] if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u'organismo_id=%s'%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u'dependencia=%s'%request.GET['dependencia']) if 'fechaini' in request.GET and 'fechafin' in request.GET: if request.GET['fechaini'] and request.GET['fechafin']: fini = datetime.strptime(request.GET['fechaini'],"%d/%m/%Y") ffin = datetime.strptime(request.GET['fechafin'],"%d/%m/%Y") filtro.append(u"fechacreacdia between '%s' and '%s'"%(fini,ffin)) elif 'fechaini' in request.GET: if request.GET['fechaini']: fini = datetime.strptime(request.GET['fechaini'],"%d/%m/%Y") filtro.append(u"fechacreacdia>='%s'"%fini) elif 'fechafin' in request.GET: if request.GET['fechafin']: ffin = datetime.strptime(request.GET['fechafin'],"%d/%m/%Y") filtro.append(u"fechacreacdia<='%s'"%ffin) query = YoutubeDiario.objects.extra(where=filtro, select={'dependencia':"case organismo_id when 1 then (select ministerio from ministerio where nummin=dependencia) when 2 then (select odp from odp where numodp=dependencia) when 3 then (select gobernacion from gobernacion where numgob=dependencia) end",}) html = render_to_string('redes/youtubediario_reporte.html',{'data': query,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "youtubediario_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def userprint(request, nivel): filtro=list() usuarios = None dependencia=0 if ('nombres' in request.GET and 'organismo' in request.GET and 'estado' in request.GET and 'apellidos' in request.GET) or 'dependencia' in request.GET: if request.GET['nombres']: usuarios = Usuario.objects.filter(nombres__icontains=request.GET['nombres']) if request.GET['organismo']: filtro.append(u"organismo_id =%s"%request.GET['organismo']) if request.GET['estado']: filtro.append(u"estado_id =%s"%request.GET['estado']) if request.GET['apellidos']: if usuarios: usuarios = usuarios.filter(apellidos__icontains=request.GET['apellidos']) else: usuarios = Usuario.objects.filter(apellidos__icontains=request.GET['apellidos']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] else: usuarios = Usuario.objects.all() filtro.append(u'numero >0') filtro.append(u'nivel_id = '+nivel) if usuarios is None: usuarios = Usuario.objects.extra(where=filtro) else: usuarios = usuarios.extra(where=filtro) usuarios = usuarios.extra(select={'dependencia':"case organismo_id when 1 then (select ministerio from ministerio where nummin=dependencia) when 2 then (select odp from odp where numodp=dependencia) when 3 then (select gobernacion from gobernacion where numgob=dependencia) end"}) html = loader.render_to_string(nivel == "1" and 'usuario/reporteusu.html' or 'usuario/reporteadmin.html',{'data': usuarios,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= ("usuario" if nivel == "1" else "administrador")+"_%s.xls" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def mgprint(request): col = "-organismo" if "2-sort" in request.GET: col = request.GET['2-sort'] filtro = list() if request.user.get_profile().nivel.codigo == 2: if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u"materialgrafico.organismo_id =%s"%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"materialgrafico.dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] else: filtro.append(u"materialgrafico.organismo_id =%s"%request.user.get_profile().organismo.codigo) filtro.append(u"materialgrafico.dependencia =%s"%request.user.get_profile().dependencia) filtro.append(u"idusuario_creac="+str(request.user.get_profile().numero)) filtro.append(u"idusuario_creac=usuario.numero") filtro.append(u"materialgrafico.organismo_id=organismo.codigo") query = MaterialGrafico.objects.extra(tables=['usuario','organismo'],where=filtro,select={'organismo':'organismo.nombre','usuario':'usuario.usuario','dependencia':"case materialgrafico.organismo_id when 1 then (select ministerio from ministerio where nummin=materialgrafico.dependencia) when 2 then (select odp from odp where numodp=materialgrafico.dependencia) when 3 then (select gobernacion from gobernacion where numgob=materialgrafico.dependencia) end",'tipo1':"SUBSTRING_INDEX(arcmg1, '.', -1)",'tipo2':"SUBSTRING_INDEX(arcmg2, '.', -1)",'tipo3':"SUBSTRING_INDEX(arcmg3, '.', -1)",'tipo4':"SUBSTRING_INDEX(arcmg4, '.', -1)",'tipo5':"SUBSTRING_INDEX(arcmg5, '.', -1)",'tipo6':"SUBSTRING_INDEX(arcmg6, '.', -1)",'tipo7':"SUBSTRING_INDEX(arcmg7, '.', -1)",'tipo8':"SUBSTRING_INDEX(arcmg8, '.', -1)"}).order_by(col).values('organismo','dependencia','fec_creac','usuario','dependencia','tipo1','tipo2','tipo3','tipo4','tipo5','tipo6','tipo7','tipo8') data = list() dmg = dict() for mg in query: for a in range(1,9): if mg['tipo'+str(a)]: dmg = {'organismo':mg['organismo'],'dependencia':mg['dependencia'],'fecha':mg['fec_creac'],'usuario':mg['usuario'],'tipo':mg['tipo'+str(a)]} data.append(dmg) html = render_to_string('extras/reportemg.html',{'data': data,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "mg_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def ministerioprint(request): col = 'ministerio' if 'ministerio' in request.GET: query = Ministerio.objects.filter(ministerio__icontains=request.GET['ministerio']).order_by(col) else: query = Ministerio.objects.all().order_by(col) html = render_to_string('dependencia/reportemin.html',{'data': query,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "ministerio_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def provinciaprint(request): col = 'provincia' if (request.GET['region'] and request.GET['provincia']) or request.GET['region']: provincias = Provincia.objects.filter(provincia__icontains=request.GET['provincia'], region=request.GET['region']).order_by(col) elif request.GET['provincia']: provincias = Provincia.objects.filter(provincia__icontains=request.GET['provincia'],).order_by(col) else: provincias = Provincia.objects.all().order_by(col) html = render_to_string('ubigeo/reportep.html',{'data': provincias,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "provincia_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def gobernacionprint(request): col = 'gobernacion' if (request.GET['region'] and request.GET['provincia']) or request.GET['region']: query = Gobernacion.objects.filter(region=request.GET['region'], provincia=request.GET['provincia']).order_by(col) elif request.GET['provincia']: query = Gobernacion.objects.filter(provincia=request.GET['region']).order_by(col) else: query = Gobernacion.objects.all().order_by(col) html = render_to_string('dependencia/reportegob.html',{'data': query,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "gobernacion_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def odpprint(request): col = 'odp' if (request.GET['nummin'] and request.GET['odp']) or request.GET['nummin']: query = Odp.objects.filter(odp__icontains=request.GET['odp'],nummin=request.GET['nummin']).order_by(col) elif request.GET['odp']: query = Odp.objects.filter(odp__icontains=request.GET['odp']).order_by(col) else: query = Odp.objects.all().order_by(col) html = render_to_string('dependencia/reporteodp.html',{'data': query,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "opd_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def informacion_print(request): filtro = [] if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u'organismo_id=%s'%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u'dependencia=%s'%request.GET['dependencia']) query = Informacion.objects.extra(where=filtro, select={'dependencia':"case organismo_id when 1 then (select ministerio from ministerio where nummin=dependencia) when 2 then (select odp from odp where numodp=dependencia) when 3 then (select gobernacion from gobernacion where numgob=dependencia) end",'encargado':"concat(nombresenc,' ',apellidosenc)",'jefe':"concat(nombresjefe,' ',apellidosjefe)"}) html = render_to_string('redes/informacion_reporte.html',{'data': query,'pagesize':'A4','usuario':request.user.get_profile()},context_instance=RequestContext(request)) filename= "informacion_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)
def categoria_print(request): if "region" in request.GET: qregiones = Category.objects.all().filter( name__icontains=request.GET['region']).order_by("region") html = render_to_string( 'ubigeo/reporter.html', { 'data': qregiones, 'pagesize': 'A4', 'usuario': request.user.get_profile() }, context_instance=RequestContext(request)) filename = "region_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html, filename)
def print_resumen_prensa(request): col = "-organismo" query = None dependencia='' query = ResumenPrensa.objects.all() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaRepForm(request.GET) if 'organismo' in request.GET: if request.GET['organismo']: query = query.filter(organismo_id=request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: dependencia=request.GET['dependencia'] query = query.filter(dependencia=request.GET['dependencia']) if 'fechaini' in request.GET and 'fechafin' in request.GET: start_date = None end_date = None try: start_date = ((request.GET['fechaini']) and datetime.strptime(request.GET['fechaini'],"%d/%m/%Y") or None) end_date = ((request.GET['fechafin']) and datetime.strptime(request.GET['fechafin'],"%d/%m/%Y") or None) except: pass if start_date and end_date: query = query.filter(fecha__range=(start_date, end_date)) elif start_date: query = query.filter(fecha__gte=start_date) elif end_date: query = query.filter(fecha__lte=end_date) data = query.extra(select={'dependencia':"""case tbl_resumen_prensa.organismo_id when 1 then (select ministerio from ministerio where nummin=tbl_resumen_prensa.dependencia) when 2 then (select odp from odp where numodp=tbl_resumen_prensa.dependencia) when 3 then (select gobernacion from gobernacion where numgob=tbl_resumen_prensa.dependencia) end"""}).values('codigo', 'idusuario_creac__nombres','idusuario_creac__apellidos','organismo__nombre', 'fecha','dependencia','descripcion','archivo') domain = get_current_site(request).domain html = render_to_string('prensa/rep_reporte.html',{'data': data, 'protocol':request.is_secure() and 'https' or 'http', 'pagesize':'A4','usuario':request.user.get_profile(),'domain':domain}, context_instance=RequestContext(request)) filename= "rep_%s.pdf" % datetime.today().strftime("%Y%m%d") return imprimirToPDF(html,filename)