#encoding:utf-8
from reportlab.pdfgen import canvas
from django.http import HttpResponse
from bienes.models import *
from django.template import RequestContext
from django.shortcuts import render_to_response
from reportlab.pdfgen.canvas import Canvas
from reportlab.lib.pagesizes import letter, landscape, A4
from reportlab.lib.units import cm, mm, inch, pica
from reportlab.lib.enums import TA_JUSTIFY, TA_RIGHT, TA_LEFT, TA_CENTER
from reportlab.platypus import Table, TableStyle, SimpleDocTemplate,PageTemplate, Paragraph, Spacer, Image
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
import os
def consulta(request):
s = None
response = HttpResponse(mimetype='application/pdf')
#response['Content-Disposition'] = 'attachment;filename=Reporte.pdf'
estilo=getSampleStyleSheet()
elements = []
doc = SimpleDocTemplate(response,pagesize=landscape(A4), rightMargin=5*mm,leftMargin=5*mm,
topMargin=5*cm,bottomMargin=5*cm)
data = []
h1=estilo['h1']
estilo.add( ParagraphStyle( name = 'Centrado' ) )
Centrado = estilo["Centrado"]
Centrado.alignment = TA_CENTER
Centrado.fontName = "Helvetica"
Centrado.fontSize = 10
# logo = Paragraph('', h1)
# elements.append(logo)
P=Paragraph("GOBIERNO DEL ESTADO DE TABASCO",Centrado)
elements.append(P)
P=Paragraph("SERVICIO ESTATAL DE ADMINISTRACION DE BIENES ASEGURADOS",Centrado)
elements.append(P)
P=Paragraph("DIRECCION GENERAL DE BIENES ASEGURADOS",Centrado)
elements.append(P)
elements.append(Spacer(0,30))
# foto = Image('/static/images/logo_tabasco.png')
data=[['Fecha','Averiguacion','Autoridad','Oficio','Entrega', 'Propietario', 'Estado', 'Tipo', 'Descripcion','Situacion','Devolucion']]
if request.GET:
fecha = request.GET.get('de')
fecha1 = request.GET.get('de1')
try:
s = Bienes.objects.filter(fecha__range=(fecha, fecha1))
for p in s:
data.append([p.fecha, p.numero_averiguacion, p.autoridad, p.numero_oficio, p.persona_entrega, p.propietario, p.calidad_bien, p.tipo_bien.nombre_corto, p.descripcion, p.situacion_juridica, p.fecha_devolucion])
t_datos = Table(data,
style=[('GRID',(0,0),(-1,-1),0.5,colors.grey),
('FONTSIZE',(0,1),(-1,-1),7),
('ALIGN',(0,0),(1,1),'CENTER'),
#('BACKGROUND',(1,0),(-1,-1),colors.red),
])
elements.append(t_datos)
doc.build(elements)
except Exception, e:
pass
return response
from reportlab.rl_config import defaultPageSize
import locale
PAGE_HEIGHT=defaultPageSize[1]; PAGE_WIDTH=defaultPageSize[0]
Title = ''
pageinfo = ""
def consulta_todo(request):
s = None
response = HttpResponse(mimetype='application/pdf')
#response['Content-Disposition'] = 'attachment;filename=Reporte.pdf'
estilo=getSampleStyleSheet()
elements = []
doc = SimpleDocTemplate(response,pagesize=landscape(A4), rightMargin=5*mm,leftMargin=5*mm,
topMargin=2.5*cm,bottomMargin=3*cm)
data = []
h1=estilo['h1']
estilo.add( ParagraphStyle( name = 'Centrado' ) )
Centrado = estilo["Centrado"]
Centrado.alignment = TA_CENTER
Centrado.fontName = "Helvetica"
Centrado.fontSize = 10
estilo.add( ParagraphStyle (name = 'Justificado') )
Justificado = estilo['Justificado']
Justificado.alignment = TA_JUSTIFY
Justificado.fontName = "Helvetica"
Justificado.fontSize = 7
# logo = Paragraph('', h1)
# elements.append(logo)
# P=Paragraph("GOBIERNO DEL ESTADO DE TABASCO",Centrado)
# elements.append(P)
# P=Paragraph("SERVICIO ESTATAL DE ADMINISTRACION DE BIENES ASEGURADOS",Centrado)
# elements.append(P)
# elements.append(Spacer(0,40))
# foto = Image('/static/images/logo_tabasco.png')
data=[[
'Fecha',
'Averiguacion',
'Autoridad',
'Oficio',
'Entrega',
'Propietario',
'Estado',
'Tipo',
'Descripcion',
'Situacion',
'Devolucion']]
s = Bienes.objects.all()
for p in s:
data.append([
p.fecha,
Paragraph(p.numero_averiguacion, Justificado ),
p.autoridad,
p.numero_oficio,
p.persona_entrega,
Paragraph(p.propietario, Justificado ),
p.calidad_bien.calidad_bien[0:2],
p.tipo_bien.tipo_bien[0:1],
Paragraph(p.descripcion, Justificado ),
Paragraph(p.situacion_juridica, Justificado ),
p.fecha_devolucion
])
# elements.append(foto)
# elements.append(ted)
t_datos = Table(data,
[1.5 * cm, 3 * cm, 1.8* cm, 3* cm, 4* cm, 3.5* cm, 2* cm, 1.5* cm, 3.5* cm, 3* cm, 2* cm],
repeatRows=1,
style=[('GRID',(0,0),(-1,-1),0.5,colors.grey),
('FONTSIZE',(0,1),(-1,-1),7),
('ALIGN',(0,0),(-1,0),'CENTER'),
('',(0,0),(-1,0),'CENTER'),
('BACKGROUND',(0,0),(-2,-2),colors.red),
# ('INNERGRID', (0,0), (-1,-1), 0.25, colors.red),
]
)
t_datos.hAlign = 'LEFT'
elements.append(t_datos)
def myFirstPage(canvas, doc):
canvas.saveState()
canvas.drawImage('static/images/seaba.png',1*cm,535, 219, 58)
canvas.setFont('Helvetica',12)
canvas.drawString(4.5*cm, 2 * cm, "Sr. José Antonio Rojas Calderón")
canvas.setFont('Helvetica',12)
canvas.drawString(4*cm, 1.5 * cm, "Jefe de Depto. de Bienes Asegurados")
canvas.setFont('Helvetica',12)
canvas.drawString(20.5*cm, 2 * cm, "Lic. Pedro Sanchez Sibaja")
canvas.setFont('Helvetica',12)
canvas.drawString(20*cm, 1.5 * cm, "Dir. Gral. de Bienes Asegurados")
canvas.setFont('Helvetica',9)
canvas.drawString(27*cm, .25 * inch, "Página %d" % (doc.page))
canvas.restoreState()
def myLaterPages(canvas, doc):
canvas.saveState()
canvas.drawImage('static/images/seaba.png',1*cm,535, 219, 58)
canvas.setFont('Helvetica',12)
canvas.drawString(4.5*cm, 2 * cm, "Sr. José Antonio Rojas Calderón")
canvas.setFont('Helvetica',12)
canvas.drawString(4*cm, 1.5 * cm, "Jefe de Depto. de Bienes Asegurados")
canvas.setFont('Helvetica',12)
canvas.drawString(20.5*cm, 2 * cm, "Lic. Pedro Sanchez Sibaja")
canvas.setFont('Helvetica',12)
canvas.drawString(20*cm, 1.5 * cm, "Dir. Gral. de Bienes Asegurados")
canvas.setFont('Helvetica',9)
canvas.drawString(27*cm, .25 * inch, "Página %d %s" % (doc.page, pageinfo))
canvas.restoreState()
doc.build(elements, onFirstPage = myFirstPage, onLaterPages = myLaterPages)
return response